General-purpose input/outputwikipedia
A general-purpose input/output (GPIO) is an uncommitted digital signal pin on an integrated circuit or electronic circuit board whose behavior—including whether it acts an input or output—is controllable by the user at run time.
GPIOgeneral-purpose input/outputGPII/O pinsGPIOsbi-directional portsgeneral-purpose I/OGeneral purpose I/O pinsgeneral purpose I/OPAL

I²C

I 2 CI2CI²C
Examples of the former include the Intel 8255, which interfaces 24 GPIOs to a parallel bus, and various GPIO "expander" ICs, which interface GPIOs to serial buses such as I²C and SMBus. For example, two GPIOs may be used to implement a serial communication bus such as I²C, and four GPIOs can be used to implement an SPI bus; these are typically used to facilitate serial communication with ICs and other devices which have compatible serial interfaces, such as sensors (e.g., temperature sensors, pressure sensors, accelerometers) and motor controllers.
A particular strength of I²C is the capability of a microcontroller to control a network of device chips with just two general-purpose I/O pins and software.

Raspberry Pi

Raspberry PiRaspbianRaspberry Pi 2
GPIOs are also found on embedded controller boards such as Arduino, BeagleBone and Raspberry Pi.
A Raspberry Pi Zero with smaller size and reduced input/output (I/O) and general-purpose input/output (GPIO) capabilities was released in November 2015 for US$5.

SGPIO

It is considered an extension of the general-purpose input/output (GPIO) concept.

Special input/output

Some kinds of special I/O functions can sometimes be emulated with general-purpose input/output and bit banging software.

Serial Peripheral Interface

SPImicrowireSPI bus
For example, two GPIOs may be used to implement a serial communication bus such as I²C, and four GPIOs can be used to implement an SPI bus; these are typically used to facilitate serial communication with ICs and other devices which have compatible serial interfaces, such as sensors (e.g., temperature sensors, pressure sensors, accelerometers) and motor controllers.
All communications that were out-of-band of the LPC bus like general-purpose input/output (GPIO) and System Management Bus (SMBus) are tunneled through the eSPI bus via virtual wire cycles and out-of-band message cycles respectively in order to remove those pins from motherboard designs using eSPI.

Asus Tinker Board

Its physical size and GPIO pinout are designed to be compatible with the second-generation and later Raspberry Pi models.

Charlieplexing

Charlieplexing is a technique for driving a multiplexed display in which relatively few I/O pins on a microcontroller are used e.g. to drive an array of LEDs.

SystemVerilog

Constrained random generation in SystemVerilog
A signal with more than one driver (such as a tri-state buffer for general-purpose input/output) needs to be declared a net type such as "wire" so SystemVerilog can resolve the final value.

Micro Bit

micro:bitBBC micro:bitmicro:bits
I/O includes three ring connectors (plus one power one ground) which accept crocodile clips or 4 mm banana plugs as well as a 23-pin edge connector with two or three PWM outputs, six to 17 GPIO pins (depending on configuration), six analog inputs, serial I/O, SPI, and I²C.

STM32

STM32 WSTM32F1xx, STM32F2xx, STM32F3xx, STM32F4xx, STM32L1xx, STM32F0xxSTMicroelectronics STM32 microcontroller

InformaCast

The protocol allows endpoints (such as public address speakers) to autonomously announce their presence and capabilities (such as recording or GPIO) and configure themselves to play audio broadcasts.

IOIO

In addition to basic digital input/output and analog input, the IOIO library also handles PWM, I2C, SPI, UART, Input capture, Capacitive sensing and advanced motor control.

ODROID

OdroidODROID-XUHardkernel ODROID-XU3 & ODROID-XU4
Lower level output is provided by a number of general-purpose input/output (GPIO) pins which support common protocols like I²C.

AVR microcontrollers

AVRATmega32U4AVR architecture
Each GPIO port on a tiny or mega AVR drives up to eight pins and is controlled by three 8-bit registers: DDRx, PORTx and PINx, where x is the port identifier.

VoCore

It includes WiFi (2.4 GHz 802.11 b/g/n), Ethernet (10/100 Mb/s x2), USB 2.0 (up to 480M) and 28 GPIO (reused).

Shift register

shift registershift registersCirculating Memory
SIPO registers are commonly attached to the output of microprocessors when more General Purpose Input/Output pins are required than are available.