一、工作模式:
1.1、四种输入模式:
(1)浮空输入:即不连接内部上下拉电阻
(2)上拉输入:检测模拟信号输入
(3)下拉输入:数字信号输入
(4)模拟输入:数字信号输入
1.2、四种输出模式:
(1)开漏输出:(带上拉或者下拉)
(2)复用开漏输出:(带上拉或者下拉)
(3)推挽输出:(带上拉或者下拉)可以输出高低电平,连接数字器件
(4)复用推挽输出:(带上拉或者下拉)复用串口,IIC,SPI
1.3、四种输出速度:
(1)2MHZ:低速
(2)25MHZ:中速
(3)50MHZ:快速
(4)100MHZ:高速
二、GPIO主要特性
(1)受控 I/O 多达 16 个
(2)输出状态:推挽或开漏 + 上拉/下拉
(3)从输出数据寄存器 (GPIOx_ODR) 或外设(复用功能输出)输出数据
(4)可为每个 I/O 选择不同的速度
(5) 输入状态:浮空、上拉/下拉、模拟
(6) 将数据输入到输入数据寄存器 (GPIOx_IDR) 或外设(复用功能输入)
(7)置位和复位寄存器 (GPIOx_BSRR),对 GPIOx_ODR 具有按位写权限
(8)锁定机制 (GPIOx_LCKR),可冻结 I/O 配置
(9)模拟功能
(10)复用功能输入/输出选择寄存器(一个 I/O 最多可具有 16 个复用功能)
(11)快速翻转,每次翻转最快只需要两个时钟周期
(12)引脚复用非常灵活,允许将 I/O 引脚用作 GPIO 或多种外设功能中的一种
三、GPIO寄存器开发(对地址操作进行开发)
3.1、GPIO 端口模式寄存器 (GPIOx_MODER)
3.2、GPIO 端口输出类型寄存器 (GPIOx_OTYPER)
3.3、GPIO 端口输出速度寄存器 (GPIOx_OSPEEDR)
3.4、GPIO 端口上拉/下拉寄存器 (GPIOx_PUPDR)