确定按键扫描键值的方法、系统、遥控器、介质及应用技术方案

技术编号:28218897 阅读:20 留言:0更新日期:2021-04-28 09:37
本发明专利技术属于按键识别技术领域,公开了一种确定按键扫描键值的方法、系统、遥控器、介质及应用,设定矩阵键盘n行*m列,行是按键输出口,列是按键检测口,检测口设置内部上拉;逐行把对应输出口设置为低电平,从第一列开始判断识别到的电平;设定每一列的值为1

【技术实现步骤摘要】
确定按键扫描键值的方法、系统、遥控器、介质及应用


[0001]本专利技术属于按键识别
,尤其涉及一种确定按键扫描键值的方法、系统、遥控器、介质及应用。

技术介绍

[0002]目前,现在采用的大多为矩阵按键扫描的方式识别按键,扫描到某行某列时,若识别到低电平,则认为对应的按键被按下。但是现有按键识别方法通用性较低,增加设计、生产及管理的成本,且识别结果不准确。因此,亟需一种新的确定按键扫描键值的方法。
[0003]通过上述分析,现有技术存在的问题及缺陷为:现有按键识别方法通用性较低,增加设计、生产及管理的成本,且识别结果不准确。

技术实现思路

[0004]针对现有技术存在的问题,本专利技术提供了一种确定按键扫描键值的方法、系统、遥控器、介质及应用。
[0005]本专利技术是这样实现的,一种确定按键扫描键值的方法,所述确定按键扫描键值的方法包括:
[0006]先给每一列设定对应的数值,在行扫描开始时,设定一个初始值,开始列扫描,识别到某列为低电平时,即此键值=行初始值+列对应的数值;同时可识别双按键、三按键等组合按键的键值。
[0007]进一步,所述确定按键扫描键值的方法包括以下步骤:
[0008]步骤一,设定矩阵键盘n行*m列,行是按键输出口,列是按键检测口;
[0009]步骤二,逐行把对应的输出口设置为低电平,从第一列开始判断识别到的电平;
[0010]步骤三,设定每一列的值为1

m;扫第y行时,设定初值(y

1)*m;
[0011]步骤四,当x列识别到低电平时,说明按键被按下,赋此按键值为x+(y

1)*m;
[0012]步骤五,把第一次识别到低电平的键值赋给keyid1,第二给keyid2......;
[0013]步骤六,去抖滤波操作:重复扫描N次,均检测到同样的键值,才识别到按键真正被按下。
[0014]进一步,步骤一中,所述检测口设置内部上拉。
[0015]进一步,所述确定按键扫描键值的方法,还包括:
[0016]矩阵按键的为n*m(n行m列),假设行是按键输出口KO,列是按键输入口KI,KI口设置内部上拉电阻,当KI口识别到低电平时,则认为此按键被按下;
[0017](1)从KI1至KIm附初值:1、2、
……
m、
[0018](2)把第1行的KO1设为输出0,其他KO口为输入口,设定行的初始值p1=0;
[0019](3)从KI1至KIm逐一识别电平,当x列识别到低电平时,认为此按键被按下,识别到的键值p1+x;
[0020](4)把第2行的KO2设为输出0,其他KO口为输入口,设定行的初始值p2=m;
[0021](5)从KI1至KIm逐一识别电平,当x列识别到低电平时,认为此按键被按下,识别到的键值p2+x;
[0022](6)逐行把对应的KO设为输出0,其他KO口为输入口,第y行的初始值py=(y

1)*m,重复步骤(3),当x列识别到低电平时,认为此按键被按下,识别到的键值py+x;
[0023](7)步骤(1)~步骤(6)完成一次按键扫描,从第一个低电平开始,把键值逐渐赋值给keyid1、keyid2
……

[0024](8)做去抖滤波操作,重复扫描N次,若每次扫描均识别到同样的键值,即认为对应的按键被按下;
[0025](9)把每个单独按键分别定义键值keyid为1、2
……
、n*m,把需要的组合按键键值keyid定义为大于n*m的值,判断到定义的按键被按下时,则可确定按下的按键键值;即单按键键值keyid=keyid1,双按键的键值keyid则需判断keyid1和keyid2的值,比如设定组合按键键值为n*m+1,判断到(keyid1==1)&&(keyid2==5)时,认为keyid=n*m+1;三按键则判断keyid1、keyid2、keyid3的值
……

[0026](10)根据电路板的按键排布,即可认为对应的按键被按下,进而执行相应逻辑操作。
[0027]本专利技术的另一目的在于提供一种确定按键扫描键值的系统,包括:
[0028]检测口单元,用于设定矩阵键盘n行*m列,行是按键输出口,列是按键检测口;
[0029]电平识别单元,用于逐行把对应的输出口设置为低电平,从第一列开始判断识别到的电平;
[0030]初值设定单元,用于设定每一列的值为1

m;扫第y行时,设定初值(y

1)*m;
[0031]按键赋值单元,用于当x列识别到低电平时,按键被按下,赋此按键值为x+(y

1)*m;还用于把第一次识别到低电平的键值赋给keyid1,第二给keyid2......;
[0032]去抖滤波操作单元,用于重复扫描N次,均检测到同样的键值,才识别到按键真正被按下。
[0033]本专利技术的另一目的在于提供一种遥控器,所述遥控器搭载确定按键扫描键值的系统,用于实施所述确定按键扫描键值的方法。
[0034]本专利技术的另一目的在于提供一种空调器,所述空调器与所述的遥控器无线通信,用于执行所述确定按键扫描键值的方法。
[0035]本专利技术的另一目的在于提供一种计算机设备,所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如下步骤:
[0036]给每一列设定对应的数值,进行行扫描开始时,设定初始值,开始列扫描,识别到某列为低电平时,键值=行初始值+列对应的数值;同时识别双按键、三按键组合按键的键值。
[0037]本专利技术的另一目的在于提供一种计算机可读存储介质,储存有指令,当所述指令在计算机上运行时,使得计算机执行所述的确定按键扫描键值的方法。
[0038]本专利技术的另一目的在于提供一种所述确定按键扫描键值的方法在智能家电遥控器上的应用。
[0039]结合上述的所有技术方案,本专利技术所具备的优点及积极效果为:本专利技术提供的确
定按键扫描键值的方法,先给每一列设定对应的数值,在行扫描开始时,设定一个初始值,开始列扫描,识别到某列为低电平时,即此键值=行初始值+列对应的数值,方便键值的处理;同时可识别双按键、三按键等组合按键的键值。本专利技术利用巧妙的确定矩阵键盘具体按键键值的算法,可提高程序的可读性、简洁性和健壮性。
附图说明
[0040]为了更清楚地说明本专利技术实施例的技术方案,下面将对本专利技术实施例中所需要使用的附图做简单的介绍,显而易见地,下面所描述的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下还可以根据这些附图获得其他的附图。
[0041]图1是本专利技术实施例提供的确定按键扫描键值的方法流本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种确定按键扫描键值的方法,其特征在于,所述确定按键扫描键值的方法包括:给每一列赋予对应的数值后,进行行扫描开始时,并设定初始值,开始列扫描;识别到某列为低电平时,键值=行初始值+列对应的数值;同时识别双按键、三按键组合按键的键值。2.如权利要求1所述的确定按键扫描键值的方法,其特征在于,所述确定按键扫描键值的方法包括:步骤一,设定矩阵键盘n行*m列,行是按键输出口,列是按键检测口;步骤二,逐行把对应的输出口设置为低电平,从第一列开始判断识别到的电平;步骤三,设定每一列的值为1

m;扫第y行时,设定初值(y

1)*m;步骤四,当x列识别到低电平时,说明按键被按下,赋此按键值为x+(y

1)*m;步骤五,把第一次识别到低电平的键值赋给keyid1,第二给keyid2......;步骤六,去抖滤波操作:重复扫描N次,均检测到同样的键值,才识别到按键真正被按下。3.如权利要求2所述的确定按键扫描键值的方法,其特征在于,步骤一中,所述检测口设置内部上拉。4.如权利要求1所述的确定按键扫描键值的方法,其特征在于,所述确定按键扫描键值的方法,还包括:矩阵按键的为n*m(n行m列),假设行是按键输出口KO,列是按键输入口KI,KI口设置内部上拉电阻,当KI口识别到低电平时,则认为此按键被按下;(1)从KI1至KIm附初值:1、2、
……
m、(2)把第1行的KO1设为输出0,其他KO口为输入口,设定行的初始值p1=0;(3)从KI1至KIm逐一识别电平,当x列识别到低电平时,认为此按键被按下,识别到的键值p1+x;(4)把第2行的KO2设为输出0,其他KO口为输入口,设定行的初始值p2=m;(5)从KI1至KIm逐一识别电平,当x列识别到低电平时,认为此按键被按下,识别到的键值p2+x;(6)逐行把对应的KO设为输出0,其他KO口为输入口,第y行的初始值py=(y

1)*m,重复步骤(3),当x列识别到低电平时,认为此按键被按下,识别到的键值py+x;(7)步骤(1)~步骤(6)完成一次按键扫描,从第一个低电平开始,把键值逐渐赋值给keyid1、keyid2
……
;(8)做去抖滤波操作,重复扫描N次,若每次扫描均识别到同样的键值,即认为对应的按键被按下;(9)把每个单独...

【专利技术属性】
技术研发人员:梁炯辉李秀菲周婷伍衍亮谢容
申请(专利权)人:珠海格力电器股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1
相关领域技术
  • 暂无相关专利