STM32之GPIO_Mode定义和区别

本文深入解析GPIO_InitStructure.GPIO_Mode的浮空输入、上拉输入和下拉输入的区别。浮空输入时,GPIO电平不稳定;上拉输入保持高电平,仅响应低电平变化;下拉输入保持低电平,仅响应高电平变化。例如,在STM32的I2C协议应用中,为捕获ACK信号,应将GPIO设为下拉输入,以便检测电平变化。
摘要由CSDN通过智能技术生成

目录

GPIO_InitStructure.GPIO_Mode定义区别

举例子深度理解:


GPIO_InitStructure.GPIO_Mode定义区别

浮空输入:此条件下,gpio的电平不固定会随意高低

GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING;

上拉输入:gpio一直保持高电平,只有外部输入的变成低电平才会翻转到低电平,所以如果是高电平则无法比较

GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU;

同理下拉输入,gpio一直保持低电平,只有外部输入的变成搞电平才会翻转到搞电平,所以如果是低电平则无法比较

所以具体的看gpio的外部需求来设置

325ebb0a1def895d848756951d32cc09.png

举例子深度理解:

比如stm32的gpio口模拟I2C协议,向外设芯片进行数据交互,但是每个数据发送之后会有ack相应,对应的ack就是高电平相响应,而捕获ack的io引脚就要定义成下拉输入,这样才能看出电平由低到高的变化。

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值