一种对触摸式输入装置的驱动电路进行复位的方法和装置
技术领域
本发明涉及电路检测技术,具体涉及一种对触摸式输入装置的驱动电路进行复位的方法和装置。
背景技术
当前,多媒体数码设备外围技术迅速发展,触摸屏作为一种直观便捷的人机交互方式,正越来越广泛地应用在各种数码设备当中。使用触摸屏需要在数码设备中内置专门的驱动芯片进行支持,且触摸屏对使用环境的要求较为严格。
当触摸屏的供电电源发生波动、或受到使用环境中静电的干扰、或电路中驱动芯片的关键信号线受到较强的外界干扰时,有可能出现触摸屏的驱动芯片出现逻辑异常而失效并无法正常工作,相应地,此时所述触摸屏将无法使用,从而用户也就无法进行正常操作,只有通过切断电源并重新开机等方式手动对所述驱动芯片进行重新初始化后才能再次对所述触摸屏进行操作。这显然会使得采用触摸屏技术的数码设备的易用性和稳定性大打折扣。
为了解决这一问题,有厂商提出一种改进方法:预先根据设备测试和使用的经验,归纳总结出最有可能导致所述驱动芯片发生失效故障的各种操作;在触摸屏使用过程中,每当执行所述可能导致驱动芯片失效的操作之后,强制进行触摸屏驱动芯片的重新初始化(通常称为复位),以保证无论所述驱动芯片是否出现失效,都能够在强制重新初始化之后继续正常工作。
这种方法固然能够改善触摸屏的工作稳定性,但是该方法灵活性较差且实用效果严重依赖测试结果,而测试本身的局限性就决定了不可能发现所有可能导致触摸屏驱动芯片失效的操作,因此在实际使用触摸屏的过程中,一旦预先未被发现的操作导致了触摸屏驱动芯片出现失效故障,显然,此时,采用这种方法是无法使得所述驱动芯片恢复正常工作状态的。
针对上述情况,另一种改进方法的流程如图1所示,当数码设备上电启动并初始化触摸屏驱动芯片之后,按照预先设定的时间周期,周期性触发触摸屏检测,在所述每个时间周期内,所述方法包括:
步骤101:触摸屏驱动芯片检测自身是否失效,如果是,执行步骤102,否则执行步骤103;
步骤102:初始化触摸屏驱动芯片,返回执行步骤101;
步骤103:利用触摸屏驱动芯片检测是否有触摸屏操作动作发生,如果有,则执行步骤104,否则返回步骤101;
步骤104:确定所述触摸屏操作动作对应的具体按键,并提交系统的上层程序进行进一步处理。
步骤103中所述的触摸屏操作动作是对触摸屏可以支持的操作方式的统称:对于常见的触摸屏,该动作通常为按键操作,即对触摸屏中以图形界面呈现的虚拟键盘进行的敲击操作;而对于其它触摸屏,所述动作还可以是触摸屏驱动芯片提供商预先定义和支持的其它操作方式,比如目前一些厂商提供的通过触摸屏上设定方式的操作实现图片翻转、放大或缩小,以及音乐视频文件播放过程中的快进、快退等。
可见,图1所示的方法不必依赖预先设定的操作类型触发初始化操作,而是每隔设定周期通过检测驱动芯片是否失效并采取相应处理操作,因此不会出现驱动芯片陷入失效故障而无法复位的情况。
但是显然,这种方法仍然有其相应的局限性。首先,步骤101中能够进行驱动芯片是否失效的判断,需要所述的驱动芯片能够提供自检并报告自身工作状态是否正常的功能,而这一功能并非所有的驱动芯片都具备;此外,上述方法中所述每个时间周期内,所述驱动芯片都需要进行自检,而进行自检就势必需要调用相应的检测程序,从而在所述每个时间周期内,系统都需要调用和执行所述检测程序,众所周知,数码设备作为嵌入式设备的一种,其系统资源非常稀缺,而图1所示的方法无疑会导致系统资源占用的增加和系统执行效率的降低,因此这种以牺牲系统资源和执行效率的方式换取稳定性提高的方法并不可取。
发明内容
本发明实施例提供一种对触摸式输入装置的驱动电路进行复位的方法和装置,能够以较低的系统资源占用实现发生失效故障的电路的自动复位。
为达到上述目的,本发明的技术方案具体是这样实现的:
一种对触摸式输入装置的驱动电路进行复位的方法,所述驱动电路上电启动并完成初始化之后,按照预先设定的时间周期,周期性地对所述装置采集到的外部输入信号进行检测,该方法包括:
A、设置初始值为设定值的时间标识量和时间门限值;
B、利用所述时间标识量对未检测到所述输入信号的时间长度进行计时;
C、当所述未检测到所述输入信号的时间长度达到时间门限值时,对驱动电路进行复位操作,并将所述时间标识量复位为初始值并返回执行步骤B。
所述设置初始值为设定值的时间标识量的方法为:
设置计数器,将所述计数器的值作为时间标识量。
利用所述时间标识量对未检测到所述输入信号的时间长度进行计时的方法包括:
当所述计数器未达到时间门限值时,将所述计数器增加设定步长,结束当前周期,将下一个周期作为当前周期并继续执行本步骤。
利用所述时间标识量对未检测到所述输入信号进行计时的方法包括:
当所述计时器未达到时间门限值时,所述计时器持续进行计时。
所述预先设定的时间周期大于驱动电路初始化需要的时间长度。
一种对触摸式输入装置的驱动电路进行复位的装置,该装置在所述驱动电路上电启动并完成初始化之后,按照预先设定的时间周期,周期性地对所述触摸式输入装置采集到的外部输入信号进行检测,该装置包括:
设置模块,用于设置初始值为设定值的时间标识量和时间门限值并提供给计时复位模块;
所述计时复位模块,用于利用时间标识量对未检测到所述输入信号的时间长度进行计时,将计时结果提供给比对复位模块;还用于根据比对复位模块返回的通知,将所述时间标识量复位为初始值;
比对复位模块,用于根据计时复位模块提供的计时结果获取所述未检测到所述输入信号的时间长度,当所述时间长度达到时间门限值时,对驱动电路进行复位操作,并通知计时复位模块对所述时间标识量进行复位。
所述计时复位模块包括:
计时单元,用于利用所述时间标识量对未检测到所述输入信号的时间长度进行计时,将计时结果提供给比对复位模块;
时间标识量复位单元,用于接收比对复位模块返回的通知,将所述时间标识量复位为初始值,并将复位后的时间标识量提供给计时单元。
所述比对复位模块包括:
比对单元,用于根据计时复位模块提供的计时结果获取所述未检测到所述输入信号的时间长度,当所述时间长度达到时间门限值时,通知电路复位单元;
电路复位单元,用于根据比对单元的通知,对驱动电路进行复位操作,并通知计时复位模块。
该装置还包括:
周期设置模块,用于设置对输入信号进行检测的时间周期,且所述时间周期大于驱动电路初始化需要的时间长度。
由上述的技术方案可见,本发明实施例的这种方法和装置,通过设置一个时间标识量对未检测到输入信号的时间长度进行计时,并在计时达到设定时间门限值时对驱动电路进行重新初始化操作,并将所述时间标识量复位,从而不需要检测所述驱动电路是否工作正常就能实现该电路的复位,能够适用于不具备自检功能并报告自身工作状态是否正常的驱动电路的复位操作,相比现有技术具有更好的通用性;此外,所述时间门限值可以预先设定,使得本发明实施例能够提供更快的失效故障响应速度,从而改善使用者的用户体验;最后,本发明实施例提供的方法和装置,由于不必在每个时间周期内调用和执行检测程序,而只需要通过一个时间标识量对未检测到输入信号的时间长度进行计时,因此对系统资源的占用更少,从而系统的执行效率更高。
附图说明
图1为现有技术中驱动电路复位的方法的流程示意图。
图2为本发明实施例中对驱动电路进行复位的方法的流程示意图。
图3为本发明实施例中所述方法一个具体示例的流程图。
图4为本发明实施例中对驱动电路进行复位的装置的结构示意图。
具体实施方式
为使本发明的目的、技术方案及优点更加清楚明白,以下参照附图并举实施例,对本发明进一步详细说明。
本发明实施例提供一种对触摸式输入装置的驱动电路进行复位的方法,该方法的流程如图2所示,当驱动电路上电启动并完成初始化之后,按照预先设定的时间周期,周期性地对所述装置采集到的外部输入信号(比如用户对触摸屏进行操作产生的信号)进行检测,该方法包括:
步骤201:设置初始值为设定值的时间标识量和时间门限值;
步骤202:利用所述时间标识量对未检测到所述输入信号的时间长度进行计时;
步骤203:当所述未检测到所述输入信号的时间长度达到时间门限值时,对驱动电路进行复位操作,并将所述时间标识量复位为初始值,返回执行步骤202。
所述时间标识量,可以作为一个暂态变量在进行触摸屏检测时进行定义和设置,也可以作为一个全局变量由系统预先定义和设置,同时,所述初始值一般设置为0,但同样可以为其它任意的设定值,本领域技术人员均应理解所述定义和设置的不同方式均不影响本发明的实现。
其中,利用所述时间标识量对未检测到所述输入信号的时间长度进行计时包括:
在当前周期内,判断所述时间标识量是否达到时间门限值,如果否,增大所述时间标识量,结束当前周期,将下一个周期作为当前周期并继续执行本步骤,如果是,继续执行步骤203。
此时,所述步骤203具体包括:
重新初始化(复位)驱动电路,结束当前周期,将下一个周期作为当前周期并将所述时间标识量复位为初始值,返回继续执行步骤202。
为了进一步展示本发明的应用,下面将结合一个具体示例进行说明,该示例的流程如图3所示,其中包括:
步骤301:设置初始值为设定值的时间标识量和时间门限值;
步骤302:在当前周期内,利用驱动电路检测是否有触摸屏操作动作发生,如果是,则执行步骤306;否则,执行步骤303;
步骤303:判断所述时间标识量是否达到时间门限值,如果是,则执行步骤305,否则执行步骤304;
步骤304:增大所述时间标识量,结束当前周期,将下一个周期作为当前周期并返回继续执行步骤302;
步骤305:重新初始化(复位)触摸屏驱动芯片,结束当前周期,将下一个周期作为当前周期并将所述时间标识量复位为初始值,返回执行步骤302;
步骤303中的所述时间门限值用于调整驱动芯片初始化的时间间隔,比如设定为每500毫秒或1秒将驱动芯片重新初始化一次。同时需要指出的是,由于触摸屏操作时的信号持续时间一般在几十毫秒到一百多毫秒之间,因此所述驱动电路初始化的时间间隔一般都显著大于所述时间周期,且通常比所述时间周期高至少一个数量级。
因此,步骤301可以为:
设置计数器,将所述计数器的值作为时间标识量。
此时,所述步骤303包括:
判断所述计数器是否达到预设门限值,如果是,则执行步骤305,否则执行步骤304;
相应地,所述步骤304包括:
将所述计数器增加设定的步长(比如每时间周期增加1或其它值),结束当前周期,将下一个周期作为当前周期并返回继续执行步骤302;或者,直接结束当前周期,将下一个周期作为当前周期并返回继续执行步骤302。容易理解,后一种直接结束当前周期的方式,实质上是:当所述计时器未达到时间门限值时,所述计时器持续进行计时。
步骤306:将所述时间标识量复位为初始值,确定所述触摸屏操作动作对应的具体按键,并提交系统的上层程序进行进一步处理。
最后,需要说明的是,在实际应用中,因不同驱动电路的初始化过程有所不同,可根据实际情况调整所述时间周期的长度以及时间间隔,来减少因触摸屏驱动芯片初始化过程耗费时间不同带来的影响。比如,某触摸屏驱动芯片的初始化时间为16毫秒,则可将时间周期的长度设为20毫秒,这样就能够保证不会出现因驱动芯片的初始化时间大于时间周期而可能引发的丢键问题;同时,用户用手对触摸屏进行操作的一次触摸时间大约为30~200毫秒之间,而触摸屏驱动芯片的单次初始化时间一般小于20毫秒,因此将时间周期设为20毫秒可以保证不会出现因触摸操作的时间小于时间周期而可能引发的丢键问题。
因此,较佳地,所述预先设定的时间周期大于驱动电路初始化需要的时间长度。
在所述方法的基础上,本发明实施例还提供一种对触摸式输入装置的驱动电路进行复位的装置,该装置在所述驱动电路上电启动并完成初始化之后,按照预先设定的时间周期,周期性地对所述触摸式输入装置采集到的外部输入信号进行检测,其组成结构如图4所示,具体包括:设置模块410,计时复位模块420和比对复位模块430。
所述设置模块410,用于设置初始值为设定值的时间标识量和时间门限值并提供给计时复位模块420;
所述计时复位模块420,用于利用时间标识量对未检测到所述输入信号的时间长度进行计时,将计时结果提供给比对复位模块430;还用于根据比对复位模块430返回的通知,将所述时间标识量复位为初始值;
所述比对复位模块430,用于根据计时复位模块420提供的计时结果获取所述未检测到所述输入信号的时间长度,当所述时间长度达到时间门限值时,对驱动电路进行复位操作,并通知计时复位模块420对所述时间标识量进行复位。
其中,所述计时复位模块420进一步包括:计时单元421和时间标识量复位单元422;
所述计时单元421,用于利用所述时间标识量对未检测到所述输入信号的时间长度进行计时,将计时结果提供给比对复位模块430;
所述时间标识量复位单元422,用于接收比对复位模块430返回的通知,将所述时间标识量复位为初始值,并将复位后的时间标识量提供给计时单元421。
所述比对复位模块430进一步包括:比对单元431和电路复位单元432;
所述比对单元431,用于根据计时单元421提供的计时结果获取所述未检测到所述输入信号的时间长度,当所述时间长度达到时间门限值时,通知电路复位单元432;
所述电路复位单元432,用于根据比对单元431的通知,对驱动电路进行复位操作,并通知时间标识量复位单元422。
需要说明的是,与方法中提到的对应,在实际应用中,为避免引发丢键问题,较佳地,所述装置中还进一步包括周期设置模块(图4中未示出),用于设置对输入信号进行检测的时间周期,并按所述时间周期对输入信号进行检测,所述时间周期大于驱动电路初始化需要的时间长度。
可见,在保证所述时间周期的长度小于用户进行触摸屏操作的一次触摸时间,且大于驱动芯片的单次初始化时间的情况下,可以根据不同驱动芯片的实际情况和所述数码设备的设计要求对该时间周期的长度进行进一步调整。另外,在调整时间周期的长度时,由于所述时间间隔与时间周期的长度相关,因此还要相应地调整所述时间标识量的值,以满足产品使用的要求。
由上述可见,本发明实施例提供的对驱动电路进行复位的方法和装置,通过设置一个时间标识量对未检测到输入信号的时间进行计时,并在计时达到设定时间门限值时对驱动芯片进行重新初始化操作,并将所述时间标识量复位,从而不需要检测驱动芯片是否工作正常就能实现驱动芯片的复位,因此能够适用于不具备自检功能并报告自身工作状态是否正常的驱动芯片的复位操作,因此相比现有技术具有更好的通用性;同时,本发明实施例提供的方法,不必在每个时间周期内调用和执行检测程序,而只需要增加一个时间标识量,因此对系统资源的占用更少,从而系统的执行效率更高。
此外,在现有技术中,由于每个时间周期内都需要执行驱动芯片自检,当驱动芯片发生失效故障后,必须要等到驱动芯片得出自检结果后才能进行复位操作,而驱动芯片进行自检并得出自身工作状态是否正常需要的时间通常较长且无论是用户还是开发人员都无法自由控制,因此该方法对于失效故障的响应速度并不迅速,常常使得所述数码设备的用户体验不够理想。而本发明实施例提供的方法和装置,由于所述时间标识量和时间门限值均可以预先设定,因此本发明能够提供更快的失效故障响应速度,从而能够避免现有技术中存在的一段时间内触摸屏失效或失去响应的情况的出现,大大改善使用者的用户体验。
最后需要指出的时,以上所述均是以触摸屏驱动芯片的失效故障为例进行的说明,但应当理解,所述失效故障并不仅出现在触摸屏驱动芯片的工作过程当中,在集成电路领域中的任何用于检测用户输入信号的电路的工作过程中,当其出现失效故障而导致系统无法正常工作时,均可以应用本发明进行该芯片的重新初始化。从而对于任何可能受到干扰而导致芯片失效的应用场景,均可以利用本发明进行电路的复位操作,从而达到恢复正常工作状态的效果。当本发明应用于除触摸屏驱动芯片以外的其他场景下时,相应的,所述触摸屏操作动作应理解为用户的输入或用户输入的信号;因此,本例所述仅为本发明在实际应用中的一个较佳实施例,并非用于限定本发明的精神和保护范围,任何熟悉本领域的技术人员所做出的等同变化或替换,都应视为涵盖在本发明的保护范围之内。