Reader small image

You're reading from  GNU/Linux Rapid Embedded Programming

Product typeBook
Published inMar 2017
Reading LevelIntermediate
PublisherPackt
ISBN-139781786461803
Edition1st Edition
Languages
Right arrow
Author (1)
Rodolfo Giometti
Rodolfo Giometti
author image
Rodolfo Giometti

Rodolfo Giometti is an engineer, IT specialist, GNU/Linux expert and software libre evangelist. He is the author of the books BeagleBone Essentials, BeagleBone Home Automation Blueprints and GNU/Linux Rapid Embedded Programming by Packt Publishing and maintainer of the LinuxPPS projects. He still actively contributes to the Linux source code with several patches and new device drivers for industrial applications devices. During his 20+ years of experience, he has worked on the x86, ARM, MIPS, and PowerPC-based platforms. Now, he is the co-chief at HCE Engineering S.r.l., where he designs new hardware and software systems for the quick prototyping in industry environment, control automation, and remote monitoring.
Read more about Rodolfo Giometti

Right arrow

What is a GPIO line?


A General Purposes Input Output (GPIO) line is a pin of a microcontroller or CPU or other integrated circuit whose behavior is controllable by the user at runtime. So, a GPIO pin has no predefined usage, but the developer has the ability to set it for input or output usage (for simpler implementations) or as an IRQ source or other functionalities.

In general, a GPIO line can:

  • Be enabled/disabled.

  • Be configured as input or output.

  • Have readable/writable output values (typically, high is 1 and low is 0).

  • Have readable input values (typically, high is 1 and low is 0).

  • Have default pulled-up or pulled-down input values.

  • Have input values to be used as IRQ source.

The GPIO lines are so generic that if adequately used in a dedicated program, they can be used to emulate another digital interface controller; in fact, inside the Linux kernel, we can find several kinds of peripheral controllers emulated via GPIO (the most famous and used are the keyboard, I2C and W1 controllers; in particular...

lock icon
The rest of the page is locked
Previous PageNext Page
You have been reading a chapter from
GNU/Linux Rapid Embedded Programming
Published in: Mar 2017Publisher: PacktISBN-13: 9781786461803

Author (1)

author image
Rodolfo Giometti

Rodolfo Giometti is an engineer, IT specialist, GNU/Linux expert and software libre evangelist. He is the author of the books BeagleBone Essentials, BeagleBone Home Automation Blueprints and GNU/Linux Rapid Embedded Programming by Packt Publishing and maintainer of the LinuxPPS projects. He still actively contributes to the Linux source code with several patches and new device drivers for industrial applications devices. During his 20+ years of experience, he has worked on the x86, ARM, MIPS, and PowerPC-based platforms. Now, he is the co-chief at HCE Engineering S.r.l., where he designs new hardware and software systems for the quick prototyping in industry environment, control automation, and remote monitoring.
Read more about Rodolfo Giometti