2025年按键消抖

按键消抖前言 最近博主在逛哔哩哔哩的时候 偶然看到一个关于按键消抖的讲解 进去一听发现竟然越听越糊涂 后面请教许多大佬才有了一点点理解 现分享出来 如果有不对的地方 大家请多多批评 为什么要消抖 机械触点在活动时 弹片有可能存在几次连续的抖动

大家好,我是讯享网,很高兴认识大家。

前言

最近博主在逛哔哩哔哩的时候,偶然看到一个关于按键消抖的讲解,进去一听发现竟然越听越糊涂,后面请教许多大佬才有了一点点理解,现分享出来,如果有不对的地方,大家请多多批评。

为什么要消抖

机械触点在活动时,弹片有可能存在几次连续的抖动,从而产生不必要的脉冲信号,这就可能造成单片机的误判。消抖就是要尽可能的减少这种误判的可能,消抖常见的手段是软件消抖和硬件消抖。

软件消抖

首先是软件代码消抖
在这里插入图片描述
讯享网
通过读取按键值是否发生变化,然后延时一段时间,去跳过机械弹片抖动的时间,然后再次判断,如果确认发生了变化,则证明按键被按下。
软件消抖的好处是不需要多余材料去处理,通过代码延时就可以将抖动时间给跳过,但是延时操作会造成cpu资源的浪费,如果对时间要求比较高的情况下,就不太适用了。

硬件消抖

在这里插入图片描述
这是一个最常见的硬件消抖电路,通过一个电阻和一个电容对按键进行消抖,最开始博主只是拿来用,没有去研究过它的工作原理,导致在看别人讲解的时候一团雾水。现在博主就来分析一下这个电路是如何去除按键抖动的。
机械触点的抖动主要在两个部分,按下按键的时候以及松开按键的时候,这里就需要我们分两个部分来考虑。

首先是按下按键的时候

其次是松开按键的时候

当我们松开按键,按键这一条线是断开的,这时,电流开始流入电容,对电容进行充电,又是因为上拉电阻足够大,电流很小,充电的时间是比较长的,这个时候,电容充电的时候会和按键松开时抖动的时间进行重合,最终,当电容充电到高电平,按键的抖动时间也基本结束了。

小讯
上一篇 2025-03-28 10:30
下一篇 2025-01-28 10:57

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/11523.html