输入模式
1、GPIO_Mode_AIN 模拟输入
接收到的是连续的模拟信号,一般用于AD转换。
2、GPIO_Mode_IN_FLOATING 浮空输入
引脚内部什么都不接,处于浮空模式下,电平状态是不确定的。外部信号输入什么,IO口就是什么状态。常用在按键识别上
3、GPIO_Mode_IPD 下拉输入
把电压拉到GND。与上拉原理相似。内部下拉电阻
4、GPIO_Mode_IPU 上拉输入
通过内部的上拉电阻将一个不确定的信号通过一个电阻拉到高电平。内部上拉电阻
在使用当中,除了要接收模拟量、ADC采集时,其他情况都是使用下面三种模式常用的时上拉输入模式。
输出模式
1、GPIO_Mode_OUT_PP 推挽输出
可以输出高低电平,连接数字器件。在stm32中推挽电路由两个MOS管组成:输出高电平时P-MOS管导通,引脚联通VDD(3.3v)。输出低电平时N-MOS导通,引脚联通GND。该方式既提高电路的负载能力,又提高开关速度。
应用:可以外接上拉电阻输出较高的电平,也能够通过读取IO的电平变化实现C51的IO双向功能。
1、GPIO_Mode_OUT_DD 开漏输出
无法直接输出高电平,要在外部连接上拉电阻才行,输出的电压由上拉电阻连接的电源决定。适合做电流型的驱动,其吸收电流的能力相对强(一般20ma以内)。开漏输出还有一个特性:线与。即很多开漏模式引脚连接在一起,只有当所有引脚都输出1时,才能够被上拉电阻拉到高电平。若有一个引脚为低电平,则所有引脚相当于接地。
应用:推挽输出---IO输出0-接GND,IO输出1 -接VCC,读输入值是未知的。
1、GPIO_Mode_AF_PP 复用推挽输出
简单来说就是给内部外设使用的推挽输出模式。
应用:片内外设功能(TX1,MOSI,MISO.SCK.SS)
1、GPIO_Mode_AF_DD 复用开漏输出
简单来说就是给内部外设使用的开漏输出模式。
应用:片内外设功能(I2C的SCL,SDA)