按键消抖的原理与解决方案浅论
按键的消抖,是指按键在闭合或松开的瞬间伴随着一连串的抖动,这样的抖动将直接影响设计系统的稳定性, 降低响应灵敏度。因此,必须对抖动进行处理,即消除抖动的影响。
消抖原理分析:按键的抖动时间由按键的机械特性决定,抖动时间在5ms~10ms。也就是说,在每次按键闭合或松开时,跳过这段抖动时间,再检测按键的状态。一般通过延时来实现按键消抖。
一般的消抖方案:RS触发器消抖,电容充放电消抖,软件消抖。
1 RS触发器消抖
电路分析:S=0,R=1得出A=1,A’=0。当按压按键时,S=1,R=0得出A=0,A’=1,由于机械按键的接触抖动,按键过程中R的状态会在0和1之间多次变化,若R=1由于A=0,G2依然为1,不会影响输出的状态。同理松开按键时,S端的抖动也不会影响输出的状态
2电容充放电消抖
电容利用电容两端的电压不能突变的特性,将其并联在机械触点两端,消除接触抖动产生的毛刺电压。也可以实现硬件消抖,由于电容两端电压不能突变,使得按键两端滴电压平缓。抖动时间的长短由按键的机械特性决定,一般为5ms~10ms。按键稳定闭合时间的长短则是由操作人员的按键动作决定的,一般为零点几秒至数秒。
3软件消抖
软件消抖通过程序延时,延时的时间大于按键抖动的时间,延时后在确认按键的状态。
按键消抖的原理与解决方案浅论相关推荐
- 按键消抖及原理(硬件和软件方法详解)
在设计单片机按键输入的时候,进行按键消抖是防止按键输入被CPU误读多次的必要手段. 一.按键抖动 按键接法 抖动时间的长短由按键的机械特性决定,一般为5ms-10ms.这是一个很重要的时间参数,在很多 ...
- Linux驱动中按键消抖原理
为什么要用定时器来做按键消抖? 用到按键就要处理因为机械结构带来的按键抖动问题,也就是按键消抖.前面的实验中都是直接使用了延时函数来实现消抖,因为简单,但是直接用延时函数来实现消抖会浪费 CPU 性能 ...
- verilog之按键消抖的理解
按键在按下时会产生抖动,释放时也会产生抖动,所以在设计键盘扫描程序时必须考虑按键的消抖,我们一般只考虑按下时的抖动,而放弃对释放时抖动的消抖.抖动时间一般为20ms左右.按下的最终结果是低电平. 按键 ...
- 【FPGA】实战之按键消抖
文章目录 一.按键消抖的原理 二.按键消抖的设计思路 三.代码部分 四.仿真验证 五.总结 一.按键消抖的原理 一般开发板上的按键都是机械按键,所以在按下的时候,会产生回弹的时刻,称为机械的弹性开关, ...
- 按键的硬件消抖电路原理
为什么要进行按键消抖 按键消抖通常的按键所用开关为机械弹性开关,当机械触点断开.闭合时,由于机械触点的弹性作用,一个按键开关在闭合时不会马上稳定地接通,在断开时也不会一下子断开.因而在闭合及断开的瞬间 ...
- 可编程逻辑器件之按键消抖实验
一.实验目标 能够熟练的进行可编程逻辑器件开发,能够通过具体工程需求进行需求分析.模块划分.代码编写.功能仿真.综合分析.板级验证,能够独立正确的进行实验操作,培养学生的工程实践研究能力和动手实践能力 ...
- 关于按键消抖以及LED灯控制的一个实例
要求: 1.未按建则所有LED全黑: 2.按K1按钮,则用前8个LED灯二进制显示25: 3.按K2按钮,则12只LED合并显示流水灯效果,3个LED点亮并向右流水. 注:是HR-240B FPGA ...
- 《按键消抖与LED控制》实验的个人思考与总结
2019/01/08,第一个判断是否有按键按下的操作好像有问题,有空在修改! 红色为修改部分: 问题描述: 当三个独立按键的某一个被按下后,相应的LED被点亮:再次按下后,LED熄灭,按键控制LED亮 ...
- 基于verilog按键消抖设计
关于键盘的基础知识,我就以下面的一点资料带过,因为这个实在是再基础不过的东西了.然后我引两篇我自己的博文,都是关于按键消抖的,代码也正是同目录下project里的.这两篇博文都是ednchina的博客 ...
- ARM(I.MX6ULL) EPIT定时器中断实验、定时器按键消抖
参考:Linux之ARM (I.MX6ULL) EPIT定时器详解 作者:一只青木呀 发布时间: 2020-09-20 10:03:37 网址:https://blog.csdn.net/weixin ...
最新文章
- 每日一套codeforce集训1119E[贪心],821C[栈模拟],645D[拓扑排序]
- 高性能WEB开发(6) - web性能测试工具推荐
- 本文把TCP/IP讲绝了!
- 轻松实现SQL Server异地备份
- 【渝粤教育】国家开放大学2018年春季 0149-21T现代汉语 参考试题
- 简单好用的sshfs -- 通过ssh映射远程路径(转)
- Docker容器实现SSH连接
- 阿里巴巴Java开发手册评述
- 25G差分信号对内等长相差太大怎么处理?在哪里绕好一点
- Android面试题4
- 2021正睿noip十连day2
- 解决enter键Typora不能单换行的问题
- ORA-03113和ORA-00204问题处理
- 网络项目实施方案介绍
- 云计算:SaaS、PaaS、IaaS、CaaS并不神秘
- NAND Flash SSD 是如何生产出来的?
- [BZOJ5020] [THUWC 2017]在美妙的数学王国中畅游
- 安卓大作业,Android Studio做的记事本
- Java去掉C2A0等不可见字符
- xv6 - lab0 - 操作系统组织
热门文章
- 扇贝有道180907每日一句
- 2018, CHI CHI2016汇总all CHI
- opencv打开双目
- Atitit ppt转换文本txt 目录 1.1. Atitit word ppt excel convert txt bp 等文档转换纯文本问题最佳实践.docx	1 1.2. 跨语言转换Open
- Atitit 深入了解UUID含义是通用唯一识别码 (Universally Unique Identifier),
- Atitit。Tree文件解析器的原理流程与设计实现 java c# php js
- Atitit.故障排除系列---NoClassDefFoundError NoClassDefFoundError ClassNotFoundException
- Atitit.软件开发的几大规则,法则,与原则。。。attilax总结
- 技术揭秘 | 如何设计 RQData 通讯协议
- Julia: feather格式和hdf5格式比较