STM32--GPIO那些事

一、八大模式

|------------|----------|
| 输出 | 输入 |
| 推挽输出 | 浮空输入 |
| 开漏输出 | 上拉输入 |
| 复用推挽输出 | 下拉输入 |
| 复用开漏输出 | 模拟输入 |

二、细说

推挽输出

|---------|----------------------------------------|
| | 推挽输出 |
| 高电平 | P-MOS激活 N-MOS断开 3.3v |
| 低电平 | P-MOS断开 N-MOS激活 0v |
| 优点 | 可以直接输出3.3v |
| 缺点 | 只能输出3.3v(外部上拉和下拉的作用是控制在没有输出时IO口电平) |

开漏输出

|---------|---------------------------------|
| | 开漏输出 |
| 高电平 | P-MOS断开 N-MOS断开++由外电路决定++ |
| 低电平 | P-MOS断开 N-MOS激活 0v |
| 优点 | 配合外电路 更加灵活 |
| 缺点 | 高电平实际是高阻态 无法输出电流 |

复用推挽输出--GPIO复用为其他外设

复用开漏输出--GPIO复用为其他外设

浮空输入 I/O端口的电平信号直接进入输入数据寄存器。MCU直接读取I/O口电平,I/O的电平状态是不确定的,完全由外部输入决定。

上拉输入 I/O内部接上拉电阻,此时如果IO口外部没有信号输入或者引脚悬空,IO口默认为高电平 如果I/O口输入低电平,那么引脚就为低电平,MCU读取到的就是低电平

下拉输入 I/O内部接下拉电阻,此时如果IO口外部没有信号输入或者引脚悬空,IO口默认为低电平 如果I/O口输入高电平,那么引脚就为高电平,MCU读取到的就是高电平

模拟输入 当GPIO引脚用于ADC采集电压的输入通道时,用作"模拟输入"功能,此时信号不经过施密特触发器,直接进入ADC模块,并且输入数据寄存器为空 ,CPU不能在输入数据寄存器上读到引脚状态。当GPIO用于模拟功能时,引脚的上、下拉电阻是不起作用的,这个时候即使配置了上拉或下拉模式,也不会影响到模拟信号的输入输出

相关推荐
清风6666666 小时前
基于单片机的锅炉压力与温度监测报警系统设计
单片机·嵌入式硬件·毕业设计·课程设计·期末大作业
ACP广源盛139246256737 小时前
GSV2221 显示转换芯片@ACP#赋能 RTX Spark 端侧 AI 设备,构建多屏全模态视觉交互新生态
大数据·人工智能·嵌入式硬件·gpt·spark·电脑·音视频
Szime8 小时前
TJA1044T/1现货查询与汽车CAN通信应用采购注意事项
嵌入式硬件·汽车
rhythm-ring8 小时前
《汽车智能高边开关PROFET:电流检测与标定实战》
嵌入式硬件·汽车
点灯小铭11 小时前
基于单片机的鱼缸监测与远程管理系统设计
数据库·单片机·嵌入式硬件·毕业设计·课程设计·期末大作业
Szime11 小时前
DS90UB924TRHSRQ1现货交期与车载视频SerDes项目采购说明
嵌入式硬件·汽车
清风66666611 小时前
基于单片机的罐体压力控制器设计与实现
单片机·嵌入式硬件·毕业设计·51单片机·课程设计·期末大作业
嵌入式-老费11 小时前
esp32开发与应用(题外话之j-link调试)
嵌入式硬件
点灯小铭11 小时前
基于单片机的热量计测量系统设计
单片机·嵌入式硬件·毕业设计·课程设计·期末大作业
wengqidaifeng12 小时前
嵌入式小白第三站:UART、I2C、SPI、ADC 怎么学?从传感器读数到完整小项目
stm32·单片机·嵌入式硬件·51单片机