GPIO的工作原理和配置方法

GPIO是STM32与外设打交道的通道。
GPIO端口的保护二极管可以接3.3V或5V(标FT的管脚)两种直流电压,这使得IO端口可配置成兼容3.3V或5V两种电压信号。
STM32的GPIO管脚有8种配置方式(4输入+2输出+2复用输出):
(1)浮空输入(IN_FLOATING)
GPIO的工作原理和配置方法_第1张图片
(2)带上拉输入(IPU)
在施密特触发器前加30k-50k的上拉电阻,好处是屏蔽IO口的干扰。
(3)带下拉输入()
在施密特触发器前加30k-50k的下拉电阻。
(4)模拟输入()
GPIO的工作原理和配置方法_第2张图片
信号从1端口进入,从2端口进入AD模块。
(5)开漏输出
GPIO在输出模式下,有3种可选的输出速度:2MHZ,10MHz,50MHz、
(6)开漏复用输出
(7)推挽输出模式
(8)推挽复用输出模式

如果GPIO端口外界LED灯,则通常配置成推挽输出;如果接按键,则配置成上拉输入;如果接AD,则配置成模拟输入。

GPIO端口工作方式的配置
STM32的每个IO端口都有7个寄存器来控制,分别是:
(1)配置模式的2个32位的端口配置寄存器CRL和CRH
(2)2个32位的数据寄存器IDR和ODR
(3)1个32位的置位/复位寄存器BSRR
(4)1个16位的复位寄存器BRR
(5)1个32位的锁存寄存器LCKR

你可能感兴趣的:(嵌入式原理)