1. GPIO
General Purpose Input Output,通用输入输出端口。
作用:负责采集外部器件的信息或者控制外部器件工作,即输入输出。
2. STM32 GPIO简介
2.1 GPIO特点
- 不同型号芯片IO口数量可能不一样
- 快速翻转
- 每个IO口都可以做中断
- 支持8种工作模式
2.2 电气特性
- STM32工作电压范围
- GPIO识别电压范围
- GPIO输出电流
2.3 GPIO引脚分布
2.3.1 STM32引脚类型
- 电源引脚
- 晶振引脚
- 复位引脚
- 下载引脚
- BOOT引脚
- GPIO引脚
2.3.2 引脚分布特点
按组存在、组数视芯片而定、每组最多16个IO引脚
3. IO端口基本结构
3.1 F1和F4/F7/H7结构对比
内部上/下拉电阻放的位置不同
F1的IO结构图
F4/F7/H7的IO结构图
3.2 保护二极管
保护引脚外部过高或过低的电压输入
3.3 内部上拉/下拉电阻
阻值30K~50KΩ
3.4 施密特触发器
把非标准方波,整形成方波
3.5 P-MOS & N-MOS管
P: Vgs < 0,导通
N: Vgs > 0,导通
4. GPIO的八种模式
5. GPIO寄存器(F1)
- GPIOx_CRL
- GPIOx_CRH
- GPIOx_IDR
- GPIOx_ODR
- GPIOx_BSRR
6. 通用外设驱动模型(四步法)
- 初始化
- 读函数(可选)
- 写函数(可选)
- 中断服务函数(可选)
7. GPIO配置步骤
- 使能时钟
- 设置工作模式
- 设置输出状态(可选)
- 读取输入状态(可选)