stm32的GPIO基本结构

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的电压了

5.GPIO模式

相关推荐
List<String> error_P1 天前
STM32 Systick定时器介绍
stm32·定时器·systick
蓑衣客VS索尼克1 天前
STM32G4针对串口通信异常的操作
stm32·单片机·嵌入式硬件
小康小小涵1 天前
STM32F103RCT6编写iNav1.7.3飞控固件底层开发
stm32·单片机·嵌入式硬件
小郭团队1 天前
1_6_五段式SVPWM (传统算法反正切+DPWM2)算法理论与 MATLAB 实现详解
嵌入式硬件·算法·matlab·dsp开发
小郭团队1 天前
1_7_五段式SVPWM (传统算法反正切+DPWM3)算法理论与 MATLAB 实现详解
开发语言·嵌入式硬件·算法·matlab·dsp开发
爱潜水的小L1 天前
自学嵌入式day49,arm led、蜂鸣器和bsp
arm开发·单片机·嵌入式硬件
物联网牛七七1 天前
stm32内核寄存器和外设寄存器
stm32·单片机·嵌入式硬件
嗯嗯=1 天前
STM32单片机学习篇3
stm32·单片机·学习
梁洪飞1 天前
通过链接文件和Start.S学习armv7
linux·arm开发·嵌入式硬件·学习·arm
m0_555762901 天前
STM32H7 + VS Code + OpenOCD + STLink 完整配置教程
stm32·单片机·嵌入式硬件