电容式触摸屏按键检测方法.pdf

上传人:1*** 文档编号:1276422 上传时间:2018-04-12 格式:PDF 页数:16 大小:705.92KB
返回 下载 相关 举报
摘要
申请专利号:

CN201010134400.3

申请日:

2010.03.29

公开号:

CN101799734A

公开日:

2010.08.11

当前法律状态:

授权

有效性:

有权

法律详情:

专利权的转移IPC(主分类):G06F 3/044登记生效日:20151103变更事项:专利权人变更前权利人:深圳龙多电子科技有限公司变更后权利人:东莞龙迈智能电子科技有限公司变更事项:地址变更前权利人:518000 广东省深圳市宝安区西乡镇鹤洲新工业区六栋1-4楼变更后权利人:523710 广东省东莞市塘厦镇沙湖一路1号A幢6-7楼|||授权|||实质审查的生效IPC(主分类):G06F 3/044申请日:20100329|||公开

IPC分类号:

G06F3/044

主分类号:

G06F3/044

申请人:

深圳龙多电子科技有限公司

发明人:

莫经海; 贺白云; 夏运明; 吴群生; 吴勇坤

地址:

518000 广东省深圳市宝安区西乡镇鹤洲新工业区六栋1-4楼

优先权:

专利代理机构:

北京英特普罗知识产权代理有限公司 11015

代理人:

孙丽芳

PDF下载: PDF下载
内容摘要

本发明涉及一种电容式触摸屏按键检测方法,属于利用悬浮控制技术进行的检测方法,包括以下步骤:步骤1至8顺次为,系统上电,硬件初始化;对各按键的反馈电压信号进行采样及处理;进行按键判断处理;对采样数据进行滤波处理;判断是否已到基准时间?如果否,返回步骤2,如果是,继续执行步骤6;刷新各个按键的基准值;判断长按键时间是否大于等于6秒?如果否,返回步骤2,如果是,继续执行步骤8;刷新全部按键的基准值。本发明能够自动跟踪刷新基准值,通过反馈电压信号变化量的大小来判断是否有按键动作发生,并通过自动补偿和修正来区别处理,有效解决了外部电路参数所引起的差异以及工作环境条件变化所引起的漂移问题。

权利要求书

1.  一种电容式触摸屏按键检测方法,其特征在于:包括以下步骤:
步骤1,系统上电,硬件初始化;
步骤2,对各按键的反馈电压信号进行采样及处理;
步骤3,进行按键判断处理;
步骤4,对采样数据进行滤波处理;
步骤5,判断是否已到基准时间?如果否,返回步骤2;如果是,继续执行步骤6;
步骤6,刷新各个按键的基准值;
步骤7,判断长按键时间是否大于等于6秒?如果否,返回步骤2;如果是,继续执行步骤8;
步骤8,刷新全部按键的基准值。

2.
  根据权利要求1所述的电容式触摸屏按键检测方法,其特征在于:所述基准时间为10ms。

3.
  根据权利要求1所述的电容式触摸屏按键检测方法,其特征在于:所述步骤2的对各按键的反馈电压进行采样及处理具体包括:
步骤201,ADC采样电路对按键的反馈电压信号进行采样;
步骤202,采样值累加;
步骤203,判断采样值是否大于等于基准值?如果是,则结束程序;如果否,继续执行步骤204;
步骤204,用所述的基准值减去采样值,其结果作为差值1;
步骤205,判断所述差值1是否大于等于有效阀值?如果否,则结束程序;如果是,继续执行步骤206;
步骤206,按键计数值加1,并结束程序。

4.
  根据权利要求3所述的电容式触摸屏按键检测方法,其特征在于:对各个按键的反馈电压信号进行采样及处理时,采样顺序为顺次进行或并列进行。

5.
  根据权利要求4所述的电容式触摸屏按键检测方法,其特征在于:所述采样值累加,是连续对反馈电压信号采样256次后,对所得到的采样值进行累加,再取平均值,所得结果为平均采样值。

6.
  根据权利要求1、3、4或5所述的电容式触摸屏按键检测方法,其特征在于:所述步骤3的按键判断处理具体包括:
步骤301,判断上电时间是否超过2秒?如果否,执行步骤302;如果是,则执行步骤303;
步骤302,将采样计数值清零,并结束程序;
步骤303,采样计数值加1;
步骤304,判断采样计数值是否大于等于总采样次数?如果否,则结束程序;如果是,执行步骤305;
步骤305,判断各个按键的按键计数值是否大于等于有效次数?如果是,执行步骤306;如果否,则执行步骤307;
步骤306,将各个按键的标志位置位;
步骤307,判断本次采样结果上次采样结果是否相同?如果否,执行步骤308;如果是,执行步骤309;
步骤308,刷新本次采样结果,并将连续计数值清零,然后执行步骤309;
步骤309,连续计数值加1;
步骤310,判断连续计数值是否大于等于连续次数?如果是,执行步骤311;如果否,执行步骤312;
步骤311,进行按键处理并输出结果,并执行步骤312;
步骤312,将采样计数值和按键计数值清零,并结束程序。

7.
  根据权利要求6所述的电容式触摸屏按键检测方法,其特征在于:判断各个按键的按键计数值是否大于等于有效次数、将各个按键的标志位置位,各个按键的判断顺序为顺次进行或并列进行。

8.
  根据权利要求7所述的电容式触摸屏按键检测方法,其特征在于:所述总采样次数为100次。

9.
  根据权利要求1、3、4或5所述的电容式触摸屏按键检测方法,其特征在于:所述步骤6的按键基准值刷新处理具体包括:
步骤601,判断上电时间是否超过2秒?如果否,结束程序;如果是,执行步骤602;
步骤602,用所述的基准值减去平均采样值,其结果作为差值2;
步骤603,判断差值2是否小于下限值?如果是,执行步骤604;如果否,执行步骤605;
步骤604,将延时计数值清零,并结束程序;
步骤605,判断差值2是否大于等于上限值?如果是,执行步骤604;如果否,执行步骤606;
步骤606,判断采样值是否大于等于基准值?如果是,执行步骤607;如果否,执行步骤609;
步骤607,延时计数值加1,继续执行步骤608;
步骤608,判断延时计数值是否大于等于延时值1 ?如果否,结束程序;如果是,执行步骤612;
步骤609,判断差值2是否大于等于有效阀值?如果是,执行步骤604;如果否,执行步骤610;
步骤610,延时计数值加1;
步骤611,判断延时计数值是否大于等于延时值2?如果否,结束程序;如果是,执行步骤612;
步骤612,延时计数值清零,刷新基准值,并结束程序。

10.
  根据权利要求9所述的电容式触摸屏按键检测方法,其特征在于:刷新各个按键的基准值时,刷新顺序为顺次进行或并列进行。

说明书

电容式触摸屏按键检测方法
技术领域
本发明涉及一种按键检测方法,尤其涉及一种利用悬浮控制技术进行的电容式触摸屏按键检测方法。
背景技术
触摸屏已被广泛的应用到各种电子产品上,常用的有电阻式、电磁式和电容式三种。电容式触摸屏由于是利用使用者的手指或其他导体接触到触摸屏按键的瞬间产生一个电容效益,通过电容值的变化确定按键动作的发生,不需要像电磁式触摸屏那样必须借助输入笔,也不像电阻式触摸屏那样施压点集中,因此使用寿命更长,效率更高,是目前最为常用的一种触摸屏。
目前,电容式触摸屏的按键检测是利用ADC转换测量的方法进行的,其硬件电路如附图1所示,包括处理器、转换电路和频率产生电路,检测原理是:使用固定频率和占空比的信号对转换电路进行充放电,转换成直流电平信号(即反馈电压信号)给处理器进行检测处理,根据直流电平信号的变化差值,获知有无按键动作发生。在没有按键动作发生时,转换回路的电容是稳定的,其转换出的反馈电压信号也是平稳的较高的电平;当有按键动作发生时,充电回路的电容增大,相应转换出来的反馈电压信号变低。该电路把电容量的变化转换为反馈电压信号的变化,通过对每一路反馈电压信号变化量的采样检测,来实现对应触摸按键的检测及处理。在该电路中,采样的反馈电压信号受转换电路的工作电压、频率和电路元器件参数(尤其是PCB布图的寄生旁路电容)的影响而存在较大差异,并且在工作过程中受工作条件、环境温湿度的变化也会随之产生漂移变化。因此,在现有的采用固定值判断的应用方案中,不同的硬件电路其相应的反馈电压信号会存在差异,在开发过程中需要根据具体个案来调整电路元器件参数,或者修改软件参数。这种做法不仅费时费力,需要重复大量的调试工作,而且在批量应用中对元器件参数的要求也较高,稍有偏差都会影响使用效果;并且在使用过程中,随着工作条件的变化而存在漂移变化,从而导致触摸屏按键无法正常工作或者误操作的情况。
发明内容
为了解决上述问题,本发明提供了一种利用悬浮控制技术进行电容式触摸屏按键检测的方法,采用如下技术方案:
一种电容式触摸屏按键检测方法,包括以下步骤:
步骤1,系统上电,硬件初始化;
步骤2,对各按键的反馈电压信号进行采样及处理;
步骤3,进行按键判断处理;
步骤4,对采样数据进行滤波处理;
步骤5,判断是否已到基准时间?如果否,返回步骤2;如果是,继续执行步骤6;
步骤6,刷新各个按键的基准值;
步骤7,判断长按键时间是否大于等于6秒?如果否,返回步骤2;如果是,继续执行步骤8;
步骤8,刷新全部按键的基准值。
优选的,所述基准时间为10ms。
进一步的,所述步骤2的对各按键的反馈电压进行采样及处理具体包括:
步骤201,ADC采样电路对按键的反馈电压信号进行采样;
步骤202,采样值累加;
步骤203,判断采样值是否大于等于基准值?如果是,则结束程序;如果否,继续执行步骤204;
步骤204,用所述的基准值减去采样值,其结果作为差值1;
步骤205,判断所述差值1是否大于等于有效阀值?如果否,则结束程序;如果是,继续执行步骤206;
步骤206,按键计数值加1,并结束程序。
优选的,对各个按键的反馈电压信号进行采样及处理时,采样顺序为顺次进行或并列进行。
优选的,所述采样值累加,是连续对反馈电压信号采样256次后,对所得到的采样值进行累加,再取平均值,所得结果为平均采样值。
进一步的,所述步骤3的按键判断处理具体包括:
步骤301,判断上电时间是否超过2秒?如果否,执行步骤302;如果是,则执行步骤303;
步骤302,将采样计数值清零,并结束程序;
步骤303,采样计数值加1;
步骤304,判断采样计数值是否大于等于总采样次数?如果否,则结束程序;如果是,执行步骤305;
步骤305,判断各个按键的按键计数值是否大于等于有效次数?如果是,执行步骤306;如果否,则执行步骤307;
步骤306,将各个按键的标志位置位;
步骤307,判断本次采样结果上次采样结果是否相同?如果否,执行步骤308;如果是,执行步骤309;
步骤308,刷新本次采样结果,并将连续计数值清零,然后执行步骤309;
步骤309,连续计数值加1;
步骤310,判断连续计数值是否大于等于连续次数?如果是,执行步骤311;如果否,执行步骤312;
步骤311,进行按键处理并输出结果,并执行步骤312;
步骤312,将采样计数值和按键计数值清零,并结束程序。
优选的,判断各个按键的按键计数值是否大于等于有效次数、将各个按键的标志位置位,各个按键的判断顺序为顺次进行或并列进行。
优选的,所述总采样次数为100次。
进一步的,所述步骤6的按键基准值刷新处理具体包括:
步骤601,判断上电时间是否超过2秒?如果否,结束程序;如果是,执行步骤602;
步骤602,用所述的基准值减去平均采样值,其结果作为差值2;
步骤603,判断差值2是否小于下限值?如果是,执行步骤604;如果否,执行步骤605;
步骤604,将延时计数值清零,并结束程序;
步骤605,判断差值2是否大于等于上限值?如果是,执行步骤604;如果否,执行步骤606;
步骤606,判断采样值是否大于等于基准值?如果是,执行步骤607;如果否,执行步骤609;
步骤607,延时计数值加1,继续执行步骤608;
步骤608,判断延时计数值是否大于等于延时值1?如果否,结束程序;如果是,执行步骤612;
步骤609,判断差值2是否大于等于有效阀值?如果是,执行步骤604;如果否,执行步骤610;
步骤610,延时计数值加1;
步骤611,判断延时计数值是否大于等于延时值2?如果否,结束程序;如果是,执行步骤612;
步骤612,延时计数值清零,刷新基准值,并结束程序。
优选的,刷新各个按键的基准值时,刷新顺序为顺次进行或并列进行。
本发明所提供的利用悬浮控制技术进行触摸屏按键检测的软件处理方法,能够自动跟踪刷新基准值,通过反馈电压信号变化量的大小来判断是否有按键动作发生,并通过自动补偿和修正来区别处理,有效解决了外部电路参数所引起的差异以及工作环境条件变化所引起的漂移问题。在具体应用中,不需要调节任何电路参数和修改软件参数,简单易用,而且可靠性更高,抗干扰能力更强,适用性好,对按键的响应灵敏度的调整非常简单,而且电路简单,成本低廉,适合批量生产。
附图说明
图1为利用ADC转换测量的方法对电容式触摸屏的按键进行检测的硬件电路图;
图2为本发明的基准值刷新处理方法的原理图,其中,图2(a)至图2(e)分别示出了基准值刷新的不同情况;
图3为本发明的电容式触摸屏按键检测方法的主程序流程图;
图4为按键反馈电压信号采样及处理程序流程图;
图5为按键判断处理程序流程图;
图6为按键基准值刷新处理程序流程图。
具体实施方式
下面结合附图对本发明作进一步说明。
现有的利用ADC转换测量方法进行电容式触摸屏按键检测时,转换的反馈电压信号受具体电路参数及环境条件的影响,其差异性很大,但有按键动作时的反馈电压信号都是在没有按键动作时反馈电压信号的基础上产生的较大变化值。如果能检测并判断出没有按键时的反馈电压值,在有按键动作时检测出反馈电压信号的变化量,从而判断出有按键动作发生。此方法是通过反馈电压的变化量而并非是具体电位值来进行判断,可以避免受具体电路参数及环境条件的影响。对每一路反馈电压信号利用相同的处理方法单独进行检测,始终自动检测并跟踪刷新反馈电压的基准值,并时刻检测出反馈电压的变化量,从而判断出有无按键的动作发生。这就是利用悬浮控制技术进行触摸屏按键检测的软件处理方法的原理。
基准值刷新处理的原理如图2所示,在正常使用过程中,反馈电压信号会随着使用条件的变化而有所波动,在没有按键动作时,其反馈电压信号变化是缓慢而且幅度较小的;在有按键动作时,反馈电压信号变化很快且幅度较大,并且会维持一定的时间;而在有外界干扰时,反馈电压信号变化也可能出现较快且幅度较大的情况,但其大多数持续时间都很短暂。根据反馈电压信号的这些特点,进行信号采样处理时根据不同的变化规律做如下区别处理,其中,图2(a)至2(e)中,恒定不变的信号为基准值,存在波动的信号为检测值:
如图2(a),对反馈电压信号进行检测并做相应的软件滤波处理,取连续采样256次并进行累加后的平均值,该平均值作为检测值与基准值进行比较,若检测值在基准值很小的范围内上下波动,此为正常的稳定状态,维持原来的基准值不变,只需清除延时时间变量;
如图2(b),若检测值比基准值大且幅度超过一定范围,并且连续持续较长时间(例如大于300ms),则刷新基准值,以检测值作为新的基准值,并清除延时时间变量;
如图2(c),若检测值比基准值小且幅度超过一定范围,但幅度又比有效按键的变化幅度小,并且连续持续较长时间(例如大于500ms),则刷新基准值,以检测值作为新的基准值,并清除延时时间变量;
如图2(d),若检测值比基准值小且幅度超过有效按键的变化幅度,并且连续持续一段时间(例如大约持续100ms),则认为是正常的触摸按键动作,基准值不变,清除延时时间变量,响应相应的按键动作;
如图2(e),若检测值比基准值小且幅度超过有效按键的变化幅度,并且连续持续时间很长(例如大于6s,长按键有效的情况除外),超出正常按键操作时的持续时间,则认为发生错误,刷新所有按键的基准值。
本发明的电容式触摸屏按键检测的软件处理方法,其主工作流程如图3所示,包括以下步骤:
步骤1,系统上电,硬件初始化;
步骤2,对各按键的反馈电压信号进行采样及处理;
步骤3,进行按键判断处理;
步骤4,对采样数据进行滤波处理;
步骤5,判断是否已到基准时间?如果否,返回步骤2;如果是,继续执行步骤6;
步骤6,刷新各个按键的基准值;
步骤7,判断长按键时间是否大于等于6秒?如果否,返回步骤2;如果是,继续执行步骤8;
步骤8,刷新全部按键的基准值。
在上述的步骤2和6中,对各个按键的反馈电压信号进行采样及处理时,以及在刷新各个按键的基准值时,采样顺序和刷新顺序既可以是顺次进行的,也可以是并列进行的,只要完成对全部按键的相应处理即可。步骤5中基准时间,是指在本检测方法中,凡是涉及到时间变量的计算,都以此基准时间为基准来进行累加,本实施例中,所述基准时间设定为10ms。
进一步的,所述步骤2的对各按键的反馈电压进行采样及处理的子程序流程如图4所示,包括:
步骤201,ADC采样电路对按键的反馈电压信号进行采样;
步骤202,采样值累加;
步骤203,判断采样值是否大于等于基准值?如果是,则结束程序;如果否,继续执行步骤204;
步骤204,用所述的基准值减去采样值,其结果作为差值1;
步骤205,判断所述差值1是否大于等于有效阀值?如果否,则结束程序;如果是,继续执行步骤206;
步骤206,按键计数值加1,并结束程序。
本实施例中,所使用的ADC采样分辨率为8位,因此各参数都是在8位ADC基准上的数据。本系统上电后,电路系统需要经过约2秒钟才能达到稳定,在前2秒内只对反馈电压信号进行检测,但并不进行按键的判断以及基准值的刷新处理;经过2秒后,系统进行首次有效的采样,此后根据基准值的刷新处理流程进行处理来更新基准值(在硬件电路正常情况下,首次有效的采样的检测值即为基准值)
本实施例中,步骤202所述的采样值累加,具体方法是连续对反馈电压信号进行采样,将采样256次的采样值进行累加,然后取平均值,得到平均采样值,具体为:用2个字节变量表示累加的和值,每采样一次就把采样值加到该和值,连续加满256次后,和值的高字节即为累加后的平均值,将此平均值作为进行基准值刷新处理的检测值。
步骤205中所述的有效阀值,该参数值是根据实验结果得出的,本实施例中取有效阀值为12,其依据为实际应用中在按键覆盖介质为不超过5mm厚玻璃的情况下的实际应用值。
进一步的,所述步骤3的按键判断处理子程序流程如图5所示,包括:
步骤301,判断上电时间是否超过2秒?如果否,执行步骤302;如果是,则执行步骤303;
步骤302,将采样计数值清零,并结束程序;
步骤303,采样计数值加1;
步骤304,判断采样计数值是否大于等于总采样次数?如果否,则结束程序;如果是,执行步骤305;
步骤305,判断各个按键的按键计数值是否大于等于有效次数?如果是,执行步骤306;如果否,则执行步骤307;
步骤306,将各个按键的标志位置位;
步骤307,判断本次采样结果上次采样结果是否相同?如果否,执行步骤308;如果是,执行步骤309;
步骤308,刷新本次采样结果,并将连续计数值清零,然后执行步骤309;
步骤309,连续计数值加1;
步骤310,判断连续计数值是否大于等于连续次数?如果是,执行步骤311;如果否,执行步骤312;
步骤311,进行按键处理并输出结果,并执行步骤312;
步骤312,将采样计数值和按键计数值清零,并结束程序。
步骤3的按键判断处理子程序,其作用是判断是否有按键动作发生。在上述的步骤305、306中,判断各个按键的按键计数值是否大于等于有效次数,将各个按键的标志位置位,各个按键的判断顺序既可以是顺次进行的,又可以是并列进行的。
在本实施例中,对反馈电压信号进行连续多次的采样(如进行100次采样),每次采样的采样值都与基准值进行比较,判断是否发生有效的按键,且按键计数器开始计数;每100次采样检测后,判断按键计数值是否达到有效按键的次数值(本实施例中设为80次),并设置相应的按键检测标志;达到有效按键的计数值则判断为有按键,否则无按键。若连续3次出现上述相同的采样结果,则认为有按键动作发生,进行相应的按键处理并输出结果。
步骤304中所述的总采样次数,即为上述的连续多次采样的总次数,本实施例中设为100次;步骤305中所述的有效次数,即为上述的有效按键的次数值,本实施例中设为80次;步骤310中所述的连续次数,即为上述的相同采样结果的连续次数值,本实施例中设为3次。这些参数值的选取,关系到触摸屏按键检测的响应速度、准确性以及抗干扰性。因此在本实施例中,对8通道触摸屏按键连续采样100次的时间大约为20-30ms,连续3次相同结果检测总时间基本符合正常触摸屏按键操作时的反馈电压信号特性。
进一步的,所述步骤6的按键基准值刷新处理子程序流程如图6所示,包括:
步骤601,判断上电时间是否超过2秒?如果否,结束程序;如果是,执行步骤602;
步骤602,用所述的基准值减去平均采样值,其结果作为差值2;
步骤603,判断差值2是否小于下限值?如果是,执行步骤604;如果否,执行步骤605;
步骤604,将延时计数值清零,并结束程序;
步骤605,判断差值2是否大于等于上限值?如果是,执行步骤604;如果否,执行步骤606;
步骤606,判断采样值是否大于等于基准值?如果是,执行步骤607;如果否,执行步骤609;
步骤607,延时计数值加1,继续执行步骤608;
步骤608,判断延时计数值是否大于等于延时值1?如果否,结束程序;如果是,执行步骤612;
步骤609,判断差值2是否大于等于有效阀值?如果是,执行步骤604;如果否,执行步骤610;
步骤610,延时计数值加1;
步骤611,判断延时计数值是否大于等于延时值2?如果否,结束程序;如果是,执行步骤612;
步骤612,延时计数值清零,刷新基准值,并结束程序。
步骤603中所述的下限值和步骤605中所述的上限值,均为根据实际使用效果而定义的参数,在本实施例中,定义为基准值的±2,平均采样值在这一范围内波动时,认为是正常的检测误差而不刷新基准值。
步骤608中所述的延时值1和步骤611中的延时值2,均为根据实际使用效果定义的参数,在本实施例中,为了提高抗干扰能力对采用数据进行滤波处理,考虑到抗干扰性能和按键的响应速度,将延时值1设为300ms、延时值2设为500ms。
本发明实施例所提供的利用悬浮控制技术进行触摸屏按键检测的软件处理方法,能够自动跟踪刷新基准值,通过反馈电压信号变化量的大小来判断是否有按键动作发生,并通过自动补偿和修正来区别处理,有效解决了外部电路参数所引起的差异以及工作环境条件变化所引起的漂移问题。在具体应用中,不需要调节任何电路参数和修改软件参数,简单易用,而且可靠性更高,抗干扰能力更强,适用性好,对按键的响应灵敏度的调整非常简单,而且电路简单,成本低廉,适合批量生产。

电容式触摸屏按键检测方法.pdf_第1页
第1页 / 共16页
电容式触摸屏按键检测方法.pdf_第2页
第2页 / 共16页
电容式触摸屏按键检测方法.pdf_第3页
第3页 / 共16页
点击查看更多>>
资源描述

《电容式触摸屏按键检测方法.pdf》由会员分享,可在线阅读,更多相关《电容式触摸屏按键检测方法.pdf(16页珍藏版)》请在专利查询网上搜索。

本发明涉及一种电容式触摸屏按键检测方法,属于利用悬浮控制技术进行的检测方法,包括以下步骤:步骤1至8顺次为,系统上电,硬件初始化;对各按键的反馈电压信号进行采样及处理;进行按键判断处理;对采样数据进行滤波处理;判断是否已到基准时间?如果否,返回步骤2,如果是,继续执行步骤6;刷新各个按键的基准值;判断长按键时间是否大于等于6秒?如果否,返回步骤2,如果是,继续执行步骤8;刷新全部按键的基准值。本发。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 计算;推算;计数


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1