CN101320516A - 波形学习电路对红外线解码的方法 - Google Patents
波形学习电路对红外线解码的方法 Download PDFInfo
- Publication number
- CN101320516A CN101320516A CNA2008103026722A CN200810302672A CN101320516A CN 101320516 A CN101320516 A CN 101320516A CN A2008103026722 A CNA2008103026722 A CN A2008103026722A CN 200810302672 A CN200810302672 A CN 200810302672A CN 101320516 A CN101320516 A CN 101320516A
- Authority
- CN
- China
- Prior art keywords
- buffer
- time clock
- high level
- clock number
- low level
- 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.)
- Granted
Links
Images
Landscapes
- Dc Digital Transmission (AREA)
Abstract
本发明涉及对红外遥控器发射波形进行解码并学习的实现方法。本发明所要解决的技术问题是提供一种全硬件实现的红外线解码的方法。波形学习电路对红外线解码的方法中,头码高电平计数器与头码低电平计数器用于还原头码波形;移位寄存器、第一缓存器、第二缓存器用于还原控制第一默认数据;位计数器、移位寄存器、第一缓存器或第二缓存器、第三缓存器用于还原控制第二默认数据;结束码高电平计数器与结束码高电平计数器用于还原结束码。本发明适用于红外遥控器波形学习电路的实现。
Description
技术领域
本发明涉及对红外遥控器发射波形进行解码并学习的实现方法。
背景技术
目前,学习型遥控器主要用单片机通过软件编程实现;在需求较高的情况下,其芯片价格相对于掩膜IC来说成本更高。因此,用全硬件实现学习型遥控器将成为各遥控器厂商的首选,而学习型遥控器的芯片其关键电路部分是对遥控器发射波形的解码并学习,波形学习电路的质量直接关系到遥控器的学习成功率。
发明内容
本发明所要解决的技术问题是提供一种全硬件实现的红外线解码的方法。
本发明为解决上述技术问题所采用的技术方案是,波形学习电路对红外线解码的方法,包括以下步骤:
a、波形学习启动;
b、采样逻辑发现有波形输入,进入下一步骤;
c、启动与输入波形同相位的时钟,启动头码高电平计数器记录高电平时的时钟脉冲个数,启动头码低电平计数器记录低电平时的时钟脉冲个数;
d、逻辑判断接收的头码数据是否有效,如是,保存高电平时的时钟脉冲个数至头码高电平计数器,保存低电平时的时钟脉冲个数至头码低电平计数器,进入下一步骤;如否,回到步骤a;
e、接收第一位控制数据,启动位高电平计数器记录高电平时的时钟脉冲个数;启动位低电平计数器记录低电平时的时钟脉冲个数;
f、逻辑判断接收的第一位控制数据是否有效,如是,将高电平时的时钟脉冲个数保存至第一缓存器,将低电平时的时钟脉冲个数保存至第二缓存器,位计数器加1,移入第一默认数据至移位寄存器;如否,回到步骤a;
g、接收下一位控制数据,位高电平计数器记录高电平时的时钟脉冲个数;位低电平计数器记录低电平时的时钟脉冲个数;将记录的高电平时的时钟脉冲个数与第一缓存器中存储的值比较、将记录的低电平时的时钟脉冲个数分别与第二缓存器中存储的值比较;当记录的高电平时的时钟脉冲个数与第一缓存器中存储的值相近,且低电平时的时钟脉冲个数与第二缓存器中存储的值相近时,则移入第一默认数据至移位寄存器,同时位计数器加1;当记录的高电平时的时钟脉冲个数与第一缓存器中存储的值相近,低电平时的时钟脉冲个数与第二缓存器中存储的值不相近时,则移入第二默认数据至移位寄存器,同时位计数器加1,将低电平时的时钟脉冲个数存入第三缓存器;当记录的高电平时的时钟脉冲个数与第一缓存器中存储的值不相近,低电平时的时钟脉冲个数与第二缓存器中存储的值相近时,则移入第二默认数据至移位寄存器,同时位计数器加1,将高电平时的时钟脉冲个数存入第三缓存器;
h、接收其余控制数据,位高电平计数器记录高电平时的时钟脉冲个数;位低电平计数器记录低电平时的时钟脉冲个数,并分别与对应的第一缓存器、第二缓存器中存储的值比较,如相近,则如向移位寄存器移入第一默认数据,同时位计数器加1;否则移入第二默认数据,同时位计数器加1;进入一下步骤;
i、判断是否收到结束码,如是,控制数据接收完毕,结束码高电平计数器启动,记录高电平时时钟脉冲个数至结束码高电平计数器,结束码低电平计数器启动,记录低电平时时钟脉冲个数至结束码低电平计数器,并保存结束码高电平计数器与结束码低电平计数器中的值;如否,返回本步骤;
所述头码高电平计数器与头码低电平计数器用于还原头码波形;所述移位寄存器、第一缓存器、第二缓存器用于还原控制第一默认数据;所述步骤g中,当记录的高电平时的时钟脉冲个数与第一缓存器中存储的值相近,低电平时的时钟脉冲个数与第二缓存器中存储的值不相近时,所述位计数器、移位寄存器、第一缓存器、第三缓存器用于还原控制第二默认数据;所述步骤g中,当记录的高电平时的时钟脉冲个数与第一缓存器中存储的值不相近,低电平时的时钟脉冲个数与第二缓存器中存储的值相近时,所述位计数器、移位寄存器、第二缓存器、第三缓存器用于还原控制第二默认数据;所述结束码高电平计数器与结束码高电平计数器用于还原结束码。
所述第一默认数据为数据0;第二默认数据为数据1;或者,所述第一默认数据为数据1;第二默认数据为数据0。
本发明的有益效果是,能简单、高效地实现全硬件的遥控器红外线波形学习。
附图说明
图1为第一种情况的遥控器编码示意图;
图2为第二种情况的遥控器编码示意图;
图3为本发明流程图;
图4为实施例NEC6122的编码波形。
具体实施方式
红外线遥控器发射波形(以下称为波形)的一般结构由头码、系统码、键码、结束码组成,其中系统码、键码在此统称为控制信息。其中,头码为波形开始标志,一般由一个高电平和一个低电平组成;结束码为波形结束标志,一般为一定宽度的脉冲。波形的载波频率在本实施例中为38KHZ。波形的编码通常采用脉冲宽度调制方式。如附图1、2所示,数据“0”和数据“1”的编码有两种情况,一种以低电平宽度的不同来区分编码,一种以高电平宽度的不同来区分编码。
实现波形学习,需先对波形进行解码,再记录头码高低电平宽度,以及控制信息的的具体数值。如图3所示,整个学习过程一共有6个状态(S0、S1、S2、S3、S4、S5),系统复位后处于状态S0,等待波形输入。一旦采样逻辑发现波形输入遥控器随即处于状态S1,同时与输入波形载波同相位的38K时钟启动;头码高电平计数器启动,计数器负责记录38K载波的时钟脉冲个数,在波形处于头码低电平阶段时,头码低电平计数器启动,记录内部38K时钟脉冲个数;在状态S1,遥控器完成对有效的头码进行学习记数,其结果保存在头码高电平计数器和头码低电平计数器中。头码接收完毕后,判断逻辑判断接收的数据是否有效,如果有效则遥控器进入状态S2,开始接收控制数据的第一位,否则遥控器处于状态S0,重新等待输入。状态S2与头码接收相似,位高电平计数器负责记录控制数据的高电平38K载波的时钟脉冲个数,位低电平计数器负责记录波形处于低电平时内部38K时钟脉冲个数。数据接收完毕后,判断逻辑判断接收是否有效,如果有效计数器中的值被存入缓存器1与缓存器2,位计数器加1,移位寄存器对第一位数据默认为数据“0”,因此移入一个数据“0”,然后遥控器进入状态S3;无效则进入状态S0。在状态S3,遥控器持续接收剩余的控制数据,每接收完一位数据都将把高电平计数器和低电平计数器中的值与缓存器1、缓存器2中的值进行比较,如果两者相近则移位积存器移入一个数据“0”,否则移入数据“1”同时位计数器加1。由图1、2可知,数据“1”与数据“0”要么高电平不同,要么低电平不同,当向移位积存器中移入第一个数据“1”的时候,将与缓存器数值相差很大的计数器中的值存入第三个缓存器。待所有数据接收完毕后,遥控器进入状态S4,接收结束码。结束码的接收与头码接收相似(图3中未示出),其结果被保存至结束码高电平计数器与结束码低电平计数器,当结束码为遥控器的一位数据时,结束码将作为一位控制数据被移入到移位积存器中,保存结束码的存储器将没有数据(即为0)。结束码接收完毕后,如果此时波形接收完毕,遥控器进入状态S5,否则返回状态S4;状态S5用于遥控器保存学得的结果,保存完毕后遥控器进入状态S0,进行下一轮波形的学习。遥控器需要保存头码高、低电平计数器,全部缓存器,位计数器,移位寄存器,结束码高、低电平计数器的值。在将这些值还原为波形时候,首先还原头码,然后根据位计数器中的值,移出移位寄存器的有效数据位,如果移位寄存器移出数据“0”则遥控器用缓存器1和2中的数据还原波形,如果移出数据“1”,则遥控器用缓存器1(或2)和3中的数据还原。在所有有效位被移出后,再还原结束码。从而得到与最初接收波形相同的遥控器控制波形。
实施例
以常用的NEC6122编码格式的波形为列,来更为清楚的说明该算法的学习过程。如附图4所示为NEC6122的编码波形,图中的黑色部分为38K载波。
当有波形输入后,遥控器学习功能启动,头码高、低电平计数器先后启动,记下头码的宽度,分别为342和171;判断逻辑得出该数值有效,遥控器随即进入接收第一位数据状态,接收完毕后缓存器1和2中的值分别为21、21,判断逻辑得出该值有效,位计数器加1,移位寄存器为XXX0(假定该寄存器宽度为64位);遥控器进入接收其它数据位状态,在接收到第7位数据的时候,位高、低电平计数器中的值分别为21、63,与缓存器1和2相比相差很远因此向移位寄存器移入一个数据“1”,63这个值也将被保存在缓存器3。当所有数据接收完后移位寄存器中的值为X00000010_11111101_10000000_011111111_1,位计数器中的值为33位。控制数据接收完毕后,开始接收结束码,由于该波形结束码被当作一位控制数据被接收。因此在该状态保存在结束码高、低电平计数器的值为0。那么最终将保存的数据有:342、171、21、21、63、33、X00000010_11111101_10000000_011111111_1、0和0。342和171还原为波形头码,21、21还原为数据“0”的波形,21、63还原为数据“1”的波形,33为波形的控制位数,0和0表明无结束码或者结束码已被发送控制数据代替。
Claims (4)
1.波形学习电路对红外线解码的方法,其特征在于,包括以下步骤
a、波形学习启动;
b、采样逻辑发现有波形输入,进入下一步骤;
c、启动与输入波形同相位的时钟,启动头码高电平计数器记录高电平时的时钟脉冲个数,启动头码低电平计数器记录低电平时的时钟脉冲个数;
d、逻辑判断接收的头码数据是否有效,如是,保存高电平时的时钟脉冲个数至头码高电平计数器,保存低电平时的时钟脉冲个数至头码低电平计数器,进入下一步骤;如否,回到步骤a;
e、接收第一位控制数据,启动位高电平计数器记录高电平时的时钟脉冲个数;启动位低电平计数器记录低电平时的时钟脉冲个数;
f、逻辑判断接收的第一位控制数据是否有效,如是,将高电平时的时钟脉冲个数保存至第一缓存器,将低电平时的时钟脉冲个数保存至第二缓存器,位计数器加1,移入第一默认数据至移位寄存器;如否,回到步骤a;
g、接收下一位控制数据,位高电平计数器记录高电平时的时钟脉冲个数;位低电平计数器记录低电平时的时钟脉冲个数;将记录的高电平时的时钟脉冲个数与第一缓存器中存储的值比较、将记录的低电平时的时钟脉冲个数分别与第二缓存器中存储的值比较;当记录的高电平时的时钟脉冲个数与第一缓存器中存储的值相近,且低电平时的时钟脉冲个数与第二缓存器中存储的值相近时,则移入第一默认数据至移位寄存器,同时位计数器加1;当记录的高电平时的时钟脉冲个数与第一缓存器中存储的值相近,低电平时的时钟脉冲个数与第二缓存器中存储的值不相近时,则移入第二默认数据至移位寄存器,同时位计数器加1,将低电平时的时钟脉冲个数存入第三缓存器;当记录的高电平时的时钟脉冲个数与第一缓存器中存储的值不相近,低电平时的时钟脉冲个数与第二缓存器中存储的值相近时,则移入第二默认数据至移位寄存器,同时位计数器加1,将高电平时的时钟脉冲个数存入第三缓存器;
h、接收其余控制数据,位高电平计数器记录高电平时的时钟脉冲个数;位低电平计数器记录低电平时的时钟脉冲个数,并分别与对应的第一缓存器、第二缓存器中存储的值比较,如相近,则如向移位寄存器移入第一默认数据,同时位计数器加1;否则移入第二默认数据,同时位计数器加1;进入一下步骤;
i、判断是否收到结束码,如是,控制数据接收完毕,结束码高电平计数器启动,记录高电平时时钟脉冲个数至结束码高电平计数器,结束码低电平计数器启动,记录低电平时时钟脉冲个数至结束码低电平计数器,并保存结束码高电平计数器与结束码低电平计数器中的值;如否,返回本步骤。
2.如权利要求1所述波形学习电路对红外线解码的方法,其特征在于,所述第一默认数据为数据0;第二默认数据为数据1。
3.如权利要求1所述波形学习电路对红外线解码的方法,其特征在于,所述第一默认数据为数据1;第二默认数据为数据0。
4.如权利要求1、2或3所述波形学习电路对红外线解码的方法,其特征在于,所述头码高电平计数器与头码低电平计数器用于还原头码波形;所述位计数器、移位寄存器、第一缓存器、第二缓存器用于还原控制第一默认数据;所述步骤g中,当记录的高电平时的时钟脉冲个数与第一缓存器中存储的值相近,低电平时的时钟脉冲个数与第二缓存器中存储的值不相近时,所述位计数器、移位寄存器、第一缓存器、第三缓存器用于还原控制第二默认数据;所述步骤g中,当记录的高电平时的时钟脉冲个数与第一缓存器中存储的值不相近,低电平时的时钟脉冲个数与第二缓存器中存储的值相近时,所述位计数器、移位寄存器、第二缓存器、第三缓存器用于还原控制第二默认数据;所述结束码高电平计数器与结束码高电平计数器用于还原结束码。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2008103026722A CN101320516B (zh) | 2008-07-09 | 2008-07-09 | 波形学习电路对红外线解码的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2008103026722A CN101320516B (zh) | 2008-07-09 | 2008-07-09 | 波形学习电路对红外线解码的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101320516A true CN101320516A (zh) | 2008-12-10 |
CN101320516B CN101320516B (zh) | 2010-09-29 |
Family
ID=40180543
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2008103026722A Expired - Fee Related CN101320516B (zh) | 2008-07-09 | 2008-07-09 | 波形学习电路对红外线解码的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101320516B (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101800558B (zh) * | 2009-12-31 | 2013-03-20 | 苏州华芯微电子股份有限公司 | Ppm编码同步解调方法 |
CN101944287B (zh) * | 2009-07-03 | 2013-03-27 | 炬力集成电路设计有限公司 | 一种用于红外遥控的解码方法和解码装置 |
CN103680113A (zh) * | 2012-09-11 | 2014-03-26 | 炬才微电子(深圳)有限公司 | 红外信号的解码处理方法及装置 |
CN103714690A (zh) * | 2013-12-23 | 2014-04-09 | 乐视致新电子科技(天津)有限公司 | 从遥控编码脉冲中解析出物理码的方法及装置 |
CN104240492A (zh) * | 2014-09-26 | 2014-12-24 | 深圳市中兴移动通信有限公司 | 一种调试红外遥控信号的方法、装置及终端 |
CN104484992A (zh) * | 2014-12-31 | 2015-04-01 | 广州科技贸易职业学院 | 基于可编程逻辑器件的红外遥控解码器 |
CN104992553A (zh) * | 2015-07-29 | 2015-10-21 | 上海斐讯数据通信技术有限公司 | 一种家电红外遥控波形的复制学习方法及系统 |
CN109523773A (zh) * | 2018-11-26 | 2019-03-26 | Oppo广东移动通信有限公司 | 一种控制指令的处理方法、移动终端及计算机存储介质 |
CN109859454A (zh) * | 2017-11-30 | 2019-06-07 | 珠海格力电器股份有限公司 | 基于红外协议的红外码发送电路、芯片、遥控设备及空调 |
CN111009111A (zh) * | 2019-12-12 | 2020-04-14 | 上海龙旗科技股份有限公司 | 一种基于spi总线的数据编码调制方法与系统 |
-
2008
- 2008-07-09 CN CN2008103026722A patent/CN101320516B/zh not_active Expired - Fee Related
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101944287B (zh) * | 2009-07-03 | 2013-03-27 | 炬力集成电路设计有限公司 | 一种用于红外遥控的解码方法和解码装置 |
CN101800558B (zh) * | 2009-12-31 | 2013-03-20 | 苏州华芯微电子股份有限公司 | Ppm编码同步解调方法 |
CN103680113B (zh) * | 2012-09-11 | 2017-06-06 | 炬才微电子(深圳)有限公司 | 红外信号的解码处理方法及装置 |
CN103680113A (zh) * | 2012-09-11 | 2014-03-26 | 炬才微电子(深圳)有限公司 | 红外信号的解码处理方法及装置 |
CN103714690A (zh) * | 2013-12-23 | 2014-04-09 | 乐视致新电子科技(天津)有限公司 | 从遥控编码脉冲中解析出物理码的方法及装置 |
CN103714690B (zh) * | 2013-12-23 | 2018-03-06 | 乐视致新电子科技(天津)有限公司 | 从遥控编码脉冲中解析出物理码的方法及装置 |
CN104240492A (zh) * | 2014-09-26 | 2014-12-24 | 深圳市中兴移动通信有限公司 | 一种调试红外遥控信号的方法、装置及终端 |
CN104484992A (zh) * | 2014-12-31 | 2015-04-01 | 广州科技贸易职业学院 | 基于可编程逻辑器件的红外遥控解码器 |
WO2017016107A1 (zh) * | 2015-07-29 | 2017-02-02 | 上海斐讯数据通信技术有限公司 | 一种家电红外遥控波形的复制学习方法及系统 |
CN104992553A (zh) * | 2015-07-29 | 2015-10-21 | 上海斐讯数据通信技术有限公司 | 一种家电红外遥控波形的复制学习方法及系统 |
CN104992553B (zh) * | 2015-07-29 | 2018-05-01 | 上海斐讯数据通信技术有限公司 | 一种家电红外遥控波形的复制学习方法及系统 |
CN109859454A (zh) * | 2017-11-30 | 2019-06-07 | 珠海格力电器股份有限公司 | 基于红外协议的红外码发送电路、芯片、遥控设备及空调 |
US11004331B2 (en) | 2017-11-30 | 2021-05-11 | Gree Electric Appliances (Wuhan) Co., Ltd | Infrared protocol-based infrared code transmission circuit, chip, remote control device and air conditioner |
CN109523773A (zh) * | 2018-11-26 | 2019-03-26 | Oppo广东移动通信有限公司 | 一种控制指令的处理方法、移动终端及计算机存储介质 |
CN111009111A (zh) * | 2019-12-12 | 2020-04-14 | 上海龙旗科技股份有限公司 | 一种基于spi总线的数据编码调制方法与系统 |
CN111009111B (zh) * | 2019-12-12 | 2021-08-27 | 上海龙旗科技股份有限公司 | 一种基于spi总线的数据编码调制方法与系统 |
Also Published As
Publication number | Publication date |
---|---|
CN101320516B (zh) | 2010-09-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101320516B (zh) | 波形学习电路对红外线解码的方法 | |
CN103141066B (zh) | 发送电路、接收电路、发送方法、接收方法、通信系统及其通信方法 | |
KR101874765B1 (ko) | 데이터 심볼 트랜지션 기반 클록킹에 의한 멀티-와이어 싱글 엔드 푸시-풀 링크 | |
CN100466504C (zh) | 读取致能产生器,读取致能信号产生方法,数据传输方法 | |
CN102467816A (zh) | 一种红外线遥控信号解码方法及装置 | |
CN106068505A (zh) | 共享总线上的比特分配以促成检错优化 | |
CN101571906A (zh) | 一种rfid接收机的解码器和解码方法 | |
US20170201370A1 (en) | Clock and data recovery for pulse based multi-wire link | |
CN102930808A (zh) | 显示面板驱动装置与其操作方法以及其源极驱动器 | |
EP3072238B1 (en) | Devices and methods for facilitating data inversion to limit both instantaneous current and signal transitions | |
US20180062887A1 (en) | Using full ternary transcoding in i3c high data rate mode | |
CN101916543A (zh) | 一种led显示系统的数据通信方法 | |
CN101944287A (zh) | 一种用于红外遥控的解码方法和解码装置 | |
JPH1127153A (ja) | Ppm方式を採用する変調回路、復調回路及び変復調回路システム | |
CN102055481B (zh) | 一种fm0和fm1码的解码方法和装置 | |
JP3616981B2 (ja) | 同期化装置 | |
CN112860609B (zh) | 实现i2c通讯的方法和滑板车及存储介质 | |
CN101520835B (zh) | 无线射频识别的传送端及接收端的数据处理装置及方法 | |
TW200620130A (en) | Design method for accessing electronic tag with partial hidden information | |
US6895542B2 (en) | Data recovery circuit and method and data receiving system using the same | |
US7843366B2 (en) | DVD EFM modulation architecture using two passes to reduce circuit size | |
CN117112030B (zh) | 一种寄存器组地址自动累加电路及应用方法 | |
CN101373974B (zh) | 一种编码方法及装置 | |
CN106559069A (zh) | 时序译码器 | |
CN118248186A (zh) | 数据传输电路、数据传输方法、芯片及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20100929 Termination date: 20210709 |
|
CF01 | Termination of patent right due to non-payment of annual fee |