你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

基于STM32的IO输入输出模式经验分享

[复制链接]
攻城狮Melo 发布时间:2023-9-20 16:53
STM32共有8种类型, 4种输入模式,4种输出模式

微信图片_20230920165154.jpg

一、输入模式
(1)浮空输入
I/O的电平状态是不确定的,完全由外部输入决定,所以在要读取外部信号时通常配置IO口为浮空输入模式。

(2)上拉/上拉输入模式
下拉: IO口悬空时,输入电平保持在低电平;IO口输入为高电平时,输入端为高电平
下拉: IO口悬空时,输入电平保持在高电平;IO口输入为低电平时,输入端为低电平

微信图片_20230920165150.jpg

WK_UP为PA0引脚,上拉到3.3V,设置为下拉输入模式,按键按下检测到高电平
KEY2为PA13引脚,下拉到GND, 设置为上拉模式,按键按下检测到低电平

(3)模拟输入模式
I/O端口的模拟信号(电压信号,而非电平信号)直接模拟输入到片上外设模块,比如ADC模块

二、输出模式
(1)推挽输出
在推挽输出模式下,P-MOS管和N-MOS管同时工作,通过对两个MOS管的导通控制,实现控制输出高低电平。大多数IO口都使用推挽输出或者复用推挽输出。
高电平时,P-MOS管导通,N-MOS管截止,输出高电平
低电平时,此时P-MOS管截止,N-MOS管导通,输出低电平 0.

(2)开漏输出
在开漏输出模式下,P-MOS管是不工作的, 只有N-MOS 管工作。即始终输出低电平。
VDD为外部接入的上拉

微信图片_20230920165142.jpg

高电平时,P-MOS管截止,N-MOS管也截止,输出的高电平是外部上拉电源的电平。
低电平时,P-MOS管截止,N-MOS管导通,输出低电平。
开漏输出模式下,必须要有外部上拉电阻,如果没有外部上拉电源,输出的信号只有 低电平,没有高电平。
对比:
1) 推挽输出模式可以不需要外部辅助电路就可以直接输出高低电平,所以可以用于直接控制数字电路。
2) 漏输出模式下,通过外部 上来电源实现 高低电平,这个外部电源不需要跟CPU的电平完全一致,比如STM32的CPU电源是3.3V,开漏模式下,完全可以使用上拉5V,这样的话,就可以实现 5V的电平 了,对于一些外围器件,如果外围器件的电平与CPU不同,只需要上拉对应的电平电源就可以了。(开漏是用来连接不同电平的器件,匹配电平用的)
3) 推挽输出就是CPU 能够 直接 推动输出 电平。开漏输出就是 断开 漏极,需要外接辅助上拉电阻。

(3)复用开漏/推挽输出
推挽复用输出模式,与推挽输出模式很是类似。只是输出的高低电平的来源,不是让CPU直接写输出数据寄存器,取而代之利用片上外设模块的复用功能输出来决定的。
开漏复用输出模式,与开漏输出模式很是类似。只是输出的高低电平的来源,不是让CPU直接写输出数据寄存器,取而代之利用片上外设模块的复用功能输出来决定的

STM32F103 GPIO外设模式配置:
GPIO configurations for device peripherals

微信图片_20230920165139.jpg

微信图片_20230920165136.jpg

微信图片_20230920165132.jpg

微信图片_20230920165129.jpg

微信图片_20230920165125.jpg

转载自:light
如有侵权请联系删除
微信图片_20230920165146.jpg
收藏 评论0 发布时间:2023-9-20 16:53

举报

0个回答
关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版