在 STM32 中八种 IO 模式
(1) 浮空输入_IN_FLOATING ——浮空输入,可以做 KEY 识别,RX1;
(2)带上拉输入_IPU——IO 内部上拉电阻输入;
(3)带下拉输入_IPD—— IO 内部下拉电阻输入;
(4) 模拟输入_AIN ——应用 ADC 模拟输入,或者低功耗下省电;
(5)开漏输出_OUT_OD ——IO 输出 0 接 GND,IO 输出 1,悬空,需要外接上拉电阻,才能实现输出;
高电平。当输出为 1 时,IO 口的状态由上拉电阻拉高电平,但由于是开漏输出模式,这样 IO 口也就可以
由外部电路改变为低电平或不变。可以读 IO 输入电平变化,实现 C51 的 IO 双向功能;
(6)推挽输出_OUT_PP ——IO 输出 0-接 GND, IO 输出 1 -接 VCC,读输入值是未知的;
(7)复用功能的推挽输出_AF_PP ——片内外设功能(I2C 的 SCL,SDA);
(8)复用功能的开漏输出_AF_OD——片内外设功能(TX1,MOSI,MISO.SCK.SS);
其中,4种输入模式:输入浮空 输入上拉 输入下拉 模拟输入
4种输出模式:开漏输出 开漏复用功能 推挽式输出 推挽式复用功能
3种最大输出速度: -2MHZ -10MHz -50MHz
推挽输出:
可以输出强高低电平,连接数字器件
开漏输出:
只可以输出强低电平,高电平得靠外部电阻拉高。输出端相当于三极管的集电极. 要得到高电平状态需要上拉电阻才行. 适合于做电流型的驱动,其吸收电流的能力相对强(一般20ma以内)