CN105957324B - 遥控信号的解码方法、装置及系统 - Google Patents
遥控信号的解码方法、装置及系统 Download PDFInfo
- Publication number
- CN105957324B CN105957324B CN201610404293.9A CN201610404293A CN105957324B CN 105957324 B CN105957324 B CN 105957324B CN 201610404293 A CN201610404293 A CN 201610404293A CN 105957324 B CN105957324 B CN 105957324B
- Authority
- CN
- China
- Prior art keywords
- remote signal
- carrier frequency
- decoding
- default
- data frame
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G08—SIGNALLING
- G08C—TRANSMISSION SYSTEMS FOR MEASURED VALUES, CONTROL OR SIMILAR SIGNALS
- G08C17/00—Arrangements for transmitting signals characterised by the use of a wireless electrical link
- G08C17/02—Arrangements for transmitting signals characterised by the use of a wireless electrical link using a radio link
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Selective Calling Equipment (AREA)
Abstract
本发明公开了一种遥控信号的解码方法,包括:在对接收到的遥控信号进行解码时,遍历预设频率表中的第一预设载波频率,并依次按照遍历到的第一预设载波频率对遥控信号进行解码,获得遥控信号的数据帧,并获取数据帧的预设位置的字节值,直至当前解码获取的预设位置的字节值与预设校验值匹配;将匹配时解码获得的数据帧确定为遥控信号的解码结果。本发明还公开了一种遥控信号的解码装置及系统。本发明在遥控器发送频率误差较大时,接收端仍然能够通过遍历预设频率表中的第一预设载波频率,并查找到解码获取的与预设校验值匹配的预设位置的字节值,进而确定正确的遥控信号对应的载波频率,从而实现对遥控信号的正确解码。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种遥控信号的解码方法、装置及系统。
背景技术
目前,市面上大部分需要遥控的产品(比如电视机等),其遥控器所用的编码方式一般都是采用NEC标准进行编码的。
NEC红外信号实际上是基于38kHz载波的调制信号,按照标准NEC周期,将遥控指令对应的传输码值调制进载波中;大多数解码方案是,收到NEC红外信号后,先对NEC红外信号进行滤波,然后基于滤波后的信号的载波周期,解调出详细码值。
例如,一个NEC标准的遥控器,在需要发送遥控指令时,将会发送一帧波形数据,该波形数据携带两个与遥控指令对应的字节数据。同时,每个字节都要发送两次以对其进行校验。在发送波形数据时,都是通过脉冲宽度调制数据的,载波频率为38kHz。
如图1所示,每一个高电平由长度为560μs的38kHz载波构成。1bit的逻辑“1”发送时间是2.25ms,包括560μs的脉冲和(2.25ms-560μs)的空闲。而1bit逻辑“0”的发送时间为1.12ms,包括560μs的脉冲和(1.12ms-560μs)的空闲。
如图2所示,每一帧波形数据由一个9ms的脉冲开始,然后是4.5ms的空闲,作为引导;接着是两个8bit的遥控指令数据,各发送两次。第二次发送时,所有的位取反,用来验证第一次发送的遥控指令数据。
而遥控器一般是根据计数的方式来产生波形数据的。比如,遥控器的自身晶振标准是38kHz,每次计数周期是1s/38000=26.32us。若要产生9ms脉冲,则需要计数9ms/26.32us=9000us/26.32us=342次。若要产生4.5ms空闲,则需要计数4.5ms/26.32us=4500us/26.32us=171次。由于逻辑“1”包括560μs的脉冲和(2.25ms-560μs)的空闲,因此逻辑“1”需要计数脉冲的次数为560us/26.32us=21.28次,需要计数空闲的次数为(2250us-560us)/26.32us=64.21次,即,逻辑“1”总共需要计数的次数为21.28次脉冲+64.21次空闲。相应的,逻辑“0”总共需要计数的次数为21.28次脉冲+21.28次空闲。这种发送方式即被固化到遥控器软件中。
在接收端接收到遥控信号时,如图3所示,一般会先将接收到的遥控信号进行滤波,形成如图3所示的波形,没有载波,只有高低电平。此时,解码方式是判断每个电平的周期,比如:对于9000us的高电平及其之后的4500us的低电平,即可解码为引导码。如图4所示,若两个上升沿之间的时间间隔是2250us,即可解码为逻辑1。若两个上升沿之间的时间间隔是1120us,即可解码为逻辑0。
现有技术中,为了容错,实际判断会允许一定的误差,比如10%的误差,在两个上升沿之间的时间间隔在2475us和2025us之间时,即可解码为逻辑1,在两个上升沿之间的时间间隔在1232us和1008us之间时,即可解码为逻辑0。把所有逻辑1或0解码出来之后就是所传输的4个字节(32bits)数据。
现有技术中,当遥控器的晶振精度欠缺时,比如由38kHz变成48kHz,则会造成以下结果:每次计数周期变为1s/48000=20.83us。对遥控器来讲,由于其依然保持同样的计数发送方式,因此,要产生9ms脉冲,实际上是发出了20.83us*342次=7124us的脉冲;要产生4.5ms空闲:实际上是发出了20.83us*171次=3562us的空闲。要产生逻辑1,即21.28次脉冲+64.21次空闲,实际上产生了443.3us脉冲+1337.5us空闲,整个时间间隔为1780.8us,超出了允许的误差范围2475us~2025us,因此在解码时将不能正确解码出逻辑1。相应的,要产生逻辑0,即21.28次脉冲+21.28次空闲,实际上产生了443.3us脉冲+443.3us空闲,整个时间间隔为866.6us,超出了允许的误差范围1232us~1008us,因此在解码时将不能正确解码出逻辑0。
一般这种情况下,只有测量出实际遥控器发出的频率,人为地去调整接收端的接收的时间间隔,才能正常进行解码。
现有技术的缺陷在于,在遥控器的发送频率误差较大时,接收端不能正确解码。
发明内容
本发明的主要目的在于提供一种遥控信号的解码方法、装置及系统,旨在解决在遥控器发送频率误差较大时,接收端不能正确解码的技术问题。
本发明提供的遥控信号的解码方法包括:
在对接收到的遥控信号进行解码时,遍历预设频率表中的各个第一预设载波频率,并依次按照遍历到的第一预设载波频率对所述遥控信号进行解码,获得所述遥控信号对应的数据帧,并获取所述数据帧的预设位置的字节值,直至当前解码获取的预设位置的字节值与预设校验值匹配;
将匹配时解码获得的数据帧确定为所述遥控信号的解码结果。
优选地,所述遍历预设频率表中的各个第一预设载波频率的步骤之前,还包括:
在对接收到的遥控信号进行解码时,对接收到的遥控信号按照第二预设载波频率进行解码,获得所述遥控信号对应的数据帧,并获取所述数据帧的预设位置的字节值;
在获取的字节值与预设校验值不匹配时,执行所述遍历预设频率表中的各个第一预设载波频率的步骤。
优选地,所述遥控信号的解码方法还包括:
将匹配时解码采用的所述第一预设载波频率设置为所述第二预设载波频率。
优选地,在遍历所述预设频率表中的各个第一预设载波频率时,按照所述第一预设载波频率与第二预设载波频率之间的差值绝对值由小到大的顺序依次遍历。
此外,本发明提供的遥控信号的解码方法包括:
发射端在生成遥控指令的遥控信号时,将所述遥控信号的数据帧的预设位置编码为预设校验值;
接收端接收所述遥控信号并进行解码时,遍历预设频率表中的各个第一预设载波频率,并依次按照遍历到的第一预设载波频率对所述遥控信号进行解码,获得所述遥控信号对应的数据帧,并获取所述数据帧的预设位置的字节值,直至当前解码获取的预设位置的字节值与预设校验值匹配,将匹配时解码获得的数据帧确定为所述遥控信号的解码结果。
此外,本发明提供的遥控信号的解码装置包括:
解码模块,用于在对接收到的遥控信号进行解码时,遍历预设频率表中的各个第一预设载波频率,并依次按照遍历到的第一预设载波频率对所述遥控信号进行解码,获得所述遥控信号对应的数据帧,并获取所述数据帧的预设位置的字节值,直至当前解码获取的预设位置的字节值与预设校验值匹配;
确定模块,用于将匹配时解码获得的数据帧确定为所述遥控信号的解码结果。
优选地,所述遥控信号的解码装置还包括获取模块,所述获取模块用于在对接收到的遥控信号进行解码时,对接收到的遥控信号按照第二预设载波频率进行解码,获得所述遥控信号对应的数据帧,并获取所述数据帧的预设位置的字节值;
所述解码模块还用于在获取的字节值与预设校验值不匹配时,遍历预设频率表中的各个第一预设载波频率,并依次按照遍历到的第一预设载波频率对所述遥控信号进行解码,获得所述遥控信号对应的数据帧,并获取所述数据帧的预设位置的字节值,直至当前解码获取的预设位置的字节值与预设校验值匹配。
优选地,所述遥控信号的解码装置还包括设置模块,所述设置模块用于将匹配时解码采用的所述第一预设载波频率设置为所述第二预设载波频率。
优选地,所述解码模块还用于在遍历所述预设频率表中的各个第一预设载波频率时,按照所述第一预设载波频率与第二预设载波频率之间的差值绝对值由小到大的顺序依次遍历。
此外,本发明提供的遥控信号的解码系统包括发射端和接收端,所述发射端包括编码模块,所述编码模块用于在生成遥控指令的遥控信号时,将所述遥控信号的数据帧的预设位置编码为预设校验值;
所述接收端包括:解码模块,用于在对接收到的遥控信号进行解码时,遍历预设频率表中的各个第一预设载波频率,并依次按照遍历到的第一预设载波频率对所述遥控信号进行解码,获得所述遥控信号对应的数据帧,并获取所述数据帧的预设位置的字节值,直至当前解码获取的预设位置的字节值与预设校验值匹配;确定模块,用于将匹配时解码获得的数据帧确定为所述遥控信号的解码结果。
本发明提供的遥控信号的解码方法、装置及系统,在对接收到的遥控信号进行解码时,遍历预设频率表中的各个第一预设载波频率,并依次按照遍历到的第一预设载波频率对所述遥控信号进行解码,获得所述遥控信号对应的数据帧,并获取所述数据帧的预设位置的字节值,直至当前解码获取的预设位置的字节值与预设校验值匹配;将匹配时解码获得的数据帧确定为所述遥控信号的解码结果,从而在遥控器发送频率误差较大时,以至于遥控信号对应的载波频率发生变化时,接收端仍然能够通过遍历预设频率表中的第一预设载波频率,并查找到解码获取的与预设校验值匹配的预设位置的字节值,进而确定正确的遥控信号对应的载波频率,从而实现对遥控信号的正确解码。
附图说明
图1为遥控信号数据帧的逻辑“1”和逻辑“0”的调制信号示意图;
图2为遥控信号数据帧的调制信号示意图;
图3为遥控信号滤波后的波形图;
图4为遥控信号滤波后的逻辑“1”和逻辑“0”的波形图;
图5为本发明遥控信号的解码方法第一实施例的流程示意图;
图6为本发明遥控信号的解码方法第二实施例的流程示意图;
图7为本发明遥控信号的解码装置第一实施例的功能模块示意图;
图8为本发明遥控信号的解码装置第二实施例的功能模块示意图;
图9为本发明遥控信号的解码装置第三实施例的功能模块示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明提供一种遥控信号的解码方法,该方法可以基于用于接收遥控信号的接收端实现,例如电视机。参照图5,图5为本发明遥控信号的解码方法第一实施例的流程示意图,本发明提出的遥控信号的解码方法包括以下步骤:
步骤S10,在对接收到的遥控信号进行解码时,遍历预设频率表中的各个第一预设载波频率,并依次按照遍历到的第一预设载波频率对所述遥控信号进行解码,获得所述遥控信号对应的数据帧,并获取所述数据帧的预设位置的字节值,直至当前解码获取的预设位置的字节值与预设校验值匹配;
步骤S20,将匹配时解码获得的数据帧确定为所述遥控信号的解码结果。
在本实施例中,预设频率表中预设的第一预设载波频率的大小和数量可以根据实际需要进行设置。一般的,可以根据遥控信号常用的载波频率进行设置。例如,对于采用NEC标准编码的遥控器来说,其载波频率一般为38kHZ,则第一预设载波频率可以在38kHZ附近设置若干个。如表1所示,比38kHZ小的第一预设载波频率可以为34kHZ、30kHZ、26kHZ、22kHZ等等,比38kHZ大的第一预设载波频率可以为42kHZ、46kHZ、50kHZ、54kHZ等等。在设置第一预设载波频率时,可以每间隔预设频率间隔设置一个第一预设载波频率。如表1所示,每间隔4kHZ设置一个第一预设载波频率。
表1
上述预设位置可以根据实际需要进行设置。例如,可以为数据帧的第一个字节、第二个字节、第三个字节和/或第四个字节等。现有技术中,对应采用NEC标准编码的遥控信号来说,一般习惯采用第一和第三个字节传输遥控指令,第二和第四个字节作为取反验证使用。因此,本实施例中,数据帧的预设位置可以为第二个和/或第四个字节,更加符合程序员的编程习惯。本实施例及以下实施例均以预设位置为数据帧的第四个字节为例进行说明。
预设校验值可以根据实际需要进行设置。在遥控器发送与遥控指令对应的遥控信号时,需要将所述遥控信号的数据帧的预设位置编码为预设校验值。
在每次遍历到一个第一预设载波频率时,都需要执行以下步骤:先按照当前遍历到的第一预设载波频率对遥控信号的数据帧进行解码,获取数据帧,以及获取数据帧的预设位置的字节值。然后判断当前解码获得的预设位置的字节值与预设校验值是否匹配。若不匹配,则继续遍历下一个第一预设载波频率。若匹配,则停止遍历,并将当前解码获得的数据帧确定为遥控信号的解码结果。
本发明提供的遥控信号的解码方法,在对接收到的遥控信号进行解码时,遍历预设频率表中的各个第一预设载波频率,并依次按照遍历到的第一预设载波频率对所述遥控信号进行解码,获得所述遥控信号对应的数据帧,并获取所述数据帧的预设位置的字节值,直至当前解码获取的预设位置的字节值与预设校验值匹配,并将匹配时解码获得的数据帧确定为所述遥控信号的解码结果,从而在遥控器发送频率误差较大时,以至于遥控信号对应的载波频率发生变化时,接收端仍然能够通过遍历预设频率表中的第一预设载波频率,并查找到解码获取的与预设校验值匹配的预设位置的字节值,进而确定正确的遥控信号对应的载波频率,从而实现对遥控信号的正确解码。
进一步的,基于本发明遥控信号的解码方法的第一实施例,本发明还提出了遥控信号的解码方法的第二实施例,参照图6,图6为本发明遥控信号的解码方法第二实施例的流程示意图,步骤S10之前,所述遥控信号的解码方法还包括:
步骤S30,在对接收到的遥控信号进行解码时,对接收到的遥控信号按照第二预设载波频率进行解码,获得所述遥控信号对应的数据帧,并获取所述数据帧的预设位置的字节值;
步骤S40,判断获取的字节与预设校验值是否匹配;
在获取的字节值与预设校验值不匹配时,执行步骤S10。
在获取的字节值与预设校验值匹配时,则执行步骤S50。
步骤S50,将按照第二预设载波频率解码获得的数据帧确定为遥控信号的解码结果。
在本实施例中,第二预设载波频率可以为预先存储于接收端中的。例如,若接收端对应的遥控器采用NEC编码标准,载波频率为38kHZ,则第二预设载波频率可以设置为38kHZ。若遥控器发送频率的误差在允许范围内,则接收端可以直接根据预存的第二预设载波频率进行正确解码,此时,解码获得的数据帧的预设位置的字节值即为预设校验值。但是,若遥控器发送频率的误差在允许范围之外时,则接收端将不能按照第二预设载波频率进行正确解码,此时,预设校验值的位置将会有所偏差,导致预设位置上的字节将会与预设校验值不匹配。因此,将会遍历预设频率表中的各个第一预设载波频率,以确定遥控信号实际对应的载波频率,进而能够按照正确的载波频率进行正确解码。
例如,若接收端存储的第二预设载波频率为38kHZ,而遥控器发送的遥控信号对应的载波频率偏差至46kHZ。因此,在接收端接收到遥控信号时,首先按照38kHZ进行解码,此时解码获得的数据帧的第四个字节将不会与预设校验值匹配。因此,将遍历预设频率表中的各个第一预设载波频率。在遍历到除46kHZ以外的第一预设载波频率时,解码获得的数据帧的第四个字节不会与预设校验值匹配。而在遍历到46kHZ的第一预设载波频率时,则解码获得的数据帧的第四个字节将会与预设校验值匹配,因此停止遍历,并将按照46kHZ进行解码获得的数据帧确定为遥控信号的解码结果。
可选的,预设频率表中第一预设载波频率根据第二预设载波频率设置,可以第二预设载波频率为基准的等差序列,公差为预设频率间隔。如表1所示,第二预设载波频率为38kHZ,预设频率间隔为4kHZ,对应的等差序列为22kHZ、26kHZ、30kHZ、34kHZ以及42kHZ、46kHZ、50kHZ、54kHZ。等差序列所对应的项数可以根据实际需要进行设置,在此不作限定。
由于遥控器的发送频率产生误差属于个别情况,因此,不需要每次都进行遍历。本实施例在遍历预设频率表之前,先按照第二预设载波频率进行解码,有效地提高了解码效率。
进一步的,基于本发明遥控信号的解码方法的第二实施例,本发明还提出了遥控信号的解码方法的第三实施例,所述遥控信号的解码方法还包括:
将匹配时解码采用的所述第一预设载波频率设置为所述第二预设载波频率。
例如,若接收端存储的第二预设载波频率为38kHZ,而遥控器发送的遥控信号对应的载波频率偏差至46kHZ。在遍历到46kHZ的第一预设载波频率时,则解码获得的数据帧的第四个字节将会与预设校验值匹配,因此停止遍历,并将按照46kHZ进行解码获得的数据帧确定为遥控信号的解码结果。因此,匹配时解码对应的第一预设载波频率即为46kHZ。因此,还可以将46kHZ设置为所述第二预设载波频率。因此,在接收端再次接收到遥控信号时,将会先按照46kHZ对遥控进行解码。由于遥控器发送的遥控信号发送偏差时,可能不会继续偏差下去,或者可能偏差的速度不会那么快,至少某一段时间内的发送频率会持续保持在46kHZ,因此,接收端可以将遥控器当前的发送频率保存起来,即保存为第二预设载波频率,以便在下次再次接收到遥控信号时,能够高效的进行解码。除此之外,在更换遥控器时,也可能造成遥控信号的发送频率发生变化,因此只要在使用更换后的遥控器的期间,其对应的遥控信号的发送频率一般不会变化,通过保存更换后的遥控器对应的发送频率,能够高效的进行解码。
进一步的,基于本发明遥控信号的解码方法的第二或第三实施例,本发明还提出了遥控信号的解码方法的第四实施例,在遍历所述预设频率表中的各个第一预设载波频率时,按照所述第一预设载波频率与第二预设载波频率之间的差值绝对值由小到大的顺序依次遍历。
以表1为例,第二预设载波频率假设为38kHZ,则先遍历34kHZ和42kHZ,然后遍历30kHZ和46kHZ,以此类推。若两个第二预设载波频率与第二预设载波频率之间的差值绝对值相等,则这两个第二预设载波频率遍历的顺序可以随机设置,在此不作限定。
由于遥控器对应的发送频率发生变化时,一般不会跳跃过大,先遍历与第二预设载波频率相差小的第一预设载波频率,能够更加快速的确定当前遥控信号对应的载波频率,进一步有效地提高了解码效率。
本发明进一步提供一种遥控信号的解码方法,该方法可以基于用于发射端(如遥控器)和上述接收端实现。本发明提出的遥控信号的解码方法包括:
发射端在生成遥控指令的遥控信号时,将所述遥控信号的数据帧的预设位置编码为预设校验值;
接收端接收所述遥控信号并进行解码时,遍历预设频率表中的各个第一预设载波频率,并依次按照遍历到的第一预设载波频率对所述遥控信号进行解码,获得所述遥控信号对应的数据帧,并获取所述数据帧的预设位置的字节值,直至当前解码获取的预设位置的字节值与预设校验值匹配,将匹配时解码获得的数据帧确定为所述遥控信号的解码结果。
在本实施例中,在用户按下遥控器的按键时,即可视为接收到了遥控指令。则遥控器将根据接收到的遥控指令生成遥控信号。在编码生成数据帧时,除了将数据帧中的相应字节编码为遥控指令外,还需要在预设位置上编码为预设校验值。例如,预设校验值可以为第四个字节,可以固定为0xaa。
接收端的实施方式可以参照上述各个遥控信号的编码方法的各个实施例,在此不再赘述。
本发明提供的遥控信号的解码方法,在生成遥控指令的遥控信号时,将所述遥控信号的数据帧的预设位置编码为预设校验值,其中,在接收端对所述遥控信号进行解码时,遍历预设频率表中的各个第一预设载波频率,并依次按照遍历到的第一预设载波频率对所述遥控信号进行解码,获得所述遥控信号对应的数据帧,并获取所述数据帧的预设位置的字节值,直至当前解码获取的预设位置的字节值与预设校验值匹配,将匹配时解码获得的数据帧确定为所述遥控信号的解码结果,从而在遥控器发送频率误差较大时,以至于遥控信号对应的载波频率发生变化时,接收端仍然能够通过遍历预设频率表中的第一预设载波频率,并查找到解码获取的与预设校验值匹配的预设位置的字节值,进而确定正确的遥控信号对应的载波频率,从而实现对遥控信号的正确解码。
本发明进一步提供一种遥控信号的解码装置。
参照图7,图7为本发明遥控信号的解码装置第一实施例的功能模块示意图,本发明提供的遥控信号的解码装置包括:
解码模块10,用于在对接收到的遥控信号进行解码时,遍历预设频率表中的各个第一预设载波频率,并依次按照遍历到的第一预设载波频率对所述遥控信号进行解码,获得所述遥控信号对应的数据帧,并获取所述数据帧的预设位置的字节值,直至当前解码获取的预设位置的字节值与预设校验值匹配;
确定模块20,用于将匹配时解码获得的数据帧确定为所述遥控信号的解码结果。
在本实施例中,预设频率表中预设的第一预设载波频率的大小和数量可以根据实际需要进行设置。一般的,可以根据遥控信号常用的载波频率进行设置。例如,对于采用NEC标准编码的遥控器来说,其载波频率一般为38kHZ,则第一预设载波频率可以在38kHZ附近设置若干个。如表1所示,比38kHZ小的第一预设载波频率可以为34kHZ、30kHZ、26kHZ、22kHZ等等,比38kHZ大的第一预设载波频率可以为42kHZ、46kHZ、50kHZ、54kHZ等等。在设置第一预设载波频率时,可以每间隔预设频率间隔设置一个第一预设载波频率。如表1所示,每间隔4kHZ设置一个第一预设载波频率。
上述预设位置可以根据实际需要进行设置。例如,可以为数据帧的第一个字节、第二个字节、第三个字节和/或第四个字节等。现有技术中,对应采用NEC标准编码的遥控信号来说,一般习惯采用第一和第三个字节传输遥控指令,第二和第四个字节作为取反验证使用。因此,本实施例中,数据帧的预设位置可以为第二个和/或第四个字节,更加符合程序员的编程习惯。本实施例及以下实施例均以预设位置为数据帧的第四个字节为例进行说明。
预设校验值可以根据实际需要进行设置。在遥控器发送与遥控指令对应的遥控信号时,需要将所述遥控信号的数据帧的预设位置编码为预设校验值。
在每次遍历到一个第一预设载波频率时,都需要执行以下步骤:先按照当前遍历到的第一预设载波频率对遥控信号的数据帧进行解码,获取数据帧,以及获取数据帧的预设位置的字节值。然后判断当前解码获得的预设位置的字节值与预设校验值是否匹配。若不匹配,则继续遍历下一个第一预设载波频率。若匹配,则停止遍历,并将当前解码获得的数据帧确定为遥控信号的解码结果。
本发明提供的遥控信号的解码装置,在对接收到的遥控信号进行解码时,遍历预设频率表中的各个第一预设载波频率,并依次按照遍历到的第一预设载波频率对所述遥控信号进行解码,获取对应的数据帧的预设位置的字节值,直至当前解码获取的预设位置的字节值与预设校验值匹配;将匹配时解码获得的数据帧确定为所述遥控信号的解码结果,从而在遥控器发送频率误差较大时,以至于遥控信号对应的载波频率发生变化时,接收端仍然能够通过遍历预设频率表中的第一预设载波频率,并查找到解码获取的与预设校验值匹配的预设位置的字节值,进而确定正确的遥控信号对应的载波频率,从而实现对遥控信号的正确解码。
进一步的,基于本发明遥控信号的解码装置的第一实施例,本发明还提出了遥控信号的解码装置的第二实施例,参照图8,图8为本发明遥控信号的解码装置第二实施例的功能模块示意图,所述遥控信号的解码装置还包括获取模块30,所述获取模块30用于在对接收到的遥控信号进行解码时,对接收到的遥控信号按照第二预设载波频率进行解码,获得所述遥控信号对应的数据帧,并获取所述数据帧的预设位置的字节值;
所述解码模块10还用于在获取的字节值与预设校验值不匹配时,遍历预设频率表中的各个第一预设载波频率,并依次按照遍历到的第一预设载波频率对所述遥控信号进行解码,获得所述遥控信号对应的数据帧,并获取所述数据帧的预设位置的字节值,直至当前解码获取的预设位置的字节值与预设校验值匹配。
在本实施例中,第二预设载波频率可以为预先存储于接收端中的。例如,若接收端对应的遥控器采用NEC编码标准,载波频率为38kHZ,则第二预设载波频率可以设置为38kHZ。若遥控器发送频率的误差在允许范围内,则接收端可以直接根据预存的第二预设载波频率进行正确解码,此时,解码获得的数据帧的预设位置的字节值即为预设校验值。但是,若遥控器发送频率的误差在允许范围之外时,则接收端将不能按照第二预设载波频率进行正确解码,此时,预设校验值的位置将会有所偏差,导致预设位置上的字节将会与预设校验值不匹配。因此,将会遍历预设频率表中的各个第一预设载波频率,以确定遥控信号实际对应的载波频率,进而能够按照正确的载波频率进行正确解码。
例如,若接收端存储的第二预设载波频率为38kHZ,而遥控器发送的遥控信号对应的载波频率偏差至46kHZ。因此,在接收端接收到遥控信号时,首先按照38kHZ进行解码,此时解码获得的数据帧的第四个字节将不会与预设校验值匹配。因此,将遍历预设频率表中的各个第一预设载波频率。在遍历到除46kHZ以外的第一预设载波频率时,解码获得的数据帧的第四个字节不会与预设校验值匹配。而在遍历到46kHZ的第一预设载波频率时,则解码获得的数据帧的第四个字节将会与预设校验值匹配,因此停止遍历,并将按照46kHZ进行解码获得的数据帧确定为遥控信号的解码结果。
可选的,预设频率表中第一预设载波频率根据第二预设载波频率设置,可以第二预设载波频率为基准的等差序列,公差为预设频率间隔。如表1所示,第二预设载波频率为38kHZ,预设频率间隔为4kHZ,对应的等差序列为22kHZ、26kHZ、30kHZ、34kHZ以及42kHZ、46kHZ、50kHZ、54kHZ。等差序列所对应的项数可以根据实际需要进行设置,在此不作限定。
由于遥控器的发送频率产生误差属于个别情况,因此,不需要每次都进行遍历。本实施例在遍历预设频率表之前,先按照第二预设载波频率进行解码,有效地提高了解码效率。
进一步的,基于本发明遥控信号的解码装置的第二实施例,本发明还提出了遥控信号的解码装置的第三实施例,参照图9,图9为本发明遥控信号的解码装置第三实施例的功能模块示意图,所述遥控信号的解码装置还包括设置模块40,所述设置模块40用于将匹配时解码采用的所述第一预设载波频率设置为所述第二预设载波频率。
例如,若接收端存储的第二预设载波频率为38kHZ,而遥控器发送的遥控信号对应的载波频率偏差至46kHZ。在遍历到46kHZ的第一预设载波频率时,则解码获得的数据帧的第四个字节将会与预设校验值匹配,因此停止遍历,并将按照46kHZ进行解码获得的数据帧确定为遥控信号的解码结果。因此,匹配时解码对应的第一预设载波频率即为46kHZ。因此,还可以将46kHZ设置为所述第二预设载波频率。因此,在接收端再次接收到遥控信号时,将会先按照46kHZ对遥控进行解码。由于遥控器发送的遥控信号发送偏差时,可能不会继续偏差下去,或者可能偏差的速度不会那么快,至少某一段时间内的发送频率会持续保持在46kHZ,因此,接收端可以将遥控器当前的发送频率保存起来,即保存为第二预设载波频率,以便在下次再次接收到遥控信号时,能够高效的进行解码。除此之外,在更换遥控器时,也可能造成遥控信号的发送频率发生变化,因此只要在使用更换后的遥控器的期间,其对应的遥控信号的发送频率一般不会变化,通过保存更换后的遥控器对应的发送频率,能够高效的进行解码。
进一步的,基于本发明遥控信号的解码装置的第二或第三实施例,本发明还提出了遥控信号的解码装置的第四实施例,所述解码模块10还用于在遍历所述预设频率表中的各个第一预设载波频率时,按照所述第一预设载波频率与第二预设载波频率之间的差值绝对值由小到大的顺序依次遍历。
以表1为例,第二预设载波频率假设为38kHZ,则先遍历34kHZ和42kHZ,然后遍历30kHZ和46kHZ,以此类推。若两个第二预设载波频率与第二预设载波频率之间的差值绝对值相等,则这两个第二预设载波频率遍历的顺序可以随机设置,在此不作限定。
由于遥控器对应的发送频率发生变化时,一般不会跳跃过大,先遍历与第二预设载波频率相差小的第一预设载波频率,能够更加快速的确定当前遥控信号对应的载波频率,进一步有效地提高了解码效率。
本发明进一步提供一种遥控信号的解码系统。本发明提出的遥控信号的解码系统包括发射端(如遥控器)和接收端,所述发射端包括编码模块,所述编码模块用于在生成遥控指令的遥控信号时,将所述遥控信号的数据帧的预设位置编码为预设校验值;
所述接收端包括遥控信号的解码装置,所述遥控信号的解码装置包括解码模块,用于在对所述遥控信号进行解码时,遍历预设频率表中的各个第一预设载波频率,并依次按照遍历到的第一预设载波频率对所述遥控信号进行解码,获得所述遥控信号对应的数据帧,并获取所述数据帧的预设位置的字节值,直至当前解码获取的预设位置的字节值与预设校验值匹配;所述遥控信号的解码装置还包括确定模块,用于将匹配时解码获得的数据帧确定为所述遥控信号的解码结果。
在本实施例中,在用户按下遥控器的按键时,即可视为接收到了遥控指令。则遥控器将根据接收到的遥控指令生成遥控信号。在编码生成数据帧时,除了将数据帧中的相应字节编码为遥控指令外,还需要在预设位置上编码为预设校验值。例如,预设校验值可以为第四个字节,可以固定为0xaa。
接收端的实施方式可以参照上述各个遥控信号的编码装置的各个实施例,在此不再赘述。
本发明提供的遥控信号的解码系统,在生成遥控指令的遥控信号时,将所述遥控信号的数据帧的预设位置编码为预设校验值,其中,在接收端对所述遥控信号进行解码时,遍历预设频率表中的各个第一预设载波频率,并依次按照遍历到的第一预设载波频率对所述遥控信号进行解码,获得所述遥控信号对应的数据帧,并获取所述数据帧的预设位置的字节值,直至当前解码获取的预设位置的字节值与预设校验值匹配,将匹配时解码获得的数据帧确定为所述遥控信号的解码结果,从而在遥控器发送频率误差较大时,以至于遥控信号对应的载波频率发生变化时,接收端仍然能够通过遍历预设频率表中的第一预设载波频率,并查找到解码获取的与预设校验值匹配的预设位置的字节值,进而确定正确的遥控信号对应的载波频率,从而实现对遥控信号的正确解码。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
另外,在发明中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当人认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种遥控信号的解码方法,其特征在于,所述遥控信号的解码方法包括:
在对接收到的遥控信号进行解码时,遍历预设频率表中的各个第一预设载波频率,并依次按照遍历到的第一预设载波频率对所述遥控信号进行解码,获得所述遥控信号对应的数据帧,并获取所述数据帧的预设位置的字节值,直至当前解码获取的预设位置的字节值与预设校验值匹配;
将匹配时解码获得的数据帧确定为所述遥控信号的解码结果。
2.如权利要求1所述的遥控信号的解码方法,其特征在于,所述遍历预设频率表中的各个第一预设载波频率的步骤之前,还包括:
在对接收到的遥控信号进行解码时,对接收到的遥控信号按照第二预设载波频率进行解码,获得所述遥控信号对应的数据帧,并获取所述数据帧的预设位置的字节值;
在获取的字节值与预设校验值不匹配时,执行所述遍历预设频率表中的各个第一预设载波频率的步骤。
3.如权利要求2所述的遥控信号的解码方法,其特征在于,所述遥控信号的解码方法还包括:
将匹配时解码采用的所述第一预设载波频率设置为所述第二预设载波频率。
4.如权利要求2或3所述的遥控信号的解码方法,其特征在于,在遍历所述预设频率表中的各个第一预设载波频率时,按照所述第一预设载波频率与第二预设载波频率之间的差值绝对值由小到大的顺序依次遍历。
5.一种遥控信号的解码方法,其特征在于,所述遥控信号的解码方法包括:
发射端在生成遥控指令的遥控信号时,将所述遥控信号的数据帧的预设位置编码为预设校验值;
接收端接收所述遥控信号并进行解码时,遍历预设频率表中的各个第一预设载波频率,并依次按照遍历到的第一预设载波频率对所述遥控信号进行解码,获得所述遥控信号对应的数据帧,并获取所述数据帧的预设位置的字节值,直至当前解码获取的预设位置的字节值与预设校验值匹配,将匹配时解码获得的数据帧确定为所述遥控信号的解码结果。
6.一种遥控信号的解码装置,其特征在于,所述遥控信号的解码装置包括:
解码模块,用于在对接收到的遥控信号进行解码时,遍历预设频率表中的各个第一预设载波频率,并依次按照遍历到的第一预设载波频率对所述遥控信号进行解码,获得所述遥控信号对应的数据帧,并获取所述数据帧的预设位置的字节值,直至当前解码获取的预设位置的字节值与预设校验值匹配;
确定模块,用于将匹配时解码获得的数据帧确定为所述遥控信号的解码结果。
7.如权利要求6所述的遥控信号的解码装置,其特征在于,所述遥控信号的解码装置还包括获取模块,所述获取模块,其用于在解码模块遍历预设频率表中各个第一预设载波频率的步骤之前,用于在对接收到的遥控信号进行解码时,对接收到的遥控信号按照第二预设载波频率进行解码,获得所述遥控信号对应的数据帧,并获取所述数据帧的预设位置的字节值;
所述解码模块还用于在获取的字节值与预设校验值不匹配时,遍历预设频率表中的各个第一预设载波频率,并依次按照遍历到的第一预设载波频率对所述遥控信号进行解码,获得所述遥控信号对应的数据帧,并获取所述数据帧的预设位置的字节值,直至当前解码获取的预设位置的字节值与预设校验值匹配。
8.如权利要求7所述的遥控信号的解码装置,其特征在于,所述遥控信号的解码装置还包括设置模块,所述设置模块用于将匹配时解码采用的所述第一预设载波频率设置为所述第二预设载波频率。
9.如权利要求7或8所述的遥控信号的解码装置,其特征在于,所述解码模块还用于在遍历所述预设频率表中的各个第一预设载波频率时,按照所述第一预设载波频率与第二预设载波频率之间的差值绝对值由小到大的顺序依次遍历。
10.一种遥控信号的解码系统,包括发射端和接收端,其特征在于,所述发射端包括编码模块,所述接收端包括如权利要求6-9任一项所述的解码装置,其中,
所述编码模块,用于在生成遥控指令的遥控信号时,将所述遥控信号的数据帧的预设位置编码为预设校验值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610404293.9A CN105957324B (zh) | 2016-06-07 | 2016-06-07 | 遥控信号的解码方法、装置及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610404293.9A CN105957324B (zh) | 2016-06-07 | 2016-06-07 | 遥控信号的解码方法、装置及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105957324A CN105957324A (zh) | 2016-09-21 |
CN105957324B true CN105957324B (zh) | 2019-10-01 |
Family
ID=56908091
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610404293.9A Active CN105957324B (zh) | 2016-06-07 | 2016-06-07 | 遥控信号的解码方法、装置及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105957324B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108269392B (zh) * | 2018-01-10 | 2020-12-04 | 海信视像科技股份有限公司 | 一种红外遥控器的解码方法和装置 |
CN108882467B (zh) * | 2018-09-03 | 2020-11-20 | 深圳市汇德科技有限公司 | 一种基于led控制系统的抗干扰解码装置和一种led控制系统 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH1195767A (ja) * | 1997-09-16 | 1999-04-09 | Ricoh Co Ltd | 通信システム |
CN1489840A (zh) * | 2000-12-19 | 2004-04-14 | ��˹��ŵ�� | 关于卫星接收的改进 |
CN101188420A (zh) * | 2006-11-16 | 2008-05-28 | 普诚科技股份有限公司 | 可自动校正振荡频率范围的回路系统及其相关方法 |
CN102223322A (zh) * | 2010-04-15 | 2011-10-19 | 中兴通讯股份有限公司 | 一种频率偏差的估计方法及装置 |
CN102998970A (zh) * | 2012-11-30 | 2013-03-27 | 重庆市电力公司江津供电局 | 一种基于crio平台的高精度对时同步方法 |
CN104641610A (zh) * | 2012-05-11 | 2015-05-20 | 纽尔有限公司 | 用于估计频率误差的方法和装置 |
-
2016
- 2016-06-07 CN CN201610404293.9A patent/CN105957324B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH1195767A (ja) * | 1997-09-16 | 1999-04-09 | Ricoh Co Ltd | 通信システム |
CN1489840A (zh) * | 2000-12-19 | 2004-04-14 | ��˹��ŵ�� | 关于卫星接收的改进 |
CN101188420A (zh) * | 2006-11-16 | 2008-05-28 | 普诚科技股份有限公司 | 可自动校正振荡频率范围的回路系统及其相关方法 |
CN102223322A (zh) * | 2010-04-15 | 2011-10-19 | 中兴通讯股份有限公司 | 一种频率偏差的估计方法及装置 |
CN104641610A (zh) * | 2012-05-11 | 2015-05-20 | 纽尔有限公司 | 用于估计频率误差的方法和装置 |
CN102998970A (zh) * | 2012-11-30 | 2013-03-27 | 重庆市电力公司江津供电局 | 一种基于crio平台的高精度对时同步方法 |
Also Published As
Publication number | Publication date |
---|---|
CN105957324A (zh) | 2016-09-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7782804B2 (en) | Remote wireless activation and communication | |
CN105957324B (zh) | 遥控信号的解码方法、装置及系统 | |
CN101452643B (zh) | 一种学习型红外遥控器 | |
WO2018057518A1 (en) | Systems and methods for transmitting a wake-up radio signal to low power devices in a wireless communication system | |
CN101938493A (zh) | 生成并实施一用于更高数据率的讯号协议和接口 | |
WO2010117340A1 (en) | Power line carrier data systems and methods | |
CN102484853B (zh) | 无线通信装置 | |
EP3675375A1 (en) | Frequency hopping control method, control device, transmitter and receiver | |
US10652966B2 (en) | Mitigating distortion in coded light | |
CN1106101C (zh) | 具有超线性积分器的解码电路及方法 | |
CN103763822B (zh) | 控制信息传输系统,控制信息发送、接收方法及设备 | |
CN101799971A (zh) | 遥控方法以及遥控系统 | |
CN101640540A (zh) | 数字信号解码方法 | |
CN203025931U (zh) | 一种基于单片机的无线编码解码的遥控器 | |
HK1083677A1 (en) | System and apparatus for encoding using different waveforms | |
CN104517437A (zh) | 一种遥控器及其遥控方法 | |
CN105141360B (zh) | 用于实现文件传输的方法、装置和系统 | |
CN104639287A (zh) | 一种超声波通讯编码方法及系统 | |
US20120045022A1 (en) | Method and circuit for amplitude modulation of a carrier signal with a specified modulation factor | |
CN103763838A (zh) | 照明控制信息发送方法、设备及照明控制系统 | |
CN104956600A (zh) | 经由功率波形的通信 | |
CN105743872B (zh) | 一种数据传输系统及pcm通信协议的自动调整方法 | |
CN203982100U (zh) | 自动校时的电子时钟 | |
CN109298644A (zh) | 一种控制方法、装置及其系统 | |
CN106803762B (zh) | 一种应用于数字通信的编码方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |