General-purpose input / output interface (GPIO) - an interface for communication between components of a computer system, for example, a microprocessor and various peripheral devices . GPIO pins can act as an input or as an output - this is usually configured. GPIO pins are often grouped into ports .
GPIO contacts do not have a special purpose and, as a rule, remain unused. The idea is that sometimes it may be useful for a system integrator to build a complete system using a particular chip to have several additional digital control lines.
This makes it possible to organize additional schemes without creating them from scratch. For example, Realtek ALC260 chips (Audio codec) have 8 GPIO pins (contacts), which remain unused by default. Some system integrators (like Acer Inc. on their laptops) using the ALC260 use the first GPIO (GPIO0) to turn on the amplifier used for the laptop’s built-in speakers and headphone jack.
Usage
GPIOs are used:
- in devices with a lack of conclusions (pins, contacts): integrated circuits, such as single-chip systems (SoC), embedded and special systems (embedded and custom hardware), and programmable logic devices (for example FPGA );
- in multifunctional chips: power management, audio codecs and video cards ;
- in embedded systems (for example, Arduino , BeagleBone , various PSoC kits and Raspberry Pi ) GPIO is widely used to read information from various external sensors ( IR , video, temperature, 3-axis orientation , acceleration ), as well as to control DC motors ( using PWM ), audio, LCDs, or LEDs to indicate the status of something.
Literature
- David Russell. Chapter 6. General-purpose input / output // Introduction to Embedded Systems: Using ANSI C and the Arduino Development Environment. - Morgan & Claypool Publishers, 2010. - P. 99–. - ISBN 978-1-60845-498-3 .
- Manuel Jiménez, Rogelio Palomera, Isidoro Couvertier. Introduction to Embedded Systems: Using Microcontrollers and the MSP430. - Springer Science & Business Media, 2013. - P. 383–. - ISBN 978-1-4614-3143-5 .