[发明专利]按键识别方法、装置、设备及存储介质在审
申请号: | 202110419418.6 | 申请日: | 2021-04-19 |
公开(公告)号: | CN113114268A | 公开(公告)日: | 2021-07-13 |
发明(设计)人: | 李定胜 | 申请(专利权)人: | 南京能瑞自动化设备股份有限公司 |
主分类号: | H03M11/04 | 分类号: | H03M11/04 |
代理公司: | 北京品源专利代理有限公司 11332 | 代理人: | 孟金喆 |
地址: | 210046 江苏省南*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 按键 识别 方法 装置 设备 存储 介质 | ||
本发明实施例公开了按键识别方法、装置、设备及存储介质。该方法包括:采用预设频率周期性采集按键的按键状态,其中,按键状态包括按下和弹起,根据所采集的按键状态更新相应按键的状态计数器的计数值,并在计数值处于预设数值范围内时,将相应按键的键值码写入预设键值码队列,其中,键值码中包括键值和按键状态,键值与按键的名称相对应,从预设键值码队列中依次获取键值码,并对所获取的键值码进行分析,得到按键识别结果。本发明实施例通过采用上述技术方案,可以有效实现按键识别中的防抖和防漏,最终实现按键的准确识别,提升按键响应效率以及准确率,改善人机交互效果。
技术领域
本发明实施例涉及微型计算机(单片机)技术领域,尤其涉及按键识别方法、装置、设备及存储介质。
背景技术
随着微型计算机技术的发展,带有按键的智能设备得到了广泛的应用。按键作为人机交互的重要桥梁,按键识别对于智能设备尤为重要。
按键识别是按键按下动作的识别过程,按键按下到弹起视为一次按键有效按下,需要由用户程序进行响应。按键在按下的过程中可能由于受到电磁干扰等原因出现短暂中断的抖动现象,按键识别需要消除这些抖动,这一过程即为防抖。由于“按下”和“识别按下”的时刻不一致时,会导致按下的动作没有被成功识别到,出现遗漏现象,按键识别需要防止出现遗漏现象,这一过程即为防漏。按键识别的关键在于防抖和防漏,防抖是防止多了一些无效按键值,防漏是防止少了一些有效按键值。
目前,用户程序获得按键值的方式分为阻塞和非阻塞,阻塞和非阻塞指的是用户程序在等待返回按键结果(也即按键识别结果)时的状态。阻塞时,在等待按键结果返回前,当前程序会被挂起(暂停运行),并在得到按键结果之后返回(恢复运行);非阻塞时,用户程序定期查看按键结果,无需暂停等待,如果不能立刻得到按键结果,程序也不会暂停运行。阻塞方式会导致按键响应慢,影响设备运行效率,然而,现有技术中若采用非阻塞方式,则无法做到很好地防抖或防漏,因此,现有的按键识别方案并不完善,需要改进。
发明内容
本发明实施例提供了按键识别方法、装置、设备及存储介质,可以优化现有的按键识别方案。
第一方面,本发明实施例提供了一种按键识别方法,包括:
采用预设频率周期性采集按键的按键状态,其中,所述按键状态包括按下和弹起;
根据所采集的按键状态更新相应按键的状态计数器的计数值,并在所述计数值处于预设数值范围内时,将相应按键的键值码写入预设键值码队列,其中,所述键值码中包括键值和按键状态,所述键值与按键的名称相对应;
从所述预设键值码队列中依次获取键值码,并对所获取的键值码进行分析,得到按键识别结果。
第二方面,本发明实施例提供了一种按键识别装置,包括:
按键状态采集模块,用于采用预设频率周期性采集按键的按键状态,其中,所述按键状态包括按下和弹起;
键值码写入模块,用于根据所采集的按键状态更新相应按键的状态计数器的计数值,并在所述计数值处于预设数值范围内时,将相应按键的键值码写入预设键值码队列,其中,所述键值码中包括键值和按键状态,所述键值与按键的名称相对应;
按键分析模块,用于从所述预设键值码队列中依次获取键值码,并对所获取的键值码进行分析,得到按键识别结果。
第三方面,本发明实施例提供了一种智能设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如本发明实施例提供的按键识别方法。
第四方面,本发明实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本发明实施例提供的按键识别方法。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京能瑞自动化设备股份有限公司,未经南京能瑞自动化设备股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110419418.6/2.html,转载请声明来源钻瓜专利网。