GD32F403xx User Manual
134
8.
General-purpose and alternate-function I/Os (GPIO
and AFIO)
8.1.
Overview
There are up to 112 general purpose I/O pins (GPIO), named PA0 ~ PA15, PB0 ~ PB15, PC0
~ PC15, PD0 ~ PD15, PE0 ~ PE15, PF0 ~ PF15 and PG0 ~ PG15 for the device to implement
logic input/output functions. Each GPIO port has related control and configuration registers to
satisfy the requirements of specific applications. The external interrupt on the GPIO pins of
the device have related control and configuration registers in the Interrupt/event Controller
Unit (EXIT).
The GPIO ports are pin-shared with other alternative functions (AFs) to obtain maximum
flexibility on the package pins. The GPIO pins can be used as alternative functional pins by
configuring the corresponding registers regardless of the AF input or output pins.
Each of the GPIO pins can be configured by software as output (push-pull or open-drain),
input, peripheral alternate function or analog mode. Each GPIO pin can be configured as pull-
up, pull-down or floating. All GPIOs are high-current capable except for analog mode.
8.2.
Characteristics
◼
Input/output direction control.
◼
Schmitt trigger input function enable control.
◼
Each pin weak pull-up/pull-down function.
◼
Output push-pull/open drain enable control.
◼
Output set/reset control.
◼
External interrupt with programmable trigger edge – using EXTI configuration registers.
◼
Analog input/output configuration.
◼
Alternate f unction input/output configuration.
◼
Port configuration lock.
8.3.
Function overview
Each of the general-purpose I/O ports can be configured as 8 modes, including analog inputs,
input floating, input pull-down/pull-up, GPIO push-pull/open-drain or AFIO push-pull/open-
drain mode by two GPIO configuration registers (GPIOx_CTL0/GPIOx_CTL1), and a 32-bits
register (GPIOx_OCTL).
Table 8-1. GPIO configuration table
shows the details.