一、GPIO 8种工作模式
输入模式:
1. GPIO_Mode_AIN 模拟输入
2. GPIO_Mode_IN_FLOATING 浮空输入
3. GPIO_Mode_IPD 下拉输入
4. GPIO_Mode_IPU 上拉输入
输出模式:
5. GPIO_Mode_Out_OD 开漏输出
6. GPIO_Mode_Out_PP 推挽输出
7. GPIO_Mode_AF_OD 复用开漏输出
8. GPIO_Mode_AF_PP 复用推挽输出

施密特触发器:当输入电压高于正向阈值电压,输出为高;当输入电压低于负向阈值电压,输出为低;当输入在正负向阈值电压之间,输出不改变,只有当输入电压发生足够的变化时,输出才会变化
GPIO_Mode_IN_FLOATING 浮空输入

外部通过IO口输入电平,传输到施密特触发器(此时施密特触发器为打开状态),直接进入输入数据寄存器,CPU通过读输入数据寄存器实现读取外部输入电平值,在输入浮空模式下可以读取外部输入电平。如果在该引脚悬空(在无信号输入)的情况下,读取该端口的电平是不确定的。
GPIO_Mode_IPU 上拉输入

上拉电阻的开关闭合,上拉电阻连接到VDD,在I/O端口悬空(在无信号输入)的情况下,外部输入通过上拉电阻,施密特触发器存入输入数据寄存器,被CPU读取出高电平,当I/O端口输入为低电平的时候,施密特触发器触发存入输入数据寄存器,CPU读取出低电平;
GPIO_Mode_IPD 下拉输入

下拉电阻的开关闭合,在I/O端口悬空(在无信号输入)的情况下,下拉电阻连接到VSS,外部输入通过下拉电阻,施密特触发器存入输入数据寄存器,被CPU读取出低电平,当I/O端口输入为高电平的时候,下拉电阻处的电

本文详细介绍了STM32的GPIO工作模式,包括输入模式(浮空输入、上拉输入、下拉输入、模拟输入)和输出模式(开漏输出、推挽输出、复用开漏输出、复用推挽输出)。讨论了施密特触发器的作用,并重点讲解了按键中断的配置,包括中断优先级、中断向量表、消抖处理以及中断服务函数的设定。STM32按键通常需要上拉电阻,按下时产生低电平,通过HAL库进行中断处理。
最低0.47元/天 解锁文章
227

被折叠的 条评论
为什么被折叠?



