CN103546165A - 按键采样方法、系统和相关设备 - Google Patents
按键采样方法、系统和相关设备 Download PDFInfo
- Publication number
- CN103546165A CN103546165A CN201310482932.XA CN201310482932A CN103546165A CN 103546165 A CN103546165 A CN 103546165A CN 201310482932 A CN201310482932 A CN 201310482932A CN 103546165 A CN103546165 A CN 103546165A
- Authority
- CN
- China
- Prior art keywords
- key
- signal sampling
- value
- sampling value
- press status
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Input From Keyboards Or The Like (AREA)
Abstract
本发明实施例涉及电子技术领域,公开了一种按键采样方法、系统和相关设备。其中,该方法包括:获取按键电路的信号采样值;判断按键状态,如果按键状态为空状态,判断所述信号采样值是否小于第一预定值,如果是,将按键状态设置为按下去抖状态,并执行获取按键电路的信号采样值的步骤;如果所述按键状态为按下去抖状态,且所述信号采样值满足预定的第一判断条件,则将第一按键去抖计数值加1;判断当前的第一按键去抖计数值是否大于第三预定值,如果是,将按键状态设置为按下状态,并根据预先设置的按键电路的信号采样值与短按操作枚举参数的对应关系,查找出与所述信号采样值对应的短按操作并执行。实施本发明实施例,可以提高按键采样的准确性。
Description
技术领域
本发明涉及电子技术领域,具体涉及一种按键采样方法、系统和相关设备。
背景技术
现在车载一体机已经是汽车必不可少的一部分,由于车内环境及电路设计的限制,车载电子产品经常会受到一些干扰影响导致工作出现错误,车载一体机按键采样就是其中的一种情况,由于干扰影响,车载一体机按键采样经常会出现偏离,例如用户明明按的是A按键,结果却判断成了B按键,甚至对用户是否按键判断失误,给用户的操作带来不便。
发明内容
本发明实施例所要解决的技术问题是提供一种按键采样方法、系统和相关设备,用于提高按键采样的准确性。
本发明实施例提供一种按键采样方法,所述方法包括:
获取按键电路的信号采样值;
判断按键状态,如果按键状态为空状态,判断所述信号采样值是否小于第一预定值,如果是,将按键状态设置为按下去抖状态,并执行所述获取按键电路的信号采样值的步骤;
判断按键状态,如果所述按键状态为按下去抖状态,且所述信号采样值满足预定的第一判断条件,则将第一按键去抖计数值加1;所述第一判断条件为所述信号采样值小于所述第一预定值,且与上一次的信号采样值的差距小于第二预定值;
判断当前的第一按键去抖计数值是否大于第三预定值,如果是将按键状态设置为按下状态,并根据预先设置的按键电路的信号采样值与短按操作枚举参数的对应关系,查找出与所述信号采样值对应的短按操作并执行,否则执行所述获取按键电路的信号采样值的步骤。
相应的,本发明实施例还提供一种按键采样系统,所述系统执行如前所述的按键采样方法的全部或部分步骤。
相应的,本发明实施例还提供一种按键输入设备,所述按键输入设备包括如前所述的按键采样系统。
相应的,本发明实施例还提供一种终端设备,所述终端设备包括如前所述的按键输入设备。
本发明实施例提供的按键采样方法、系统和相关设备,通过在各种按键状态下对按键电路的信号采样值的多次采样和有效性的判断,能够有效地去掉电子干扰引起的按键操作错误,可以更好地保证用户的输入被正确识别,便于用户能够准确的完成操作。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例一提供的按键采样方法的流程示意图;
图2A是本发明实施例二提供的按键采样方法的流程第一示意图;
图2B是本发明实施例二提供的按键采样方法的流程第二示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例中提供了一种按键采样方法、系统和相关设备,用于提高按键采样的精确度。以下分别进行详细说明。
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
实施例一:
参考图1,本发明的一些实施例提供的一种按键采样方法,如图1所示,该按键采样方法可包括:
S1、采集按键电路的信号采样值;
S2、判断按键状态,如果按键状态为空状态,判断所述信号采样值是否小于第一预定值,如果是,将按键状态设置为按下去抖状态,并执行步骤S1,否则执行步骤S3;
第一预定值可以根据按键电路可能的最大值进行设置,如将第一预定值设置的比可能的最大值略高,其具体数值可以根据按键电路的参数进行设置,在此不作具体的限制;
S3、判断按键状态,如果所述按键状态为按下去抖状态,且所述信号采样值满足预定的第一判断条件,则将第一按键去抖计数值加1;所述第一判断条件为所述信号采样值小于所述第一预定值,且与上一次的信号采样值的差距小于第二预定值;
第二预定值可以根据采样所需的精度进行设置,例如可将第二预定值设置为按键电路可能的最大值的1/30;
S4、判断当前的第一按键去抖计数值是否大于第三预定值,如果是,将按键状态设置为按下状态,并根据预先设置的按键电路的信号采样值与短按操作枚举参数的对应关系,查找出与所述信号采样值对应的短按操作并执行,否则执行步骤S1;
第三预定值也可以根据采样所需的精度进行设置,例如将第三预定值设置为3。
本实施例提供的按键采样方法,通过在空状态下判断按键电路的信号采样值是否小于第一预定值,可以判断是否有按键操作,通过在按下去抖状态下,比较先后采集的信号采样值是否接近,并在多次比较接近后,才确认按键被按下,可以很好的去除信号干扰的影响。
实施例二:
参考图2A及图2B,本发明的一些实施例提供的一种按键采样方法,如图2及图2B所示,该按键采样方法可包括:
100、采样开始;
本实施例中,在采样开始时,按键状态初始化可为空状态,第一按键去抖计数值、第二按键去抖计数值均可初始化为0;
101、获取按键电路的信号采样值;
信号采样值可以是ADC(Analog To Digital Converter,模数转换器)值或电压值、或电流值,具体的采样过程属于现有技术,在此不再赘述;
102、判断按键状态是否为空状态,如果是,执行步骤103,否则执行步骤105;
103、判断信号采样值是否小于第一预定值,如果是,执行步骤104,否则执行步骤101;
本实施例中,第一预定值可以根据按键电路可能的最大采样值进行设置,例如,在ADC采样中,一般8位采样是255,10位采样最大值是1023,为了去掉一些不必要的电压抖动,可在最大值的基础上去掉10%作为判定的最大值,其具体数值可以根据按键电路的参数进行合适的设置,在此不作具体的限制;
104、将按键状态设置为按下去抖状态;执行步骤101;
105、判断按键状态是否为按下去抖状态,如果是,执行步骤106,否则执行步骤113;
106、判断信号采样值是否小于第一预定值,如果是,执行步骤108,否则执行步骤107;
107、将按键状态设置为空状态,执行步骤101;
108、判断信号采样值与上一次的信号采样值之间的差距是否小于第二预定值,如果是,执行步骤110,否则执行步骤109;
即是,判断本次的信号采样值是否与上一次的信号采样值接近,本实施例中,第二预定值可以根据采样所需的精度进行设置,例如可将第二预定值设置为按键电路可能的最大值的1/30,即当两次采样值的差值小于最大值的1/30时,认为这两次采样值接近;
109、将第一按键去抖计数值清0;执行步骤101;
如果本次信号采样值与上一次差距较大,则很可能是干扰或抖动导致的,不将其记为有效采样值,可排除干扰或抖动的影响;
110、将第一按键去抖计数值加1;
如果本次信号采样值与上一次比较接近,则可认为采样比较稳定,将其记为有效采样值,第一按键去抖计数值加1;
111、判断第一按键去抖计数值是否大于第三预定值,如果是,执行步骤112,否则执行步骤101;
本实施例中,第三预定值也可以根据采样所需的精度进行设置,例如将第三预定值设置为3;
112、将按键状态设置为按下状态;并根据预先设置的按键电路的信号采样值与短按操作枚举参数的对应关系,查找出与所述信号采样值对应的短按操作并执行;执行步骤101;
本实施例中,只有当第一按键去抖计数值达到预定次数,即连续采集到多个稳定的信号采样值时,才认为按键被按下,可排除干扰或抖动的影响;
113、判断按键状态是否为按下状态,如果是,执行步骤114,否则执行步骤119;
114、判断信号采样值是否小于第一预定值,如果是,执行步骤116,否则执行步骤115;
115、将按键状态设置为抬起去抖状态;执行步骤101;
116、对按键时长进行累加计时;
117、判断按键时长是否大于第四预定值,如果是,执行步骤118,否则执行步骤101;
本实施例中,第四预定值也可以根据实际情况进行设置,例如将第四预定值设置为1秒;
118、根据预先设置的按键电路的信号采样值与长按操作枚举参数的对应关系,查找出与所述信号采样值对应的长按操作并执行;执行步骤101;
本实施例中,在按键时长大于预定时长时,可执行相应的长按操作;
119、判断按键状态是否为抬起去抖状态,如果是,执行步骤120,否则执行步骤125;
120、判断信号采样值是否小于第一预定值,如果是,执行步骤121,否则执行步骤122;
121、将按键状态设置为按下状态;执行步骤101;
122、将第二按键去抖计数值加1;
123、判断第二按键去抖计数值是否大于第五预定值,如果是,执行步骤124,否则执行步骤101;
124、将按键状态设置为释放状态;执行步骤101;
125;判断按键状态是否为释放状态,如果是执行步骤126,否则执行步骤127;
126、根据预先设置的按键电路的信号采样值与释放操作枚举参数的对应关系,查找出与所述信号采样值对应的释放操作并执行;
127、将按键状态设置为空状态;执行步骤101。
进一步地,在步骤100之前,该方法还可包括:
分别设置按键电路的信号采样值与短按操作枚举参数、长按操作枚举参数以及释放操作枚举参数的对应关系。
具体地,上述对应关系可以存储在一按键表中,该按键表可以以结构体数组方式存储。
本实施例中提供的按键采样方法,通过在各种按键状态下对按键电路的信号采样值的多次采样和有效性的判断,能够有效地去掉电子干扰引起的按键操作错误,可以更好地保证用户的输入被正确识别,便于用户能够准确的完成操作。
实施例三:
本发明还提供一种按键采样系统,该系统可用于执行如实施例一或二所描述的按键采样方法的全部或部分步骤,具体内容可参考实施例一或二的描述,在此不予赘述。
实施例四:
本发明还提供一种按键输入设备,该按键输入设备包括如实施例所述的按键采样系统,具体内容可参考实施例一至三的描述,在此不予赘述。
具体地,该按键输入设备可以是如键盘、操作面板等设备,或者其它类型的按键输入设备,在此不作具体的限制。
实施例五:
本发明还提供一种终端设备,该终端设备包括如实施例四所述的按键输入设备,具体内容可参考实施例一至四的描述,在此不予赘述。
具体地,该终端设备可以是车载一体机,或者其它类型的终端设备,例如电脑、手机等设备。
在车载一体机中使用本发明实施例提供的按键输入设备,可以有效地去掉车内电子干扰引起的按键操作错误,可以更好地保证用户的用车安全,便于用户能够准确的完成操作。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(Read-OnlyMemory,ROM)、随机存取器(Random Access Memory,RAM)、磁盘或光盘等。
以上对本发明实施例所提供的按键采样方法、系统和相关设备进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (10)
1.一种按键采样方法,其特征在于,所述方法包括:
获取按键电路的信号采样值;
判断按键状态,如果按键状态为空状态,判断所述信号采样值是否小于第一预定值,如果是,将按键状态设置为按下去抖状态,并执行所述获取按键电路的信号采样值的步骤;
判断按键状态,如果所述按键状态为按下去抖状态,且所述信号采样值满足预定的第一判断条件,则将第一按键去抖计数值加1;所述第一判断条件为所述信号采样值小于所述第一预定值,且与上一次的信号采样值的差距小于第二预定值;
判断当前的第一按键去抖计数值是否大于第三预定值,如果是,将按键状态设置为按下状态,并根据预先设置的按键电路的信号采样值与短按操作枚举参数的对应关系,查找出与所述信号采样值对应的短按操作并执行,否则执行所述获取按键电路的信号采样值的步骤。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
判断按键状态,如果所述按键状态为按下状态,且所述信号采样值小于所述第一预定值,则对按键时长进行累加计时;
判断所述按键时长是否大于第四预定值,如果是,判断为长按操作,根据预先设置的按键电路的信号采样值与长按操作枚举参数的对应关系,查找出与所述信号采样值对应的长按操作并执行。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
判断按键状态,如果所述按键状态为按下状态,且所述信号采样值大于或等于所述第一预定值,设置所述按键状态为抬起去抖状态,并执行所述获取按键电路的信号采样值的步骤。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
判断按键状态,如果所述按键状态为抬起去抖状态,且所述信号采样值小于所述第一预定值,将所述按键状态设置为按下状态。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
判断按键状态,如果所述按键状态为抬起去抖状态,且所述信号采样值大于或等于所述第一预定值,将第二按键去抖计数值加1;
判断当前的第二按键去抖计数值是否大于第四预定值,如果是将按键状态设置为释放状态。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
判断按键状态,如果所述按键状态为释放状态,根据预先设置的按键电路的信号采样值与释放操作枚举参数的对应关系,查找出与所述信号采样值对应的释放操作并执行。
7.根据权利要求1-6任一项所述的方法,其特征在于,在所述采集按键电路的信号采样值的步骤之前,所述方法还包括:
分别设置按键电路的信号采样值与短按操作枚举参数、长按操作枚举参数以及释放操作枚举参数的对应关系。
8.一种按键采样系统,其特征在于,所述系统执行如权利要求1-7任一项所述的按键采样方法。
9.一种按键输入设备,其特征在于,所述按键输入设备包括如权利要求8所述的按键采样系统。
10.一种终端设备,其特征在于,所述终端设备包括如权利要求9所述的按键输入设备。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310482932.XA CN103546165B (zh) | 2013-10-15 | 2013-10-15 | 按键采样方法、系统和相关设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310482932.XA CN103546165B (zh) | 2013-10-15 | 2013-10-15 | 按键采样方法、系统和相关设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103546165A true CN103546165A (zh) | 2014-01-29 |
CN103546165B CN103546165B (zh) | 2016-05-25 |
Family
ID=49969281
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310482932.XA Active CN103546165B (zh) | 2013-10-15 | 2013-10-15 | 按键采样方法、系统和相关设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103546165B (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104092454A (zh) * | 2014-06-23 | 2014-10-08 | 西安电子工程研究所 | 一种基于逻辑门电路的按键去抖方法 |
CN105302331A (zh) * | 2014-06-30 | 2016-02-03 | 惠州市德赛西威汽车电子股份有限公司 | 一种基于总线的按键采集方法 |
CN106125945A (zh) * | 2016-06-20 | 2016-11-16 | 贵州航天天马机电科技有限公司 | 一种用于车载机箱的通用键盘 |
CN107231156A (zh) * | 2016-03-23 | 2017-10-03 | 浙江正泰电器股份有限公司 | 按键扫描方法和低压电器的控制器 |
CN107231157A (zh) * | 2016-03-23 | 2017-10-03 | 浙江正泰电器股份有限公司 | 按键扫描方法和低压电器的控制器 |
CN114356140A (zh) * | 2021-12-31 | 2022-04-15 | 上海永亚智能科技有限公司 | 一种红外感应悬浮按键的按键动作识别方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5621402A (en) * | 1993-07-21 | 1997-04-15 | Advanced Micro Devices, Inc. | Keypad scanner |
US5754601A (en) * | 1996-05-10 | 1998-05-19 | Rockwell International Corporation | Jitter circuit for reduced switching noise |
CN1557050A (zh) * | 2001-09-19 | 2004-12-22 | ��÷ɭ��˾ | 用于开关矩阵和开关感应的电路和方法 |
CN1953334A (zh) * | 2006-11-17 | 2007-04-25 | 北京中星微电子有限公司 | 一种扫描键盘的方法和系统 |
CN101682253A (zh) * | 2007-05-29 | 2010-03-24 | 国立大学法人长崎大学 | 预测控制系统 |
CN202059394U (zh) * | 2011-05-09 | 2011-11-30 | 广州励丰声光科技有限公司 | 基于可编程器件的矩阵键盘扫描装置 |
-
2013
- 2013-10-15 CN CN201310482932.XA patent/CN103546165B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5621402A (en) * | 1993-07-21 | 1997-04-15 | Advanced Micro Devices, Inc. | Keypad scanner |
US5754601A (en) * | 1996-05-10 | 1998-05-19 | Rockwell International Corporation | Jitter circuit for reduced switching noise |
CN1557050A (zh) * | 2001-09-19 | 2004-12-22 | ��÷ɭ��˾ | 用于开关矩阵和开关感应的电路和方法 |
CN1953334A (zh) * | 2006-11-17 | 2007-04-25 | 北京中星微电子有限公司 | 一种扫描键盘的方法和系统 |
CN101682253A (zh) * | 2007-05-29 | 2010-03-24 | 国立大学法人长崎大学 | 预测控制系统 |
CN202059394U (zh) * | 2011-05-09 | 2011-11-30 | 广州励丰声光科技有限公司 | 基于可编程器件的矩阵键盘扫描装置 |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104092454A (zh) * | 2014-06-23 | 2014-10-08 | 西安电子工程研究所 | 一种基于逻辑门电路的按键去抖方法 |
CN105302331A (zh) * | 2014-06-30 | 2016-02-03 | 惠州市德赛西威汽车电子股份有限公司 | 一种基于总线的按键采集方法 |
CN107231156A (zh) * | 2016-03-23 | 2017-10-03 | 浙江正泰电器股份有限公司 | 按键扫描方法和低压电器的控制器 |
CN107231157A (zh) * | 2016-03-23 | 2017-10-03 | 浙江正泰电器股份有限公司 | 按键扫描方法和低压电器的控制器 |
CN106125945A (zh) * | 2016-06-20 | 2016-11-16 | 贵州航天天马机电科技有限公司 | 一种用于车载机箱的通用键盘 |
CN114356140A (zh) * | 2021-12-31 | 2022-04-15 | 上海永亚智能科技有限公司 | 一种红外感应悬浮按键的按键动作识别方法 |
CN114356140B (zh) * | 2021-12-31 | 2024-02-13 | 上海永亚智能科技有限公司 | 一种红外感应悬浮按键的按键动作识别方法 |
Also Published As
Publication number | Publication date |
---|---|
CN103546165B (zh) | 2016-05-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103546165A (zh) | 按键采样方法、系统和相关设备 | |
US10908920B2 (en) | Method for preloading application, computer readable storage medium, and terminal device | |
EP2924963A1 (en) | Method for automatic cleaning background application of electronic device, electronic device and storage medium | |
CN104077515A (zh) | 终端装置和终端控制方法 | |
CN102929514A (zh) | 一种移动终端的应用程序图标整理方法 | |
CN104184875A (zh) | 终端调试端口的开启方法、装置与终端 | |
EP3432128B1 (en) | Button detection method and device | |
CN102056051A (zh) | 电子装置、电子系统及其处理来自音源配件的信号的方法 | |
CN103365389A (zh) | 功耗控制方法及其装置 | |
CN104598076A (zh) | 触摸信息屏蔽方法及装置 | |
CN105302619A (zh) | 一种信息处理方法及装置、电子设备 | |
CN103871409A (zh) | 一种语音识别的方法、信息处理的方法及电子设备 | |
CN105607894A (zh) | 终端应用控制方法、装置及终端 | |
CN104898936A (zh) | 一种翻页方法和移动设备 | |
CN106126337A (zh) | 一种内存管理方法及终端设备 | |
CN107608778A (zh) | 应用程序管控方法、装置、存储介质及电子设备 | |
CN103246398A (zh) | 一种触控操作的实现方法 | |
CN103714028B (zh) | 信息处理的方法及电子设备 | |
CN107864442B (zh) | 基于智能语音设备的测试方法、智能语音设备及存储介质 | |
CN103336241B (zh) | 一种测试嵌入式PCBA上Modem模块的方法及其系统 | |
CN105511780A (zh) | 测试方法及装置 | |
CN104933346A (zh) | 一种基于Logo的解锁方法及装置 | |
CN105989111A (zh) | 应用程序推送方法和应用程序推送系统 | |
CN108595229A (zh) | 导航应用启动方法及相关装置 | |
EP2924958A1 (en) | Portable electronic device, method for controlling same, and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |