一种设备信号过滤方法、装置、系统和介质与流程

文档序号:19154788发布日期:2019-11-16 00:35阅读:235来源:国知局
一种设备信号过滤方法、装置、系统和介质与流程

本发明涉及信号处理技术领域,特别是涉及一种设备信号过滤方法、装置、系统和计算机可读存储介质。



背景技术:

目前,以搭载于嵌入式实时操作系统(realtimeoperatingsystem,rtos)为主的终端设备,凭借其不断完善和增强的交互性和沉浸感占据着未来主流前沿娱乐及应用发展的市场。除了对图像的极致渲染处理,在音频上的细节处理也是对沉浸感体验和感官刺激效果的一大重要保障。

而耳机作为终端设备必不可少的音频播放的外接设备,保证插拔过程中耳机工作的稳定性和可靠性是软硬件设计的重点。人为插拔耳机往往会造成抖动,导致耳机频繁的执行通断操作,影响耳机的稳定运行。

可见,如何提升外接设备工作的稳定性和可靠性,是本领域技术人员需要解决的问题。



技术实现要素:

本发明实施例的目的是提供一种设备信号过滤方法、装置、系统和计算机可读存储介质,可以提升外接设备工作的稳定性和可靠性。

为解决上述技术问题,本发明实施例提供一种设备信号过滤方法,包括:

当检测到外接设备的通断信号时,开启计时功能;

判断在预设的计时时间内是否有新的通断信号产生;

若是,则重新启动计时功能,并返回所述判断在预设的计时时间内是否有新的通断信号产生的步骤;

若否,则依据当前的通断信号控制所述外接设备的通断。

可选的,在所述当检测到外接设备的通断信号时,开启计时功能之前还包括:

终端设备上电后检测是否有外接设备连接;

若是,则向所述外接设备供电;

若否,则执行所述当检测到外接设备的通断信号时,开启计时功能的步骤。

可选的,所述计时时间的设置过程包括:

利用逻辑分析仪,获取外接设备连接测试的无效中断信号的无效时间间隔以及有效中断信号的有效时间间隔;

将所述无效时间间隔与所述有效时间间隔的中间值作为计时时间。

可选的,所述当检测到外接设备的通断信号时,开启计时功能包括:

利用各类中断回调函数实时检测是否有通断信号;

当目标中断回调函数检测到通断信号时,触发相对应的计时回调函数开启计时功能;其中,不同类型的中断回调函数对应的计时回调函数的计时时间不同。

可选的,在所述依据当前的通断信号控制所述外接设备的通断之后还包括:

接收计时时间调整指令;在所述计时时间调整指令中携带有新的计时时间以及计时回调函数标识;

将所述新的计时时间替换所述计时回调函数标识所对应的计时回调函数的计时时间。

可选的,所述通断信号包括外接设备的插拔信号。

可选的,在所述重新启动计时功能之后还包括:

统计连续重启计时功能的次数;

当所述次数大于或等于预设值时,则进行告警提示。

本发明实施例还提供了一种设备信号过滤装置,包括开启单元、判断单元、重启单元和控制单元;

所述开启单元,用于当检测到外接设备的通断信号时,开启计时功能;

所述判断单元,用于判断在预设的计时时间内是否有新的通断信号产生;若是,则触发所述重启单元;若否,则触发所述控制单元;

所述重启单元,用于重新启动计时功能,并返回所述判断在预设的计时时间内是否有新的通断信号产生的步骤;

所述控制单元,用于依据当前的通断信号控制所述外接设备的通断。

可选的,还包括检测单元;

所述检测单元,用于终端设备上电后检测是否有外接设备连接;若是,则触发所述控制单元向所述外接设备供电;若否,则触发所述开启单元执行所述当检测到外接设备的通断信号时,开启计时功能的步骤。

可选的,针对于所述计时时间的设置过程,所述装置包括获取单元和作为单元;

所述获取单元,用于利用逻辑分析仪,获取外接设备连接测试的无效中断信号的无效时间间隔以及有效中断信号的有效时间间隔;

所述作为单元,用于将所述无效时间间隔与所述有效时间间隔的中间值作为计时时间。

可选的,所述开启单元具体用于利用各类中断回调函数实时检测是否有通断信号;当目标中断回调函数检测到通断信号时,触发相对应的计时回调函数开启计时功能;其中,不同类型的中断回调函数对应的计时回调函数的计时时间不同

可选的,还包括接收单元和替换单元;

所述接收单元,用于接收计时时间调整指令;在所述计时时间调整指令中携带有新的计时时间以及计时回调函数标识;

所述替换单元,用于将所述新的计时时间替换所述计时回调函数标识所对应的计时回调函数的计时时间。

可选的,所述通断信号包括外接设备的插拔信号。

可选的,还包括统计单元和告警单元;

所述统计单元,用于统计连续重启计时功能的次数;

所述告警单元,用于当所述次数大于或等于预设值时,则进行告警提示。

本发明实施例还提供了一种设备信号消抖系统,包括外接设备和终端设备;所述外接设备通过数据插头与所述终端设备连接;

所述终端设备,用于当检测到所述外接设备的通断信号时,开启计时功能;判断在预设的计时时间内是否有新的通断信号产生;若是,则重新启动计时功能,并返回所述判断在预设的计时时间内是否有新的通断信号产生的步骤;若否,则依据当前的通断信号控制所述外接设备的通断。

本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述任一项所述设备信号过滤方法的步骤。

由上述技术方案可以看出,当检测到外接设备的通断信号时,开启计时功能;判断在预设的计时时间内是否有新的通断信号产生;在计时时间内有新的通断信号产生时,则说明存在抖动现象,此时可以重新启动计时功能,并重新判断在预设的计时时间内是否有新的通断信号产生。在计时时间内没有新的通断信号产生时,则说明外接设备处于相对稳定的连接或断开状态,当前的通断信号为有效信号,此时可以依据当前的通断信号控制外接设备的通断。通过设置定时功能对外接设备的每个通断信号进行判断,可以在过滤掉由硬件抖动产生的无效信号的同时,保证有效信号获取的可靠性,从软件角度提升终端设备操作系统反馈的时效性和稳定性,降低相关系统资源的浪费和可能发生的系统崩溃,提升了外接设备工作的稳定性和可靠性。

附图说明

为了更清楚地说明本发明实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为现有技术提供的一种四段式耳机插头的分段示意图;

图2为本发明实施例提供的一种设备信号过滤方法的流程图;

图3为本发明实施例提供的一种设备信号过滤装置的结构示意图;

图4为本发明实施例提供的一种设备信号过滤系统的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下,所获得的所有其他实施例,都属于本发明保护范围。

为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。

外接设备通过数据插头与终端设备的数据插孔连接,在人为插拔外接设备时,容易产生抖动信号。基于rtos的终端设备会根据检测到的信号控制外接设备的通断,由于抖动信号的存在,会造成外接设备频繁的通断,影响外接设备工作的稳定性和可靠性。并且终端设备不断对无效的抖动信号进行分析,造成相关系统资源的浪费,甚至由于短时间内频繁的操作导致系统崩溃。

耳机作为常用的外接设备,为了保证其良好的音频体验,对耳机工作的稳定性和可靠性较高。如图1所示为四段式耳机插头的分段示意图,图1中从左向右四段分别对应接地段(gnd),通用输入输出(generalpurposeinputoutput,gpio)检测段(jackdetection),左声道信号段(leftchannel)和右声道信号段(rightchannel)。耳机插入头由外到内的第二段(jackdetection)用于gpio插入检测,每当外部耳机相应段插入到此处并接触时会触发gpio中断信号,进一步由中断回调函数获取gpio中断信号作为耳机识别的判断依据。然而,此段检测带一般设计为3mm左右,接触点的细微变化会造成频繁的状态改变,并不像开关那样能稳定地在闭合两个状态间切换。故而在人为插拔耳机时,一次插入或拔出触发多次gpio状态改变的中断不可避免,对于这些中断,原本的rots软件系统会逐个获取并实时进行耳机的通断操作,这就会造成浪费大量系统资源对无意义的中断信号进行实际操作。更严重的是,当人为故意保持耳机检测接触点处于临界状态时(不完全插入),瞬间的中断信号过多造成系统操作过于频繁,进一步导致整个设备系统崩溃。

故此,本发明实施例提供了一种设备信号过滤方法、装置、系统和计算机可读存储介质,通过添加系统定时检测功能,在计时时间内有新的通断信号产生时,则重新计时。直到在计时时间内没有新的通断信号产生时,则说明外接设备处于相对稳定的状态,此时可以依据当前的通断信号控制外接设备的通断。通过软件定时检测的方式,在过滤掉无效的抖动信号的同时保证了有效信号的可靠获取,提升了外接设备工作的稳定性和可靠性。

接下来,详细介绍本发明实施例所提供的一种设备信号过滤方法。图2为本发明实施例提供的一种设备信号过滤方法的流程图,该方法包括:

s201:当检测到外接设备的通断信号时,开启计时功能。

外接设备在插拔过程中容易产生信号的抖动,在本发明实施例中所检测的通断信号可以包括外接设备的插拔信号。当外接设备设置有按键时,人为按键过程中也容易产生信号的抖动,此时通断信号可以包括按键中断信号。

外接设备的类型可以有多种,例如,耳机、键盘等。为了便于描述,在后续介绍中均以耳机为例展开说明。

耳机一般插入终端设备的gpio口,相应的,耳机插拔过程中产生的插拔信号为gpio中断信号。考虑到在耳机插拔操作时,gpio检测段接触点的细微变化会造成频繁的状态改变,耳机在较短时间内发生多次gpio状态改变。为了消除耳机插拔时抖动的影响,可以对耳机gpio中断信号的时间间隔进行检测。

在实际应用中,可以设置一个基于系统定时器(ostimer)的计时回调函数,当中断回调函数检测到有通断信号存在时,触发计时回调函数开启计时功能。

以耳机为例,可以在检测耳机插拔操作的中断回调函数和向系统端反馈gpio中断信号的流程中间添加系统定时检测功能。

s202:判断在预设的计时时间内是否有新的通断信号产生。

当外接设备存在信号抖动时,在较短的时间间隔内不断会有通断信号产生;当外接设备不存在信号抖动时,两个通断信号之间的时间间隔会较长。

在本发明实施例中,可以将外接设备在信号抖动期间的通断信号称作无效信号,在外接设备与终端设备进入相对稳定的连接或断开状态时的通断信号称作有效信号。

在预设的计时时间内有新的通断信号产生时,则说明存在抖动现象,此时可以执行s203;在预设的计时时间内没有新的通断信号产生时,则说明外接设备处于相对稳定的连接或断开状态,当前的通断信号为有效信号,此时可以执行s204。

s203:重新启动计时功能,并返回判断在预设的计时时间内是否有新的通断信号产生的步骤。

s204:依据当前的通断信号控制外接设备的通断。

以耳机的插拔为例,每当检测到有gpio中断信号,则开启一次定时器,如果计时时间内未接收到新的gpio中断信号,则依据此次的gpio中断信号控制耳机的通断。如果检测到新的gpio中断信号,则对新的gpio信号开始一次新的计时,并舍弃之前的gpio信号。计时回调函数就如同一个滤波开关,对每个gpio中断信号进行过滤,仅依据有效的信号控制耳机的通断。

由上述技术方案可以看出,当检测到外接设备的通断信号时,开启计时功能;判断在预设的计时时间内是否有新的通断信号产生;在计时时间内有新的通断信号产生时,则说明存在抖动现象,此时可以重新启动计时功能,并重新判断在预设的计时时间内是否有新的通断信号产生。在计时时间内没有新的通断信号产生时,则说明外接设备处于相对稳定的连接或断开状态,当前的通断信号为有效信号,此时可以依据当前的通断信号控制外接设备的通断。通过设置定时功能对外接设备的每个通断信号进行判断,可以在过滤掉由硬件抖动产生的无效信号的同时,保证有效信号获取的可靠性,从软件角度提升终端设备操作系统反馈的时效性和稳定性,降低相关系统资源的浪费和可能发生的系统崩溃,提升了外接设备工作的稳定性和可靠性。

计时时间的取值可以根据通断信号的类型设置。例如,对于耳机的插拔信号,计时时间可以精确到毫秒级;对于按键的按键中断信号,计时时间可以精确到微秒级。

在本发明实施例中,可以针对于不同类型的通断信号设置不同的中断回调函数,不同类型的中断回调函数对应的计时回调函数的计时时间不同。

在实际应用中,可以利用各类中断回调函数实时检测是否有通断信号;当目标中断回调函数检测到通断信号时,触发相对应的计时回调函数开启计时功能。

对于计时时间取值的设置,在本发明实施例中,可以利用逻辑分析仪,获取外接设备连接测试的无效中断信号的无效时间间隔以及有效中断信号的有效时间间隔;将无效时间间隔与有效时间间隔的中间值作为计时时间。

其中,中间值可以是无效时间间隔与有效时间间隔的平均值,也可以是处于无效时间间隔和有效时间间隔之间的一个数值。

以耳机插拔为例,可以使用逻辑分析仪抓取大量耳机插拔压力测试的gpio中断信号波形,基于插拔测试可以发现每次拔插gpio口产生的多次无效中断信号间隔均小于20ms,而插拔测试中以极快速度拔插耳机时每次有效信号的间隔均大于100ms,绝大多数情况下大于200ms,故在本发明实施例中,针对于耳机的插拔操作,可以使用50ms这个中间值为计时时间来保证有效信号不丢失的情况下过滤掉无效的中断信号。

通过设置不同类型的中断回调函数,可以实现对外接设备不同类型的通断信号的检测。并且每个中断回调函数所触发的计时回调函数的计时时间不同,保证了对不同类型的通断信号进行精确的过滤。

考虑到在实际应用中,外接设备与终端设备处于连接状态时,终端设备可能会出现断电的情况。当终端设备上电后,会再次检测到外接设备的通断信号,为了避免重新进入定时检测的流程,终端设备上电后可以检测是否有外接设备连接;当检测到有外接设备连接时,则向外接设备供电;当没有外接设备连接时,则执行当检测到外接设备的通断信号时,开启计时功能的步骤。

终端设备上电后,通过检测是否有外接设备连接,可以保证在外接设备稳定接入的情况下,直接向外接设备供电,避免了终端设备重新进入定时检测的流程,保证了外接设备的及时供电。

在本发明实施例中,可以针对于不同的检测需求,调整计时时间的取值。在终端设备上可以设置用户操作界面,用户可以在该操作界面上输入计时时间调整指令,在计时时间调整指令中携带有新的计时时间以及计时回调函数标识。当终端设备的操作系统接收到计时时间调整指令时;可以将新的计时时间替换计时回调函数标识所对应的计时回调函数的计时时间。

通过对计时时间的调整,可以更好的适用于不同类型的外接设备信号抖动的检测,提升了信号过滤的准确性。

考虑到外接设备与终端设备连接时,可能会存在插头的接触点一直处于临界状态,导致不断有通断信号产生的情况,针对于该种情况,为了便于用户及时调整外接设备与终端设备的连接,可以设置提示机制。

具体的,在重新启动计时功能之后,终端设备的操作系统可以统计连续重启计时功能的次数;当次数大于或等于预设值时,则说明外接设备与终端设备的连接一直处于不稳定状态,此时可以进行告警提示。

告警提示的方式可以有多种,例如,可以在终端设备上展示调整外接设备连接的提示信息,也可以播放语音提示。

通过设置告警提示,可以便于用户及时发现外接设备连接异常的情况,从而及时调整外接设备与终端设备的连接。

图3为本发明实施例提供的一种设备信号过滤装置,包括开启单元31、判断单元32、重启单元33和控制单元34;

开启单元31,用于当检测到外接设备的通断信号时,开启计时功能;

判断单元32,用于判断在预设的计时时间内是否有新的通断信号产生;若是,则触发重启单元33;若否,则触发控制单元34;

重启单元33,用于重新启动计时功能,并返回判断在预设的计时时间内是否有新的通断信号产生的步骤;

控制单元34,用于依据当前的通断信号控制外接设备的通断。

可选的,还包括检测单元;

检测单元,用于终端设备上电后检测是否有外接设备连接;若是,则触发控制单元向外接设备供电;若否,则触发开启单元执行当检测到外接设备的通断信号时,开启计时功能的步骤。

可选的,针对于计时时间的设置过程,装置包括获取单元和作为单元;

获取单元,用于利用逻辑分析仪,获取外接设备连接测试的无效中断信号的无效时间间隔以及有效中断信号的有效时间间隔;

作为单元,用于将无效时间间隔与有效时间间隔的中间值作为计时时间。

可选的,开启单元具体用于利用利用各类中断回调函数实时检测是否有通断信号;当目标中断回调函数检测到通断信号时,触发相对应的计时回调函数开启计时功能;其中,不同类型的中断回调函数对应的计时回调函数的计时时间不同。

可选的,还包括接收单元和替换单元;

接收单元,用于接收计时时间调整指令;在计时时间调整指令中携带有新的计时时间以及计时回调函数标识;

替换单元,用于将新的计时时间替换计时回调函数标识所对应的计时回调函数的计时时间。

可选的,通断信号包括外接设备的插拔信号。

可选的,还包括统计单元和告警单元;

统计单元,用于统计连续重启计时功能的次数;

告警单元,用于当次数大于或等于预设值时,则进行告警提示。

图3所对应实施例中特征的说明可以参见图2所对应实施例的相关说明,这里不再一一赘述。

由上述技术方案可以看出,当检测到外接设备的通断信号时,开启计时功能;判断在预设的计时时间内是否有新的通断信号产生;在计时时间内有新的通断信号产生时,则说明存在抖动现象,此时可以重新启动计时功能,并重新判断在预设的计时时间内是否有新的通断信号产生。在计时时间内没有新的通断信号产生时,则说明外接设备处于相对稳定的连接或断开状态,当前的通断信号为有效信号,此时可以依据当前的通断信号控制外接设备的通断。通过设置定时功能对外接设备的每个通断信号进行判断,可以在过滤掉由硬件抖动产生的无效信号的同时,保证有效信号获取的可靠性,从软件角度提升终端设备操作系统反馈的时效性和稳定性,降低相关系统资源的浪费和可能发生的系统崩溃,提升了外接设备工作的稳定性和可靠性。

图4为本发明实施例提供的一种设备信号消抖系统40的结构示意图,包括外接设备41和终端设备42;外接设备41通过数据插头与终端设备42连接;

终端设备42,用于当检测到外接设备41的通断信号时,开启计时功能;判断在预设的计时时间内是否有新的通断信号产生;若是,则重新启动计时功能,并返回判断在预设的计时时间内是否有新的通断信号产生的步骤;若否,则依据当前的通断信号控制外接设备41的通断。

本发明实施例还提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上述任一项设备信号过滤方法的步骤。

以上对本发明实施例所提供的一种设备信号过滤方法、装置、系统和计算机可读存储介质进行了详细介绍。说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。

专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、或技术领域内所公知的任意其它形式的存储介质中。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1