STM32-之1-GPIO模式

GPIO 模式

input:
模拟输入 1
浮空输入 4
上拉输入 2
下拉输入 3

input

上图显示了四种输入方式

output:
推免输出 1
开漏输出 2
复用推免输出 3
复用开漏输出 4

图片.png

注意:开漏模式,需要在芯片引脚处外接工作电压5V作为上拉电压

输入:

1 上拉输入:默认情况下,读取 得的GPIO引脚数据位1,高电平

2 下拉输入:默认情况下,读取 得的GPIO引脚数据位0,低电平

3 浮空输入:输入阻抗较大,一般把这种模式用于标准的通信协议如I2C,USART的接收端。

4 模拟输入:关闭了施密特触发器,不接上,下拉电阻,经由另一线路把电压信号传送到片上外设模块。如传送至ADC模块,由ADC采集电压信号。所以使用ADC外设时,必须设置为模拟输入模式。

输出:

1 推挽输出:在输出高电平时,P-MOS管导通,低电平时,N-MOS管导通。两个管子轮流导通,一个负责灌电流,一个负责拉电流,使其负载能力 和开关速度都比普通的方式有很大的提高。推挽输出的低电平为0V,高电平为3.3V。

2 开漏输出:如果我们控制输出为0,低电平,则使N-MOS管导通,使输出接地,若控制输出为1,则既不输出高电平,也不输出低电平,为高阻态。要正常使用必须在外部接一个上拉电阻。它具有线与特性,即多个开漏sh模式引脚连接到一起时,只有当所有引脚都输出高阻态,才由上拉电阻提供高电平,此高电平的电压为外部上拉电阻所接电源的电压。若其中一个引脚为低电平,那线路就相当于短路接地,使得整条线路都为低电平,0V。

3 复用开漏输出:

4 复用推挽输出:

比如使用外设IIC时,我们需要把GPIO配置为复用推挽输出,用于数据通信功能。

再比如串口通信的TX,以及SPI外设的GPIO使用就要把引脚设置为复用开漏输出。

参考文章:https://blog.csdn.net/hbutluoxi/article/details/122617666

你可能感兴趣的:(STM32-之1-GPIO模式)