打印
[STM32F1]

io输入电平采集问题

[复制链接]
322|19
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
zhdjl|  楼主 | 2025-3-20 10:39 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
外部输入一个1秒跳变的慢信号,万用表测最高3.3伏,io读取一直为低电平(程序读到低电平会刷新液晶显示,一直低电平会狂刷新液晶,应该是1秒才读到一次低电平),看了一个博客说输入要设置成下拉才能正确判断输入电平,上拉浮空都不行,我试了一下确实好了,一秒一刷,但是修改了后边几行显示代码后,屏幕又开始狂刷新了,测输入管脚还是最高3.3伏,大家有遇到这种情况吗?

使用特权

评论回复
沙发
jcky001| | 2025-3-20 10:43 | 只看该作者
IO引脚配置不当,导致信号读取错误。

使用特权

评论回复
板凳
elephant00| | 2025-3-20 10:45 | 只看该作者
将IO引脚配置为输入模式,并且下拉电阻配置正确。如果下拉电阻配置正确但问题依旧,尝试调整下拉电阻的阻值,看是否有改善。

使用特权

评论回复
地板
zhdjl|  楼主 | 2025-3-20 11:59 | 只看该作者
jcky001 发表于 2025-3-20 10:43
IO引脚配置不当,导致信号读取错误。

输入两路是ad给出来的,有问题的一路是ad转换完成的标志,另一路是ad串行输出(这一路数据显示正常)

使用特权

评论回复
5
cr315| | 2025-3-20 13:00 | 只看该作者
可能是程序中存在逻辑错误,导致液晶显示刷新控制不当。

使用特权

评论回复
6
jinyi7016| | 2025-3-20 17:44 | 只看该作者
屏幕 狂刷新应该与这个IO没有关系了,你代码逻辑问题

使用特权

评论回复
7
duo点| | 2025-3-20 19:00 | 只看该作者
可以考虑增加防抖处理。

使用特权

评论回复
8
zhdjl|  楼主 | 2025-3-20 20:29 | 只看该作者
elephant00 发表于 2025-3-20 10:45
将IO引脚配置为输入模式,并且下拉电阻配置正确。如果下拉电阻配置正确但问题依旧,尝试调整下拉电阻的阻值 ...

程序比较简单,最后上焊膏加焊了一遍管脚,正常了

使用特权

评论回复
9
onlycook| | 2025-3-20 22:00 | 只看该作者
用示波器检测信号是否正常。

使用特权

评论回复
10
Wordsworth| | 2025-3-21 08:02 | 只看该作者
可以在输入引脚上加个小电容(比如10nF~100nF),过滤一下可能的高频干扰,看看会不会稳定一点。

使用特权

评论回复
11
Bblythe| | 2025-3-21 08:03 | 只看该作者
你这个信号是一秒跳变一次,读取逻辑有没有做去抖?如果边沿检测有抖动,可能会导致异常触发。

使用特权

评论回复
12
Pulitzer| | 2025-3-21 08:05 | 只看该作者
试试 GPIO_ReadInputDataBit() 读取后,打印一下输入值,看看是不是真的跟预期的一致,可能程序逻辑上有误。

使用特权

评论回复
13
Uriah| | 2025-3-21 08:06 | 只看该作者
你用的是什么库?HAL 还是标准库?有些库初始化时可能会自动配置IO模式,检查一下初始化代码。

使用特权

评论回复
14
Clyde011| | 2025-3-21 08:07 | 只看该作者
还有一种可能,你的液晶刷新逻辑里是不是用了 while 之类的死循环,导致误判时程序卡在刷新界面?

使用特权

评论回复
15
公羊子丹| | 2025-3-21 08:09 | 只看该作者
你这个问题听起来像是IO的输入模式影响了电平判断,可能跟信号源的驱动能力有关。加下拉能稳定输入,那信号是不是开路状态下浮动了?

使用特权

评论回复
16
周半梅| | 2025-3-21 08:10 | 只看该作者
你试过直接用示波器看看输入波形吗?万用表测的是均值,可能信号有抖动或者电平不稳定的瞬间状态。

使用特权

评论回复
17
帛灿灿| | 2025-3-21 08:11 | 只看该作者
STM32F1的输入模式有浮空、上拉、下拉,你之前用的是浮空吗?有些情况下浮空模式容易受到干扰,导致误判。

使用特权

评论回复
18
童雨竹| | 2025-3-21 08:13 | 只看该作者
你的信号是直接接到IO口,还是通过分压或者电阻网络?如果信号源阻抗比较大,可能需要外部拉低或拉高增强驱动能力。

使用特权

评论回复
19
万图| | 2025-3-21 08:14 | 只看该作者
修改代码后出现狂刷新,看看是不是IO配置又被改回去了,或者程序里有别的地方影响了IO读取?

使用特权

评论回复
20
xionghaoyun| | 2025-3-21 08:48 | 只看该作者
开了上拉没

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2

主题

5

帖子

0

粉丝