打印
[应用相关]

你知道吗,STM32可以用硬件实现按键的去抖动功能?

[复制链接]
8914|10
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
香水城|  楼主 | 2009-10-20 16:39 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
使用我在这个博客中介绍的输入滤波机制(STM32定时器的输入滤波机制),结合输入捕获的中断,可以轻松地实现按键的去抖动功能,而不需要软件的干预;这可是由硬件实现的去抖动功能,大大节省了软件的开销和程序代码的长度。

每个定时器最多可以实现4个按键的输入,这个方法也可以用于键盘矩阵的扫描,而且因为是通过中断实现,软件不需频繁的进行扫描动作。
沙发
lxyppc| | 2009-10-20 18:06 | 只看该作者
思路很强大,收下了

使用特权

评论回复
板凳
banhushui| | 2009-10-21 14:11 | 只看该作者
这个还真不知道,知道了俺也不这样用,50ms扫描哪里都通吃,也不复杂嘛

使用特权

评论回复
评分
参与人数 1威望 +4 收起 理由
FAQ + 4 我也是这么干的
地板
xwj| | 2009-10-21 14:42 | 只看该作者
汗~
这个主要是用于高频率干扰的,可不是为了做个按键消抖而设计的

使用特权

评论回复
5
香水城|  楼主 | 2009-10-21 15:37 | 只看该作者
汗~
这个主要是用于高频率干扰的,可不是为了做个按键消抖而设计的
xwj 发表于 2009-10-21 14:42


是的,这个滤波器确实主要是用于去除高频干扰的,但如果你的应用中没有需要处理的高频干扰,而定时器的资源又多出来了,正好可以充分地利用这个滤波器做个按键消抖。

哈哈,虽说是副作用,但它是一个不错的副作用,:lol

使用特权

评论回复
6
again_gyf| | 2009-10-21 20:21 | 只看该作者
应该很少人会这么干

使用特权

评论回复
7
FAQ| | 2014-10-6 18:26 | 只看该作者
有机会试试

使用特权

评论回复
8
小浣熊| | 2014-10-7 10:54 | 只看该作者
一般都采用软件去抖,硬件去抖需要成本啊。。。

使用特权

评论回复
9
cornrn| | 2017-5-27 11:40 | 只看该作者
小浣熊 发表于 2014-10-7 10:54
一般都采用软件去抖,硬件去抖需要成本啊。。。

0成本,STM32充分发挥作用,办法很好,学习了

使用特权

评论回复
10
cornrn| | 2017-5-27 11:42 | 只看该作者
http://www.**/mndz/2013/0922/article_19360.html

这个帖子吧

使用特权

评论回复
11
wdmhzh| | 2019-9-27 17:27 | 只看该作者
这不行吧,72M/4/32=562.5K = 1.8微秒,再乘以8=14.4微秒,这是滤波器滤波的最大值,离按键消抖几个毫秒还远的很

使用特权

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

本版积分规则

认证:意法半导体(中国)投资有限公司
简介:STM32技术专家

596

主题

17108

帖子

288

粉丝