打印
[STM32F0]

外部中断老是抖动触发,有没有简单点的办法

[复制链接]
226|14
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
Pulitzer|  楼主 | 2025-6-4 07:21 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
用了EXTI做按键中断,每次按一下都会跳好几次中断,不想用延迟去抖,想找个更稳的法子。

使用特权

评论回复
沙发
Clyde011| | 2025-6-4 07:25 | 只看该作者
如果按钮接地,外部干扰多。

使用特权

评论回复
板凳
公羊子丹| | 2025-6-4 07:25 | 只看该作者
用 GPIO 口做轮询+滤波吧。

使用特权

评论回复
地板
周半梅| | 2025-6-4 07:26 | 只看该作者
HAL里没防抖,要自己加。

使用特权

评论回复
5
帛灿灿| | 2025-6-4 07:27 | 只看该作者
可以考虑用EXti + timer软延迟。

使用特权

评论回复
6
童雨竹| | 2025-6-4 07:28 | 只看该作者
我的做法是每次中断里关一次中断。

使用特权

评论回复
7
万图| | 2025-6-4 07:29 | 只看该作者
输入管脚是不是浮空?

使用特权

评论回复
8
Wordsworth| | 2025-6-4 07:30 | 只看该作者
试试设置GPIO为带上拉输入。

使用特权

评论回复
9
Bblythe| | 2025-6-4 07:31 | 只看该作者
触发方式用下降沿还是双沿?

使用特权

评论回复
10
Pulitzer|  楼主 | 2025-6-4 07:32 | 只看该作者
软件里加个状态机更保险。

使用特权

评论回复
11
Uriah| | 2025-6-4 07:34 | 只看该作者
简单粗暴:中断里delay几ms。

使用特权

评论回复
12
yzdel7| | 2025-6-5 22:08 | 只看该作者
用定时器,比如50ms检查一次按键状态,定义一个变量计数,连续几个50ms都检测到按下状态时,再判断按键有效。

使用特权

评论回复
13
codingtuzi| | 2025-6-5 22:35 | 只看该作者
外部添加适当的电容稳定一下输入波形。
软件内部的触发逻辑做一下归一化处理。

使用特权

评论回复
14
yzdel7| | 2025-6-7 18:35 | 只看该作者
最简单的办法就是在中断里计数,比如计够几次以后再判断按键有效。

使用特权

评论回复
15
weifeng90| | 2025-6-7 19:21 | 只看该作者
软件做一下滤波处理,把抖动信号滤除。

使用特权

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

本版积分规则

88

主题

4917

帖子

0

粉丝