IO的配置,纯经验,无长篇理论。

2019-07-25 18:11发布

stm32的IO很是复杂,情况多达8种。不过实际项目种,掌握一般的就够用了。

今天趴趴哥当年那些恶心的配置。

LED灯,基本配置  推挽输出。

按键输入,看外围电路,另一端接的是GND还是VCC    如果接的GND  那么没按下的时候要为高,才能区分按下了还是没有按下,故配置为上拉 接VCC的话同理。

模拟IIC的时候,就算IO配置成上拉也没软用,这个时候需要外接上拉电阻,那么为什么有些器件要,有些不用。  这个涉及到器件的内阻  内阻大的你不加上拉  你的io被分压了,你永远读取不到高电平。读出的数据全是0。

遇到高阻抗的怎么配置。比如某个芯片,充电的时候低电平。充满了为高阻抗。用万用表测试,充电时低电平,充满了还是低电片。玩毛,怎么判断,死说硬件问题。其实,高阻抗就是那边的输出不影响你的io口了。所以你配置成上拉。如果那边为0,上拉也读到0。高阻的时候读到上拉的高电平。如果它是高电平有效,你就要配置成下拉了。如果还有你硬件加了外围电路也要小心了。遇到没经验的给你接个地,你就要哭了。

遇到输出吃IO电压的怎么配置,如果某个器件很吃电压。你IO输出了高电平使能了,你量了一下那个地方的io,发现为0。然后你死命的查代码,一个io输出的问题,查到你怀疑人生,哥告诉你,你拔出来量一下就知道,你确实输出了高。但是,插在一起量就是0,你就想肯定哪里短路了,你很生气的说硬件问题。其实这个是你的IO驱动能力不足,你应该外接上拉电阻,然后IO配置成开漏输出就好了。

在一些项目中,都是大电流的,要注意有些没用到的IO千万不要配置成了输入(就是要检查代码,你肯定说,没用到的怎么会配置呢。)。因为外围电路没有设置好的时候很容易倒灌。

这些经验基本够用来,你们的还有吗?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
5条回答
a3748622
1楼-- · 2019-07-25 21:02
 精彩回答 2  元偷偷看……
xuande
2楼-- · 2019-07-25 23:17

最后一条有问题:没用的IO千万不要配置成了输入?

配成输入,这没错的。
最好再使能上拉电阻,这样更稳当。但不上拉也问题不大。

zhsyghhz
3楼-- · 2019-07-26 00:12
多谢楼主分享
aiyeba
4楼-- · 2019-07-26 01:26
xuande 发表于 2017-9-5 19:17
最后一条有问题:没用的IO千万不要配置成了输入?

配成输入,这没错的。

额,这条我搞错了.谢谢提醒
haiyu0612
5楼-- · 2019-07-26 03:05
学习了,帮助很大

一周热门 更多>