1.带FT标号的引脚能容忍5V
2.GPIO系统架构
stm32的所有GPIO都是挂载在APB2总线上的
3.GPIO的基本结构
在上图中,左边就是寄存器,右边就是驱动器了
- 保护二极管的作用:VDD表示3.3V,如果输入的电压的值大于3.3V,那么这个时候上边的保护二极管就会导通,这个时候就防止伤害了,同样道理,如果电压大小小于0V,那么这个时候下面的二极管就会导通从而保护内部电路
- 上拉电阻和下拉电阻:因为当浮空的时候,很容易受到外界干扰,所以我们最好的加一个默认的电平。但是要注意这里是一种比较弱的上拉和下拉。只是为了维持系统的稳定性。
- 斯密特触发器的主要作用就是整流,当电压值大于某个值的时候,输出1,当电压小于某个阈值的时候,输出0
4.IO口的模式
我们先来详细看一下IO口的硬件结构
- 推挽输出的时候,P-MOS和N-MOS都是有效的,当往寄存器当中写入1的时候,那么P-MOS导通接到VCC上,往寄存器当中写入0的时候,那么接地GND,推挽输出有着很强的驱动能力
- 开漏输出的时候,P-MOS管是不能导通的,寄存器写入1的时候,这个时候就相当于断开的电路,相当于高阻态。当寄存器写入0的时候,这个时候N-MOS导通,输出GND,也就是电平为0.所以开漏输出只有在低电平的时候才有驱动能力。开漏输出一般用于通信,可以接上一个上拉电阻,当寄存器写入1的时候,那么这个时候就通过上拉电阻输出5V的电压了