26. GPIO - General Purpose Input/Output
0 1 2 3
4
GPIO
Peripherals
ARM
Cortex-M3
Quick Facts
What?
The General Purpose Input/Output (GPIO) is used
for pin configuration, direct pin manipulation and
sensing, as well as routing for peripheral pin connec-
tions.
Why?
Easy to use and highly configurable input/output
pins are important to fit many communication proto-
cols as well as minimizing software control over-
head. Flexible routing of peripheral functions helps
to ease PCB layout.
How?
Each pin on the device can be individually config-
ured as either an input or an output with several dif-
ferent drive modes. Also, individual bit manipulation
registers minimizes control overhead. Peripheral
connections to pins can be routed to several differ-
ent locations, thus solving congestion issues that
may arise with multiple functions on the same pin.
Fully asynchronous interrupts can also be generated
from any pin.
26.1 Introduction
In the EFM32 Jade Gecko devices the General Purpose Input/Output (GPIO) pins are organized into ports with up to 16 pins each.
These GPIO pins can individually be configured as either an output or input. More advanced configurations like open-drain, open-
source, and glitch filtering can be configured for each individual GPIO pin. The GPIO pins can also be overridden by peripheral pin
connections, like Timer PWM outputs or USART communication, which can be routed to several locations on the device. The GPIO
supports up to 16 asynchronous external pin interrupts, which enable interrupts from any pin on the device. Also, the input value of a
pin can be routed through the Peripheral Reflex System to other peripherals.
Note:
To use the GPIO, the GPIO clock must first be enabled in CMU_HFBUSCLKEN0. Setting this bit enables the HFBUSCLK for the GPIO.
EFM32JG1 Reference Manual
GPIO - General Purpose Input/Output
silabs.com
| Smart. Connected. Energy-friendly.
Preliminary Rev. 0.6 | 872