八种模式
推挽输出(PUSH-PULL/PP):
输出高电平就直接连接到我们单片机的VDD 3.3V,输出低电平就直接连接到我们单片机的VSS 0V,这是一种比较简单的输出方式,让 输出方式 变为高点电平的变化,使得输出电流增大,提高了输出引脚的驱动能力,提高了电路的负载能力和开关的速度。
开漏输出(Open-Drain/OD):
开漏输出则有所不同,它只连接了单片机的Vss 0V,如果模式为开漏模式的话,正常情况下它只能输出低电平,不能输出高电平。 如果我们想输出高电平怎么办,需要我们在外部电路上连接上拉电阻,通过这样来输出高电平。并且这样的好处是,这样高电压是我们自己控制的高电压,从而实现电平转换效果。
复用推挽/开漏输出(Alternate Function/AF):
这两个放在一起介绍,GPIO除了通用输入输出以外,还可以作为片上外设(USART,IIC,SPI等)专用引脚,就是说一个引脚可以有多种用途,但是,同一时刻一个引脚只能用选择一个功能。当引脚设置为复用功能时,可以选择复用的那两个功能,若设置为复用开漏模式,需要外接上拉电阻。
上拉输入(Input Pull-up):
顾名思义,设置为此选项时,外部没有信号传入,默认为高电平,该模式的典型应用,就是外接一个按键。没有按下按键为高电平,按下后为低电平。<