本发明涉及传感、控制技术领域,尤其涉及一种红外遥控器信号压缩存储的方法。
背景技术:
红外通信作为一种短距离、可靠的无线控制方式,在家电领域已被广泛应用。但由于红外遥控器存在多种编码方式,且各种编码方式互不兼容,致使家中红外遥控器的数量随着家电设备的数量不断增多,造成红外遥控器存放管理不佳,使用时难以分辨设备相对应的红外遥控器。为此,研究一种红外遥控器信号的采集及压缩方法尤为重要,特别为实现红外遥控器的集成有着一定的研究意义。
市面上红外码调试方式不同、载波频率不固定、编码格式不同以及发送方式不同导致家中红外遥控器数量随家电设备的数量而增加。
技术实现要素:
本发明要解决的技术问题,在于提供一种红外遥控器信号压缩存储的方法,解决红外遥控器信号的兼容性,实现一个红外遥控器信号能够控制多种设备,以此减少红外遥控器信号的储存空间及使用时方便寻找,便于管理存放。
本发明是这样实现的:一种红外遥控器信号压缩存储的方法,所述方法需提供MCU处理器、红外采集电路、以及存储模块;所述方法为:
所述红外采集电路采集外部的红外遥控器发出的红外遥控器信号,采集到红外遥控器信号时,输出低电平,未采集到红外遥控器信号输出高电平;MCU处理器接收到红外遥控器信号后,对红外遥控器信号进行解码处理并采用压缩方式进行压缩,压缩后将压缩数据发送给存储模块进行存储。
进一步地,所述MCU处理器接收到红外遥控器信号后,对红外遥控器信号进行解码处理并采用压缩方式进行压缩,具体包括如下步骤:
步骤10、MCU处理器接收到红外遥控器信号,则记录第一周期高低电平时间,并标记该周期的红外遥控器信号对应的解码类型为N1,同时记录该周期的红外遥控器信号数据为Y1;
步骤11、采集下一周期高低电平时间;
步骤12、判断采集的周期高低电平时间是否被记录;是,则转入步骤11,否,则进入步骤13;
步骤13、记录此时采集的周期高低电平时间,并标记周期的红外遥控器信号对应的解码类型为N2,同时记录该周期的红外遥控器信号数据为Y2;以此类推,继续采集下一周期高低电平时间并进行处理;
步骤14、判断是否采集结束,否,则转入步骤11,是,则进入步骤15;
步骤15、记录最后周期高低电平时间,并标记最后周期的红外遥控器信号对应的解码类型为N3,同时记录最后周期的红外遥控器信号数据为Y3;
步骤16、将各个红外遥控器信号对应的解码类型和对应的数据进行压缩。
进一步地,所述MCU处理器采用型号为:LPC1125的MCU处理器。
进一步地,所述方法还需提供一测试按键和一红外发射电路;当要控制某一型号的设备时,先进行MCU处理器进行查找对应设备的红外遥控信号的解码类型,通过测试按键从存储模块中获取压缩过的对应的红外遥控信号,并通过红外发射电路发射出去,验证红外码的正确性。
进一步地,所述红外采集电路采用IRM-H938M3/TR238KHz一体化红外接收采集电路。
进一步地,所述存储模块采用w25q16Flash存储芯片。
本发明具有如下优点:本发明将各种的红外遥控器的信号进行采集起来,并记录此时采集的周期高低电平时间,并标记周期的红外遥控器信号对应的解码类型为N,同时记录该周期的红外遥控器信号数据为Y;对解码类型和数据进行压缩处理,实现一个红外遥控器信号能够控制多种设备,以此减少红外遥控器信号的储存空间及使用时方便寻找,便于管理存放。
附图说明
下面参照附图结合实施例对本发明作进一步的说明。
图1为本发明方法原理示意图。
图2为本发明压缩方式的流程示意图。
具体实施方式
请参阅图1和图2所示,一种红外遥控器信号压缩存储的方法,所述方法需提供MCU处理器、红外采集电路、以及存储模块;所述方法为:
所述红外采集电路采集外部的红外遥控器发出的红外遥控器信号,采集到红外遥控器信号时,输出低电平,未采集到红外遥控器信号输出高电平;MCU处理器接收到红外遥控器信号后,对红外遥控器信号进行解码处理并采用压缩方式进行压缩,压缩后将压缩数据发送给存储模块进行存储。信号采集使用MCU处理器的定时器捕捉模式。当检测到红外遥控器信号输入时,MCU处理器开始捕捉采集并同时采用压缩方式进行压缩。
其中,所述MCU处理器接收到红外遥控器信号后,对红外遥控器信号进行解码处理并采用压缩方式进行压缩,具体包括如下步骤:
步骤10、MCU处理器接收到红外遥控器信号,则记录第一周期高低电平时间,并标记该周期的红外遥控器信号对应的解码类型为N1,同时记录该周期的红外遥控器信号数据为Y1(匹配解码类型);在本实施例中,解码类型均用N表示,该周期的红外遥控器信号数据均用Y表示;不同的解码类型用N1、N2、N3…..Nn表示;不同的红外遥控器信号数据用Y1、Y2、Y3…..Yn表示;
步骤11、采集下一周期高低电平时间;
步骤12、判断采集的周期高低电平时间是否被记录;是,则转入步骤11,否,则进入步骤13;
步骤13、记录此时采集的周期高低电平时间,并标记周期的红外遥控器信号对应的解码类型为N2(即上一个解码类型为N1+1),同时记录该周期的红外遥控器信号数据为Y2;以此类推,继续采集下一周期高低电平时间并进行处理;
步骤14、判断是否采集结束,否,则转入步骤11,是,则进入步骤15;
步骤15、记录最后周期高低电平时间,并标记最后周期的红外遥控器信号对应的解码类型为N3(即上一个解码类型为N2+1),同时记录最后周期的红外遥控器信号数据为Y3;
步骤16、将各个红外遥控器信号对应的解码类型和对应的数据进行压缩。
所述方法还需提供一测试按键和一红外发射电路;当要控制某一型号的设备时,先进行MCU处理器进行查找对应设备的红外遥控信号的解码类型,通过测试按键从存储模块中获取压缩过的对应的红外遥控信号,并通过红外发射电路发射出去,验证红外码的正确性。这样能实现一个红外遥控器信号能够控制多种设备。
本实施例采用LPC1125MCU处理器处理采集红外信号、存储、发射。
本实施例所述红外采集电路采用IRM-H938M3/TR238KHz一体化红外接收采集电路;当采集到红外信号时,输出低电平;未采集到红外信号输出高电平。
本实施例存储模块采用w25q16Flash存储红外信号的压缩数据。
本实施例采用红外发射二极管进行红外信号的发射。
本实施例MCU采集完红外信号,将压缩的红外信号存储在w25q16Flash存储芯片上。
总之,本发明实现一个红外遥控器信号能够控制多种设备,以此减少红外遥控器信号的储存空间及使用时方便寻找,便于管理存放,且压缩的误码率低,减少存储容量,兼容性高。
虽然以上描述了本发明的具体实施方式,但是熟悉本技术领域的技术人员应当理解,我们所描述的具体的实施例只是说明性的,而不是用于对本发明的范围的限定,熟悉本领域的技术人员在依照本发明的精神所作的等效的修饰以及变化,都应当涵盖在本发明的权利要求所保护的范围内。