单片机学习小组
登录
直播中
云中云
8年用户
918经验值
私信
关注
STM32的GPIO口具有哪几种工作模式?
开启该帖子的消息推送
STM32
的GPIO口具有哪几种工作模式?
回帖
(1)
凌云志
2022-2-21 10:33:36
1、浮空输入模式
上图红色的表示便是浮空输入的过程,外部输入时0读出的就是0,外部输入时1读出的就是1,外部没有输入IO处于阻塞读不出电平状态。
用处:感觉在信号处理方面用的比较好,比如在读取一段一段的波形,可以清晰的知道什么时候是0信号,什么时候是1信号,什么时候是没有信号的。
类比:51单片机找不到类似的输入模式
2、上拉输入
上拉输入和浮空输入的区别是,上拉电阻的开关关闭了,如上图所示。IO没有输入的时候,IO电平等于VDD即1电平,当然IO输入低电平的事就是VDD和IO口形成一个闭环电路,根据分压法IO口出分担的电压为0。当然IO输入为1时,IO口电压和VDD相等,上拉电阻好比断开了,IO口的电压还是0。
用处:在按键使用的时候特别适用,按键的一端接地,一端接IO口,当按键没有按下的时候电平为高电平,当按键按下的时候IO是低电平。
类比:51单片机P1 P2 P3口就是上拉输入的,大家可以回忆一下51单片机的按键操作,我们应该知道51单片机除了P0口内部没有上拉电阻其他的IO都有上拉电阻。大家应该明白了51单片机没有按键的时候,我们读到的事高电平了吧!!
小计:
上拉输入,不管输入1还是不输入IO的电平都是1,输入0是IO口的电平是0
PS按键是共地还是共VCC选择的时候要慎重
3、下拉输入
下拉输入和上拉输入的区别是,上拉电阻的开关打开了了,下拉电阻的开关关闭;了。如上图所示。IO没有输入的时候,IO电平等于VSS即0电平,当IO输入高电平的时候IO口就和VSS组成一个闭合电路,根据分压法,电压都分担到了电阻上,所以IO口电平为高电平。当然IO输入为低电平的时候,IO口肯定是低电平。
用处:在按键使用的时候特别适用,按键的一端接VCC,一端接IO口,当按键没有按下的时候电平为低电平,当按键按下的时候IO是高电平电平。
类比:51单片机没有类似的IO口
PS按键是共地还是共VCC选择的时候要慎重
4、模拟输入
模拟输入,大家看上图的红色的标示。模拟输入和其他输入最大的区别
1、 没有连接TTL触发器,这样保留最原始的电压值,不是转换过后的0和1信号
2、 数据连接的终点不一样,其他的输入我们都是读取输入寄存器的值,而模拟输入,数据直接送到片上外设,一般是ADC。
下面就是输出类型了
1、 推挽输出
2、 开漏输出
3、 复用推挽输出
4、 复用开漏输出
1、推挽输出
上图就是就是推挽输出的过程。上图标示的“2”便是我们的输出寄存器,我们可以写入1或者0,如果写入1,图上的“3”上面的P-mos导通,N-mos截止,IO口等价直接连接在VDD上,所以IO口电平是高电平。同理输出寄存器的值为0时,P-mos截止,N-mos导通。IO口直接连接在VSS上,所有IO口电平为低电平。
大家可能会问图上标的1是什么?其实1的寄存器就是间接向输出寄存器写入。
用处:适合做一些开关控制,应为推挽输出可以快速的切换0和1,例如继电器,led等
类比:51单片机没有类似的IO口
3、 开漏输出
上图红色标示便是开漏输出的过程图,图上1和2的标示已经在推挽输出中介绍了,此处不再说明。开漏输出与推挽输出唯一的区别就是开漏输出只有一个N-mos管。当输出寄存器的值为0的时候,n-mos导通,IO口直接连接VSS,输出为低电平。当输出寄存器为1的时候,n-mos截止,IO口直接和输出端断开了,处于浮空状态。电平状态不可控制。
大家可能会说,这样设计不是傻缺么?有什么用设计这种输出方式。其实这种方式很有用的,请看下面的类比
类比:
我们都知道51单片机PO口,是不是想到什么了?对PO口就是类似的开漏输出, PO口作为输出的时候一定要加上拉电阻,加上上拉电阻后,输入寄存器为1的时候,n-mos截止截止了,好比IO和输出端断开,这是IO口点压就等于上拉电阻的电压。这样变输出了高电平,如果IO口的高电平,连接到了外设低电平的,就会产生电流,电流不会流到IO口,(N-mos管截止了)直接流到外设。是不是增大了驱动能力了。(IO口的驱动能力有限,不能容忍大电流)。
通过改变上拉电阻的大小和电压就能完成很多功能。
4、 复用(推挽和开漏)输出
复用推挽开漏和(推挽开漏输出)区别在于起点不一样,复用输出来源片上外设。
用处:
复用开漏输出---
片内外设功能(TX1,MOSI,MISO.SCK.SS)
复用推挽输出---
片内外设功能(I2C的SCL,SDA)
1、浮空输入模式
上图红色的表示便是浮空输入的过程,外部输入时0读出的就是0,外部输入时1读出的就是1,外部没有输入IO处于阻塞读不出电平状态。
用处:感觉在信号处理方面用的比较好,比如在读取一段一段的波形,可以清晰的知道什么时候是0信号,什么时候是1信号,什么时候是没有信号的。
类比:51单片机找不到类似的输入模式
2、上拉输入
上拉输入和浮空输入的区别是,上拉电阻的开关关闭了,如上图所示。IO没有输入的时候,IO电平等于VDD即1电平,当然IO输入低电平的事就是VDD和IO口形成一个闭环电路,根据分压法IO口出分担的电压为0。当然IO输入为1时,IO口电压和VDD相等,上拉电阻好比断开了,IO口的电压还是0。
用处:在按键使用的时候特别适用,按键的一端接地,一端接IO口,当按键没有按下的时候电平为高电平,当按键按下的时候IO是低电平。
类比:51单片机P1 P2 P3口就是上拉输入的,大家可以回忆一下51单片机的按键操作,我们应该知道51单片机除了P0口内部没有上拉电阻其他的IO都有上拉电阻。大家应该明白了51单片机没有按键的时候,我们读到的事高电平了吧!!
小计:
上拉输入,不管输入1还是不输入IO的电平都是1,输入0是IO口的电平是0
PS按键是共地还是共VCC选择的时候要慎重
3、下拉输入
下拉输入和上拉输入的区别是,上拉电阻的开关打开了了,下拉电阻的开关关闭;了。如上图所示。IO没有输入的时候,IO电平等于VSS即0电平,当IO输入高电平的时候IO口就和VSS组成一个闭合电路,根据分压法,电压都分担到了电阻上,所以IO口电平为高电平。当然IO输入为低电平的时候,IO口肯定是低电平。
用处:在按键使用的时候特别适用,按键的一端接VCC,一端接IO口,当按键没有按下的时候电平为低电平,当按键按下的时候IO是高电平电平。
类比:51单片机没有类似的IO口
PS按键是共地还是共VCC选择的时候要慎重
4、模拟输入
模拟输入,大家看上图的红色的标示。模拟输入和其他输入最大的区别
1、 没有连接TTL触发器,这样保留最原始的电压值,不是转换过后的0和1信号
2、 数据连接的终点不一样,其他的输入我们都是读取输入寄存器的值,而模拟输入,数据直接送到片上外设,一般是ADC。
下面就是输出类型了
1、 推挽输出
2、 开漏输出
3、 复用推挽输出
4、 复用开漏输出
1、推挽输出
上图就是就是推挽输出的过程。上图标示的“2”便是我们的输出寄存器,我们可以写入1或者0,如果写入1,图上的“3”上面的P-mos导通,N-mos截止,IO口等价直接连接在VDD上,所以IO口电平是高电平。同理输出寄存器的值为0时,P-mos截止,N-mos导通。IO口直接连接在VSS上,所有IO口电平为低电平。
大家可能会问图上标的1是什么?其实1的寄存器就是间接向输出寄存器写入。
用处:适合做一些开关控制,应为推挽输出可以快速的切换0和1,例如继电器,led等
类比:51单片机没有类似的IO口
3、 开漏输出
上图红色标示便是开漏输出的过程图,图上1和2的标示已经在推挽输出中介绍了,此处不再说明。开漏输出与推挽输出唯一的区别就是开漏输出只有一个N-mos管。当输出寄存器的值为0的时候,n-mos导通,IO口直接连接VSS,输出为低电平。当输出寄存器为1的时候,n-mos截止,IO口直接和输出端断开了,处于浮空状态。电平状态不可控制。
大家可能会说,这样设计不是傻缺么?有什么用设计这种输出方式。其实这种方式很有用的,请看下面的类比
类比:
我们都知道51单片机PO口,是不是想到什么了?对PO口就是类似的开漏输出, PO口作为输出的时候一定要加上拉电阻,加上上拉电阻后,输入寄存器为1的时候,n-mos截止截止了,好比IO和输出端断开,这是IO口点压就等于上拉电阻的电压。这样变输出了高电平,如果IO口的高电平,连接到了外设低电平的,就会产生电流,电流不会流到IO口,(N-mos管截止了)直接流到外设。是不是增大了驱动能力了。(IO口的驱动能力有限,不能容忍大电流)。
通过改变上拉电阻的大小和电压就能完成很多功能。
4、 复用(推挽和开漏)输出
复用推挽开漏和(推挽开漏输出)区别在于起点不一样,复用输出来源片上外设。
用处:
复用开漏输出---
片内外设功能(TX1,MOSI,MISO.SCK.SS)
复用推挽输出---
片内外设功能(I2C的SCL,SDA)
举报
更多回帖
rotate(-90deg);
回复
相关问答
HAL库的
GPIO
具有
哪几种
工作
模式
?
2022-02-08
1110
STM32
IO
口
的
工作
模式
有
哪几种
?
2021-07-28
1250
如何利用
stm32
的
GPIO
口
去点亮一个LED灯
2021-12-15
1114
GPIO
工作
模式
有
哪几种
?
2022-02-11
1125
QSPI的特点是什么?
具有
哪几种
工作
模式
?
2021-12-07
927
小编科普
STM32
的
GPIO
工作
方式有
哪几种
2021-08-06
1315
STM32
F103ZET6的
GPIO
有
哪几种
工作
模式
呢
2021-11-18
1712
STM32
IO
口
可以配置的
模式
有
哪几种
?
2022-01-17
885
基于
STM32
F103ZET6开发板的
GPIO
有
哪几种
工作
方式
2022-02-21
1190
FSMC
工作
模式
有
哪几种
?
2022-01-20
1752
发帖
登录/注册
20万+
工程师都在用,
免费
PCB检查工具
无需安装、支持浏览器和手机在线查看、实时共享
查看
点击登录
登录更多精彩功能!
首页
论坛版块
小组
免费开发板试用
ebook
直播
搜索
登录
×
20
完善资料,
赚取积分