GPIO_MODE_AF_OD和GPIO_MODE_OUTPUT_OD区别,MCU其他配置都没问题IO口但是始终不响应问题

上述两种模式都需要接上拉电阻,因为该模式下不接上拉电阻就只能输出低电平(可以说P-MOS管关闭)

讲这两种模式前我们先看这个结构体GPIO_InitTypeDef里的成员Alternate,其解释为:要连接到选定引脚的外围此参数可以是@ref GPIOEx_Alternate_function_selection的值,当我们作为普通GPIO使用时,该位置0,否则需要给你想要使用的外设的值,比如想使用I2C,那么该值可以为GPIO_AF4_I2C1。

1,GPIO_MODE_OUTPUT_OD既开漏输出

在此模式下是由芯片内核直接操作配置该模式的IO口,使其输出低电平(N-MOS管导通,输出接地),否则就是高电平。

2,GPIO_MODE_AF_OD既复用开漏输出

由MCU外设控制,与GPIO无关(可以这样理解),该模式下的好处是输出速度高,常见于一些I2C,SPI等外设当中。

如果你MCU没有外设时,你去模拟I2C,或者SPI时就不能使用GPIO_MODE_AF_OD模式了,这样芯片IO口不会输出信号,尽管你的代码不报错,所以配置是需要注意!

这里解释一下为什么需要接上拉或者下拉,目的是为了增强驱动能力。可以看下图,能很好的表达上述内容。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Liang_Xia_Strive

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值