[发明专利]一种消除按键抖动的处理方法和电路在审
申请号: | 201911243215.5 | 申请日: | 2019-12-06 |
公开(公告)号: | CN110957997A | 公开(公告)日: | 2020-04-03 |
发明(设计)人: | 任广阔 | 申请(专利权)人: | 江苏黑马高科股份有限公司 |
主分类号: | H03K5/1252 | 分类号: | H03K5/1252 |
代理公司: | 北京轻创知识产权代理有限公司 11212 | 代理人: | 黄启兵 |
地址: | 210000 江苏省南京*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 消除 按键 抖动 处理 方法 电路 | ||
本发明公开了一种消除按键抖动的处理方法,包括定时器和寄存器一、寄存器二,还包括以下步骤:步骤一:设定定时器计时最大值;步骤二:定时器清零后开始计时,同时系统周期性对比寄存器一和寄存器二内的数值,判断按键状态,若定时器计时期间未有按键触发信号,则执行步骤三;若定时器计时期间有按键触发信号,则执行步骤四;步骤三:当定时器计时到达最大值时,将寄存器一数值存入寄存器二,并重新采集按键值存入寄存器一,随后执行步骤二;步骤四:定时器计时中断,执行步骤二。采用上述方法无需增加硬件成本,即可以较小的延时来避开在按键抖动期采集按键值,在保证采集按键值的准确性的基础上提高采集效率。
技术领域
本发明涉及一种按键信息的处理方法,特别涉及一种消除按键抖动的处理方法和电路。
背景技术
在数字电路设计中,经常遇到抖动信号的处理问题。抖动信号可以分为两种:一种是时间很短的干扰信号,如高频毛刺;另一种是时间很长的干扰信号,如按键抖动。通过按键实现控制功能是很常见的,但由于按键是机械触点,当机械触点断开、闭合时会有抖动,为使每一次按键只做一次响应,就必须考虑去除抖动,包括去除按下和抬起瞬间的抖动。
去抖动的方法有很多种,如使用R-S触发器的硬件方法、运用不同算法的各种软件方法等。对于按键较多的矩阵式按键,会用硬件方法,但采用硬件方法会增加成本和体积;而常见软件方法多采用加固定延时的方式来去除抖动,这种方法以无谓地耗费机时来实现去抖动,效率较低。
发明内容
本发明的目的是提供一种在不增加硬件成本的基础上,能自动调整延时从而实现快速获取按键状态的按键抖动处理方法和电路。
本发明一种按键抖动处理方法采用的如下技术方案:
一种按键抖动处理方法,包括定时器和寄存器一、寄存器二,还包括以下步骤:
步骤一:设定定时器计时最大值;
步骤二:定时器清零后开始计时,同时系统周期性对比寄存器一和寄存器二内的数值,判断按键是被按下或抬起状态,若定时器计时期间未有按键触发信号(按下或抬起信号),则执行步骤三;若定时器计时期间有按键触发信号,则执行步骤四;
步骤三:当定时器计时到达最大值时,将寄存器一数值存入寄存器二,并重新采集按键值存入寄存器一,随后执行步骤二;
步骤四:定时器计时中断,执行步骤二。
上述方法有益效果在于:寄存器一内存有当前采集的按键值,寄存器二内存有上一次采集的按键值,通过对比寄存器一和寄存器二内的数值来判断当前键值是否有跳变,从而判断按键是否被按下或抬起,其中,系统工作周期性地扫描判断是否有按下或抬起按键触发信号,定时器计时期间若有按键触发信号则定时器计时清零并重新计时,通过上述方法可以以定时器最大值为基础采样周期,自适应增加采集按键值的延时,从而可以以较小的延时来避开在按键抖动期采集按键值,在保证采集按键值的准确性的基础上提高效率。
进一步地,所述步骤一中,定时器计时最大值设为40ms。按键按下或抬起时存在抖动,根据大数据显示正常人的按键速度小于12Hz(每秒小于12次),即按键时间大于80ms,按占空比50%计算,按下的时间大于40ms,因此判定按下的时间小于40ms的为抖动信号,按下的时间大于40ms的是按键信号,因此,定时器计时最大值设为40ms为保证采样准确性和效率的较优选择。
进一步地,所述步骤二开始前,采集初始按键值并将该值存入寄存器一和寄存器二。初始采集按键值,避免系统开始比对时,寄存器一和寄存器二为默认空值。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于江苏黑马高科股份有限公司,未经江苏黑马高科股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911243215.5/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种用于圆棒料的加热扭转方法
- 下一篇:一种链条