1、输入浮空
端口电平未知的,由外部决定
2、输入上拉
无信号输入时,为高电平
3、输入下拉
无信号输入时,为低电平
4、模拟输入
可以用于AD转换,测电压
5、开漏输出
注:一般用于总线(iic,spi),输出高阻态表示高电平。
只能输出低电平
只能通过加上拉电阻输出高电平(输出多少v,取决于上拉电阻接多少v)
6、推挽式输出
开关效率高,电流大,驱动能力强
7、推挽式复用输出
复用功能
8、开漏复用功能
复用功能
以上8点的原文链接:https://blog.csdn.net/m0_51247005/article/details/110008188
每一个io口需要四个位来控制
CRL/CRH寄存器:两个位配置具体输入/输出模式(共8种),两个位配置模式和速度(共3种)
IDR寄存器:每一组io有一个,16位
ODR寄存器:
BSRR寄存器:32位寄存器,低16位;高16位
BRR寄存器
stm32可以进行端口复用,即一个引脚可以作为数据输入输出的引脚,也可以作为内置外设的功能引脚。
端口重映射,即一个引脚具有默认的端口外,还可以通过设置重映射寄存器的方式,把这个外设的引脚映射到其它的端口。
所有io口可以作为中断输入