自适应红外信号解码方法、计算机装置及其控制装置与流程

文档序号:16365674发布日期:2018-12-22 08:25阅读:160来源:国知局
自适应红外信号解码方法、计算机装置及其控制装置与流程

本发明涉及红外线信号技术领域,尤其涉及一种自适应红外信号解码方法、实现这种方法的计算机装置以及这种计算机装置所使用的控制装置。

背景技术

现在的大部分电子设备配置有遥控器,例如空调、机顶盒,甚至是电风扇、饮水机等都配置有遥控器。现在的遥控器通常使用红外线信号向电子设备发送信号,电子设备接收到红外线信号后,需要对红外线信号进行解析,获取红外线信号的具体内容。

现在的红外线信号有多个编码方式,最常见的是nec编码方式以及rc5编码方式,由于两种编码方式并不相同,例如对红外信号的解码函数不相同,为了节省电子设备存储器的存储成本,现在的大部分电子设备只存储一种红外信号的解码函数,导致电子设备不能兼容多种编码方式的红外线遥控器。

为此,现有的一些电子设备通过硬件解码的方式来实现对多种不同编码方式的红外信号的兼容。例如,在电子设备上设置多个硬件解码电路,应用多个硬件解码电路将电子设备,在接收到红外线信号以后,通过与红外线信号相匹配的硬件解码电路对红外信号进行解码,以获取红外信号的数据。

但是,这种方式将导致电子设备需要设置能够满足多种不同红外信号编码方式的硬件解码电路,一方面将大大增加了电子设备的生产成本。另一方面,如果出现新的红外信号编码方式,则由于电子设备没有集成这种新的红外信号的硬件解码电路,导致电子设备无法对新的红外信号进行解码,导致电子设备对遥控器的兼容性很差。



技术实现要素:

本发明的主要目的是提供一种降低电子设备生产成本的自适应红外信号解码方法。

本发明的另一目的是提供一种能够实现上述自适应红外信号解码方法的计算机装置。

本发明的再一目的是提供一种能够实现上述自适应红外信号解码方法的计算机可读存储介质。

为了实现上述的主要目的,本发明提供的自适应红外信号解码方法包括获取一组红外信号,并获取红外信号的预设位置的一段信号的电平特征信息,根据所获取的电平特征信息确定红外信号的编码类型,并获取该编码类型对应的解码函数,应用解码函数对红外信号进行解码。

由于不同编码方式的红外信号在初始的一段信号电平特征是不相同的,这样,通过对红外信号预设位置的一段信号的电平特征进行分析,可以识别出红外信号的编码方式,然后从电子设备的存储器中获取这种编码方式对应的解码函数,使用相对应的解码函数对红外信号进行解码。

这样,电子设备上只需要存储多种红外信号编码方式的电平信号进行,并且存储多种红外信号的解码函数,通过对红外信号的电平特征进行分析来确定红外信号的编码类型。因此,本发明的技术方案不需要通过硬件解码电路对红外信号进行解码,而是通过软件程序实现对红外信号的解码,电子设备的生产成本较低。此外,即使出现新的红外信号编码方式,只需要对电子设备的软件程序进行升级即可,电子设备的兼容性更好。

一个优选的方案是,该组红外信号包括若干个红外信号数据,获取红外信号的预设位置的一段信号的电平特征信息包括获取预设位置的预设个数的红外信号数据。优选的,根据所获取的电平特征信息确定红外信号的编码类型包括:获取该段信号中每一个红外信号数据的电平信息,根据该段信号中多个红外信号数据的电平信息确定红外信号的编码类型

由此可见,电子设备以预设的频率对红外信号进行采样,并且记录每一个采集获得的红外信号数据,通过对预设位置的红外信号数据的持续时长、电平高低等特征信号的分析,可以快速的确定红外信号的编码方式。

进一步的方案是,获取该段信号中每一个红外信号数据的电平信息包括:获取当前红外信号数据的电平信息后,判断当前红外信号数据的电平是否与上一红外信号数据的电平相同,如是,累加电平持续时间,否则,记录电平变化的信息。

可见,通过对每一个红外信号数据的电平高低、持续时间进行判断分析,可以准确的记录预设位置的一段红外信号的电平特征信息,从而确保对红外信号编码方式判断的准确性。

更进一步的方案是,获取该段信号中一个红外信号数据后,还执行:判断当前的红外信号数据是否为协议解析结束数据,如是,根据当前红外信号数据前的多个红外信号数据的电平信息确定红外信号的编码类型。

由此可见,通过对协议解析数据的判断,可以快速的确定表征红外信号的编码方式的一段红外信号数据,让红外信号的编码方式确定更加快速、准确。

更进一步的方案是,确认当前的红外信号数据为协议解析结束数据后,存储用于编码类型判断多个红外信号数据的电平信息。

由此可见,在确认当前的红外信号数据为协议解析结束数据后,还对红外信号数据的电平信息进行存储,可以方便后续查找红外信号数据的操作,一旦红外信号的解码出错,可以快速的查找到用于判断红外信号编码方式的依据。

为了实现上述的另一目的,本发明还提供的计算机装置包括处理器、存储器,存储器存储有计算机程序,计算机程序被处理器执行时实现上述自适应红外信号解码方法的各个步骤。

为了实现上述的再一目的,本发明还提供的计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述的自适应红外信号解码方法的各个步骤。

附图说明

图1是本发明自适应红外信号解码方法实施例的流程图。

图2是本发明自适应红外信号解码方法实施例中确定红外信号编码类型的流程图。

以下结合附图及实施例对本发明作进一步说明。

具体实施方式

本发明的自适应红外信号解码方法应用在具有遥控器的电子设备上,优选的,遥控器上设置有红外线信号发射电路,而电子设备上设置有红外线信号接收电路,遥控器可以单向的向电子设备发送红外信号,而电子设备不需要向遥控器发送红外信号。本发明的自适应红外信号解码方法可以是由运行在电子设备上的软件程序实现。本发明的计算机装置可以是能够接收遥控器等发送的红外信号的电子设备,计算机可读存储介质是计算机上用于存储软件程序的介质,例如非易失性存储器。

自适应红外信号解码方法实施例:

用户使用遥控器向电子设备发送红外信号后,电子设备将接收到遥控器发送的红外信号,此时,红外信号接收电路需要向电子设备的处理器发送一个中断请求信号。参见图1,本实施例首先执行步骤s1,接收中断请求信号。

然后,执行步骤s2,接收一组红外信号,例如,用户通过遥控器向电子设备发送的红外信号往往是包含多个电平信号的一组红外信号,因此,步骤s2中由电子设备的处理器接收该组红外信号,并且获取该组红外信号中预设位置的一段红外信号的电平特征。

由于遥控器向电子设备发送的红外信号包含有用于表征红外信号编码方式的数据,通常,这组数据位于遥控器所发送的一组红外信号的头部,也就是最开始的若干个红外信号数据。因此,在接收一段红外信号以后,执行步骤s3,获取所接收到的一组红外信号中,用于表征红外信号编码方式的一段红外信号的电平特征信息,电平特征信息就是该段红外信号中高低电平的信息,即高电平信号与低电平信号的时序与持续时间。

然后,执行步骤s4,根据所获取的一段红外信号的电平特征信息来确定当前的红外信号的编码类型。由于红外信号有多种不同的编码类型,例如rc5编码类型或者nec编码类型,由于不同类型的红外信号在最初始的一段信号的电平特征信息并不相同,因此,通过对最初始的一段红外信号的电平特征信息进行识别,可以确定当前所接收的一段红外信号的编码类型。

优选的,根据多种不同编码方式的红外信号的用于表征编码方式的一段信号持续时间,来确定步骤s3中所获取的一段红外信号的时间长度,例如现有的多种不同红外编码方式中,用于表征红外信号编码方式的电平信号的持续时间最长的是12毫秒,则可以获取所接收的红外信号中最开始的12毫秒的一段信号的电平特征信息。

接着,执行步骤s5,根据步骤s4所确定的红外信号的编码类型,从电子设备的存储器中获取与该编码类型相匹配的解码函数。本实施例中,电子设备需要存储多种红外信号的解码函数,例如存储rc5编码类型的红外信号的解码函数,还存储nec编码类型的红外信号的解码函数。这样,在确定红外信号的编码类型后,可以快速的从电子设备的存储器中查找出于该编码类型相匹配的解码函数。

最后,执行步骤s6,应用步骤s5所获取的解码函数对红外信号进行解码。由于红外信号不单包含有用于表征红外信号编码类型的一段信号,还包括用于表征通信内容的数据,例如某一个按键被按下的数据等。因此,电子设备需要应用解码函数对所接收的红外信号进行解码,从而获取红外信号的通信内容的数据,并且根据所接收到的通信内容的数据进行相应的操作。

下面结合图2介绍步骤s4中如何根据所接收的一段红外信号的电平特征信息来确定红外信号的编码类型。首先,执行步骤s11,获取红外信号中预设位置的多个红外信号的数据。由于遥控设备发送的红外信号是模拟信号,而电子设备的处理器需要接收数字信号,因此,电子设备接收到遥控器发送的红外信号后,对红外信号进行采样,例如每间隔一段预设的时间采集一次红外信号的电平信号,如每间隔40微秒采集一次红外信号的电平信号,从而形成红外信号数据。红外信号数据是一个二进制表示的数字信号,如采集的红外信号的电平值大于预设的值,则红外信号数据为高电平信号,用二进制数字“1”表示,如采集的红外信号的电平值小于预设的值,则红外信号数据为低电平信号,用二进制数字“0”表示。这样,在获取一段红外信号以后,可以采集获得多个红外信号数据。

优选的,如果获取红外信号中最开始的12毫秒的信号,如果以40微秒作为间隔采集数据,则一共可以采集300个红外信号数据。因此,从步骤s12开始,对所采集获得的300个红外信号数据的电平特征进行分析。

然后,执行步骤s12,获取当前红外信号数据的电平特征以及持续时间。由于每一次采集的红外信号数据均可以被标记为高电平信号或者低电平信号,因此,可以根据采集到的红外信号数据的电平信号特征来确定该红外信号数据是否为高电平信号,即确定红外信号数据的电平特征。

接着,执行步骤s13,判断当前红外信号数据的电平是否与上一红外信号数据的电平信号相同,如是,执行步骤s14,否则,执行步骤s15。电子设备的处理器接收多个红外信号数据以后,将逐一的对红外信号数据的电平特征进行判断,并且记录每一个红外信号数据的电平特征。例如,记录之前接收的多个电平信号数据的电平均为高电平,则步骤s13中,判断当前红外信号数据的电平也是高电平,则步骤s13的判断结果为是,则执行步骤s14,累加电平的持续时间,即将上一红外信号数据到当前红外信号数据之前的间隔时间作为单位时间进行累加。例如,上一红外信号数据到当前红外信号数据之前的间隔时间为40微秒,则高电平的持续时间将累加40微秒。

如果当前红外信号数据的电平与上一红外信号数据的电平不相同,例如上一红外信号数据是高电平,而当前红外信号数据是低电平,则执行步骤s15,记录当前红外信号数据的电平变化,并且将当前红外信号数据的电平与上一红外信号数据之间的间隔时间作为上一红外信号数据的电平持续时间,计算出电平变化前的持续时间。例如,上一红外信号数据是高电平信号,并且高电平信号持续时间是860微秒,如果当前红外信号数据变为低电平信号,则记录当前红外信号数据是低电平信号的第一个信号,并且将当前红外信号数据的电平与上一红外信号数据之间的间隔时间,即40微秒计算为高电平的持续时间,则高电平的持续时间是900微秒。

接着,执行步骤s16,判断当前红外信号数据是否为协议解析结束数据,如是,执行步骤s17,否则,执行步骤s19。由于红外信号只是通过预设位置的一段红外信号来表征红外信号的编码方式,而这段红外信号往往有持续的时间,即采集的红外信号数据的数量是有限的,例如采集红外信号中最开始的300个数据。因此,步骤s16中,判断当前红外信号数据是为协议解析结束数据,可以根据红外信号数据的数量来判断,例如判断当前的红外信号数据是否为预设位置的最后一个红外信号数据,如是,则可以确定当前红外信号数据是协议解析结束数据。

当然,也可以根据红外信号数据的电平特征来判断当前红外信号数据是否为协议解析结束数据,如红外信号在协议解析结束时,形成连续变化的高低电平信号,如果当前红外信号数据是这些连续变化的高低电平信号中的最后一个,则也可以确定当前红外信号数据是协议解析结束数据。

如果当前红外信号数据不是协议解析结束数据,则执行步骤s19,获取下一个红外信号数据,并且返回步骤s12,获取新的红外信号数据的电平特征以及持续时间。如果当前红外信号数据是协议解析结束数据,则执行步骤s17,根据已经接收到的多个红外信号数据来确定遥控器发送的红外信号的编码类型。

例如,例如应用nec协议进行编码的红外信号的电平特征是9毫秒高电平+2.25毫秒低电平信号,而应用rc5协议进行编码的红外信号的电平特征是899微秒低电平+899微秒高电+899微秒低电平。可见,通过对特定时间长度内的多个红外信号数据的电平进行分析,可以确定红外信号的编码类型。在确定红外信号的编码类型以后,可以确定红外信号的编码类型标志,如rc5编码类型的标志或者nec编码类型的标志。

优选的,电子设备上设置有存储器,在接收到每一个红外信号数据的电平信息以后,将记录每一个红外信号数据的电平信息,从而便于对电平信息进行统计。

最后,执行步骤s18,电子设备存储当前协议的红外信号数据,即将用于表征红外信号编码方式的数据进行存储,以便于下一次对红外信号的编码类型进行判断时,使用已经存储的红外信号数据作为基础进行判断。

可见,本发明的方案是通过软件的方式对红外信号的编码类型进行判断,即通过对红外信号数据的高低电平的特征来确定红外信号的编码类型,这样,不需要在电子设备上设置用于对红外信号编码类型进行识别的硬件电路,一方面能够降低电子设备的生产成本。另一方面,在红外信号的编码类型更新时,不需要更新电子设备的硬件电路,只需要对电子设备的软件进行相应的更新即可,电子设备对红外信号的兼容性更好。

计算机装置实施例:

本实施例的计算机装置包括有处理器、存储器以及存储在存储器中并可在处理器上运行的计算机程序,例如用于实现上述信息处理方法的信息处理程序。处理器执行计算机程序时实现上述摄像进程启动方法的各个步骤。

例如,计算机程序可以被分割成一个或多个模块,一个或者多个模块被存储在存储器中,并由处理器执行,以完成本发明的各个模块。一个或多个模块可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述计算机程序在终端设备中的执行过程。

需要说明的是,终端设备可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。终端设备可包括,但不仅限于,处理器、存储器。本领域技术人员可以理解,本发明的示意图仅仅是终端设备的示例,并不构成对终端设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如终端设备还可以包括输入输出设备、网络接入设备、总线等。

本发明所称处理器可以是中央处理单元(centralprocessingunit,cpu),还可以是其他通用处理器、数字信号处理器(digitalsignalprocessor,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现成可编程门阵列(field-programmablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,处理器是终端设备的控制中心,利用各种接口和线路连接整个终端设备的各个部分。

存储器可用于存储计算机程序和/或模块,处理器通过运行或执行存储在存储器内的计算机程序和/或模块,以及调用存储在存储器内的数据,实现终端设备的各种功能。存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(smartmediacard,smc),安全数字(securedigital,sd)卡,闪存卡(flashcard)、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。

计算机可读存储介质:

终端设备集成的模块如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,该计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个摄像进程启动方法的各个步骤。

其中,计算机程序包括计算机程序代码,计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。计算机可读介质可以包括:能够携带计算机程序代码的任何实体或装置、记录介质、u盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。

当然,上述的方案只是本发明优选的实施方案,实际应用是还可以有更多的变化,例如,红外信号的编码类型可以根据实际需要调整,或者,红外信号的预设位置可以根据实际需要更改,这些改变都不影响本发明的实施,也应该包括在本发明的保护范围内。

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