本发明涉及键盘去抖,尤其涉及一种键盘去抖方法、装置、设备及介质。
背景技术:
1、由于按键的按下和弹起过程中,电平会处于一个波动的过程,所以在设计普通键盘或游戏键盘时,都需要进行按键的去抖。
2、常用的去抖方式是8-12ms的时间内,进行3次按键查询,如果3次查询到都是相同的按下或弹起,则认为当时是按下状态或弹起状态,即常用的按键去抖的时间一般至少需要8ms,此时按键响应就会滞后8ms。但是,一些键盘的使用场景(如游戏场景等),滞后的时长将无法满足使用需要。
技术实现思路
1、本发明提供了一种键盘去抖方法、装置、设备及介质,以解决现有键盘去抖方法无法满足快速识别按键状态的应用需要的问题。
2、根据本发明的一方面,提供了一种键盘去抖方法,包括:
3、在确定键盘处于按下去抖状态时,根据第一去抖采样时长采集目标次数的按键状态,或者,在确定键盘处于弹起去抖状态时,根据第二去抖采样时长采集目标次数的按键状态;其中,第一去抖采样时长小于按键机械抖动平均时长;
4、根据第一去抖采样时长采集的目标次数的按键状态,或者根据第二去抖采样时长采集的目标次数的按键状态,确定状态转换按键代码;
5、在状态转换按键代码不为空时,上报状态转换按键代码,并同时开启禁止触发动作状态。
6、根据本发明的另一方面,提供了一种键盘去抖装置,包括:
7、按键状态采集模块,用于在确定键盘处于按下去抖状态时,根据第一去抖采样时长采集目标次数的按键状态,或者,在确定键盘处于弹起去抖状态时,根据第二去抖采样时长采集目标次数的按键状态;其中,第一去抖采样时长小于按键机械抖动平均时长;
8、状态转换按键代码确定模块,用于根据第一去抖采样时长采集的目标次数的按键状态,或者根据第二去抖采样时长采集的目标次数的按键状态,确定状态转换按键代码;
9、禁止触发动作状态开启模块,用于在状态转换按键代码不为空时,上报状态转换按键代码,并同时开启禁止触发动作状态。
10、根据本发明的另一方面,提供了一种电子设备,所述电子设备包括:
11、至少一个处理器;以及
12、与所述至少一个处理器通信连接的存储器;其中,
13、所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行本发明任一实施例所述的键盘去抖方法。
14、根据本发明的另一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现本发明任一实施例所述的键盘去抖方法。
15、本发明实施例的技术方案,通过在确定键盘处于按下去抖状态时,根据第一去抖采样时长采集目标次数的按键状态,或者,在确定键盘处于弹起去抖状态时,根据第二去抖采样时长采集目标次数的按键状态,从而根据第一去抖采样时长采集的目标次数的按键状态,或者根据第二去抖采样时长采集的目标次数的按键状态,确定状态转换按键代码,进而在状态转换按键代码不为空时,上报状态转换按键代码,并同时开启禁止触发动作状态。在本方案中,第一去抖采样时长小于按键机械抖动平均时长,通过缩减采样时长,大大缩短识别按下按键的时间,从而降低按键代码上报经历的时长,同理若第二去抖采样时长不大于按键机械抖动平均时长,也能达到缩短弹起按键的识别效率,而通过设置禁止触发动作状态,可以确保剩余的按下抖动或者弹起抖动,能够及时消除,不影响后续弹起去抖或按下去抖,解决现有键盘去抖方法无法满足快速识别按键状态的应用需要的问题,能够迅速识别键盘中动作的按键,并及时对键盘中的按键的操作进行响应。
16、应当理解,本部分所描述的内容并非旨在标识本发明的实施例的关键或重要特征,也不用于限制本发明的范围。本发明的其它特征将通过以下的说明书而变得容易理解。
1.一种键盘去抖方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,根据所述第一去抖采样时长采集的目标次数的按键状态,确定状态转换按键代码,包括:
3.根据权利要求1所述的方法,其特征在于,根据所述第二去抖采样时长采集的目标次数的按键状态,确定状态转换按键代码,包括:
4.根据权利要求1所述的方法,其特征在于,开启禁止触发动作状态,包括:
5.根据权利要求4所述的方法,其特征在于,在所述状态转换按键代码不为空时,上报所述状态转换按键代码,并同时开启禁止触发动作状态之后,还包括:
6.根据权利要求5所述的方法,其特征在于,在按键处于按下去抖状态,且所述禁止触发动作状态结束后,上报与所述状态转换按键代码匹配的按键为弹起状态,包括:
7.根据权利要求1所述的方法,其特征在于,还包括:
8.一种键盘去抖装置,其特征在于,包括:
9.一种电子设备,其特征在于,所述电子设备包括:
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现权利要求1-7中任一项所述的键盘去抖方法。