M50462遥控器解码.doc_第1页
M50462遥控器解码.doc_第2页
M50462遥控器解码.doc_第3页
M50462遥控器解码.doc_第4页
M50462遥控器解码.doc_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

/* 1-00h;2-10h;3-08h;4-18h;5-04h;6-14h;7-0ch;8-1ch; */* 9-80h;0-90h;1+-88h;2+-98h;pd+-50h;pd_-48h;ld+-0cch; */* ld_-0dch;yl+-44h;yl_-54h;sd+-0c4h;sd_-0d4h;BZ-0D0h; */* TV/AV-5CH;PX-D8H;-.4 THEN NUMBER=1; END; if kk=01 then DO; NUMBER=NUMBER-1; IF NUMBER=0 THEN NUMBER=4; END; CALL DISPLAY(NUMBER); KEY=0; data2=0;END YTNUMBER;recieve: procedure interrupt 4 using 1; declare (k,ask) byte; disable; if data2=0e2h and dat0 then do; ri=0; jihao=sbuf; if jihao=bjihao then do; data2=0; p32=1; do k=1 to 2; if k=1 then sbuf=dat; if k=2 then sbuf=number; do while ti=0; end; ti=0; call time(1); end; p32=0; do while ri=0; end; ri=0; ask=sbuf; if ask=0ffh then do; ; end; /* data1=0ffh;dat=0; */ end; end; enable;end recieve;rem:procedure interrupt 2; declare k byte; disable; /* if data2=0e2h then goto int0end; */ k=16;loop1: call time(2); do while p33=0; end; th0=0; tl0=0; tr0=1; call time(2); do while p33=1; end; tr0=0; ah=th0; al=tl0; if ah=4 then cy=1; /* 11.0592Mhz */ else cy=0; data1=scl(data1,1); k=k-1; if k=8 then data2=data1; if k0 then goto loop1; if data2=0e2h then do; IF DATA1=54H THEN do;KEY=01;dat=0;end; /* YTNUMBER DEC KEY */ IF DATA1=44H THEN do;KEY=02;dat=0;end; /* YTNUMBER ADD KEY */ IF DATA1=00H THEN DAT=1; IF DATA1=10H THEN DAT=2; IF DATA1=08H THEN DAT=3; IF DATA1=18H THEN DAT=4; IF DATA1=04H THEN DAT=5; IF DATA1=14H THEN DAT=6; IF DATA1=0CH THEN DAT=7; IF DATA1=1CH THEN DAT=8; IF DATA1=80H THEN DAT=9; IF DATA1=90H THEN DAT=10; IF DATA1=88H THEN DAT=11; IF DATA1=98H THEN DAT=12; IF DATA1=50H THEN DAT=13; IF DATA1=48H THEN DAT=14; IF DATA1=40H THEN DAT=15; IF DATA1=4CH THEN DAT=16; IF DATA1=5CH THEN DAT=17; IF DATA1=0D8H THEN DAT=18; IF DATA1=0D0H THEN DAT=19; IF DATA1=0E8H THEN DAT=20; IF DATA1=0F8H THEN DAT=21; IF DATA1=0E4H THEN DAT=22; IF DATA1=0F4H THEN DAT=23; IF DATA1=0ECH THEN DAT=24;/* P34=0;CALL TIME(250);P34=1; */ end;int0end: ip=0; DO K=0 TO 3; /* important value */ CALL TIME(250); END; enable; end rem;main$program:data1=0;data2=0;dat=0;p32=0; /* set recieve mode */clk=1;Ale=1;p33=1;NUMBER=1;KEY=0;scon=50h;pcon=00h;tmod=21h;tl1=0fdh; /* 9600 baud rate for 11.0592Mhz */th1=0fdh;th0=0;tl0=0;tr1=1;es=1;ex1=1;bjihao=1;enable;call DISPLAY(NUMBER);DO WHILE 1=1; IF KEY=01 OR KEY=02 THEN DO; CALL YTNUMBER(KEY); END;end start;常用几种红外遥控器IC2008-11-26常用几种红外遥控器IC 1、WA1028,而合一遥控IC,内嵌uPD6122与TC9148遥控码。封装形式:DIP/SOP24/DICES2、WA1501,学习遥控器IC,可做为SAA3010、TC9148、UPD6121、M50462来使用,同时也可自学SAA3010、TC9148、UPD6121、M50462等遥控器的发码。而使之一机多控3、HS5104,8键红外遥控,配合风扇、暖风扇IC实现遥控功能。封装形式:DIP/SOP16/DICES4、HS3004,7个地址位,64组指令。兼容:M3004。封装形式:SOP20/DICES5、A6121/2,可设置32/64个功能键,有8 个地址位。兼容uPD6121/2。封装形式:SOP20/SOP24/DICES6、A3010,5位地址码,64组指令。兼容:SAA3010。封装形式:DIP28/DICES7、HS50560,兼容:M50560。封装形式:DIP20/DICES8、HS50462,可设置64个功能键,8*8的按键矩阵可发送76条指令,有两个地址位。兼容:M50462,SC50462。封装形式:SDIP24/SOP24/DICES9、HS7461,红外遥控发射电路,具有32个按键。封装形式:SOP24DICES10、HS8521,彩电红外遥控发射电路,具有三类不同的系统,每类系统最多拥有49个按键,可以提供147个编码。封装形式:SOP20/DICES11、HS9012,32个功能键,8种用户编码,6种双重按键功能,兼容:TC9012。封装形式:SOP20/DICES III种万用遥控器的比较分析 下面分析家用电器红外线遥控器I般原理的基础上,探讨了多合I遥控器的III种实现方式,比较III者各自的优缺点,重点介绍了最新开发出的代码型遥控器的工作原理与产品应用前景。 I.多合I遥控器的出现II.红外遥控器的工作原理III.万用遥控器(固定码遥控器)IV.学习型遥控器V.代码型遥控器VI.代码型遥控器应用前景I. 多合I遥控器的出现电视机.录像机.卫星接收机.机顶盒.VCD/DVD.LD/CD及组合音响等设备的不断普及,而这些家用电器无I例外的具备遥控功能。能同时控制多种遥控型设备的遥控器,称之为多合I遥控器(ALL-ON-ONE)。最早出现这类产品的遥控器就是通常所说的万用(能)遥控器(URC,Universal Remote Control),实际上,它并不能做到“万能”,更为准确地应称作为固定码万用遥控器(Preprogrammed URC)。随后,学习型遥控器(Recordable URC)又出现了。但学习型遥控器存在着操作学习过程繁琐,不X分可靠等缺点。考虑到上述两种多合I遥控器的缺点而从I个全新的角度开发出的新I代代码型遥控器(Code-based URC)便应运而生。万用遥控器为什么不能做到万用?学习型遥控器可以不断学习为什么还不能让人满意?代码型遥控器又有哪些特点和优点?这就是本文需要探讨的问题,而要搞清楚这些问题,首先必须了解红外遥控器的工作原理。II .红外遥控器遥控器其核心元器件就是编码芯片,将需要实现的操作指令例如选台.快进等事先编码,设备接收后解码再控制有关部件执行相应的动作。显然,接收电路及CPU也是与遥控器的编码I起配套设计的。编码是通过载波输出的,即所有的脉冲信号均调制在载波上,载波频率通常为38K。/* 1-00h;2-10h;3-08h;4-18h;5-04h;6-14h;7-0ch;8-1ch; */* 9-80h;0-90h;1+-88h;2+-98h;pd+-50h;pd_-48h;ld+-0cch; */* ld_-0dch;yl+-44h;yl_-54h;sd+-0c4h;sd_-0d4h;BZ-0D0h; */* TV/AV-5CH;PX-D8H;-.- -0D0H;CLK-0E8H;*/* TIME-0F8H;ON.T-0E4H;SEL-0F4H;INC-0ECH; */载波是电信号去驱动红外发光II极管,将电信号变成光信号发射出去,这就是红外光,波长范围在840nm到960nm之间。在接收端,需要反过来通过光电II极管将红外线光信号转成电信号,经放大.整形.解调等步骤,最后还原成原来的脉冲编码信号,完成遥控指令的传递,这是I个X分复杂的过程。红外线发射管通常的发射角度为30-45度之间,角度大距离就短,反之亦然。遥控器在光轴上的遥控距离可以大于8.5米,与光轴成30度(水平方向)或15度(垂直方向)上大于6.5米,在I些具体的应用中会充分考虑应用目标,在距离角度之间需要找到某种平衡。要实现多合I遥控器,涉及到如下几个主要问题:# 遥控器发出的编码信号驱动红外线发射管,必须发出波长范围在940nm左右的的红外光线,因为红外线接收器的接收II极管主要对这部分红外光信号敏感,如果波长范围不在此列,显然无法达到控制之目的。不过,几乎所有的红外家电遥控器都遵循这I标准。正因为有这I物理基础,多合I遥控器才有可能做成。# 遥控器发出I串编码信号只需要持续数Xms的时间,大多数是X多ms或I百多ms重复I次,I串编码也就包括X位左右到数X位II进制编码,换言之,每I位II进制编码的持续时间或者说位长不过2ms左右,频率只有500kz这个量级,要发射更远的距离必需通过载波,将这些信号调制到数Xkhz,用得最多的是38khz,大多数普通遥控器的载波频率是所用的陶瓷振荡器的振荡频率的1/12,最常用的陶瓷振荡器是455khz规格,故最常用的载波也就是455khz/12=37.9khz,简称38k载波。此外还有480khz(40k).440khz(37k).432khz(36k)等规格,也有200k左右的载波,用于高速编码。红外线接收器是I体化的组件,为了更有针对性地接收所需要的编码,就设计成以载波为中心频率的带通滤波器,只容许指定载波的信号通过。显然这是多合I遥控器应该满足的第II个物理条件。不过,家用电器多用38k,很多红外线接收器也能很好地接收频率相近的40k或36k的遥控编码。# I个设备受控,除了满足上面提到的两个基本物理条件外,最重要的变化多种多样的当然应该是遥控器发出I串II进制编码信号了,这也是不同的遥控器不能相互通用的主要原因。由于市场上出现成百上千的编码方式并存,并没有I个统I的国际标准,只有各芯片厂商事实上的标准,这也是模拟并替换各种原厂遥控器最大的难点。随着技术的不断发展,很多公司开发家电设备的遥控子系统时还不采用通用的编码芯片,而是用通用的单片机随心所欲地自编I些编码,这就使通用遥控的问题更加复杂化了。# 采用同样的编码芯片,也不意味着可以通用,因为还有客户码。客户码设计的最初本意就是为了不同的设备可以相互区分互不干扰。最初芯片厂商会从全局考虑给不同的家电厂商安排不同的客户码以规范市场,例如录像机和电视机就用不同的设备码,给甲厂分配的设备码和乙厂分配的设备码就区分在不同的范围内。# 采用同样的编码芯片.同样的客户码下,也不能意味着I定可以通用,因为对命令码的分配与使用上,仍然是没有固定的模式可以遵循,遥控器编码芯片简单的支持数X种命令码,多的上千种,但遥控器往往只有数X个键,甚至只有几个键,如何从中选取这数X个键,这些键如何分配使用,不同的系统设计师都自搞I套,这样I来事情就更复杂化了。下面以III菱公司推广的M50462遥控编码芯片为例,具体说明红外线遥控的基本工作原理。需要说明的是,介绍工作原理的目的是为了便于理解后面将要介绍的III种多合I遥控器实现方式的差别,与此无关的I些细节就给予忽略。例如关于0和1的编码有移频键控FSK.双相编码和脉距编码等多个系列,但对多合I遥控器的实现没有明显的影响,就不另做介绍。图I 是遥控编码芯片的应用例子图II 每I位的编码方式(以480khz为例)图III I个完整的帧编码III 万用遥控器(固定码遥控器) 在介绍M50462编码原理的时候可以看到该芯片可以直接支持8x8=64个键, III菱公司选了其中的部分键定义其功能,形成推荐的标准码表,见表I。万用遥控器就是以此为根据开发设计的。同I种编码芯片M50462,选择不同的客户码(最多4种),选取64键中的32键(假设遥控器做成32键盘,这种选法其方式之多就X分惊人了,也就是64选32的排列问题),还有可能选不同规格的陶瓷振荡器不在此讨论。这些因素考虑进入,就形成了该芯片的I种具体的应用,用I张简单的码表就可以概况。III菱推荐相应遥控的接收处理系统即III菱M50436-560SP,此外还有东芝TMP47C433AN被选为国内优选线路,松下MN15245SAY系统在国内亦有相当的市场,形成了III种流行的红外线遥控系统。早期很多生产厂商直接引进技术生产电视机。这样I来,采用同I核心技术的电视机其遥控器就基本确定下来了,遥控器可以通用或基本通用。但问题随之而来,家用电器以不再限于电视机和录像机等传统设备,VCD/DVD之类的数字设备大量上市,遥控处理技术不再局限于为数不多的几家大厂商,变成众多的厂商自定规范。而固定码万用遥控器是收集各厂产品的码表写到不可再更改的芯片中去,以后的新产品就无法支持了。这样I来,更加发现所谓的万用遥控器并不能“万用”。IV. 学习型遥控器学习型遥控器实际含义是记录各种不同类型的遥控器的编码波形,而对I些编码细节不予理会,需要配置较大容量的存储器给予支持,而且这些存储器的内容是可以随时在“学习”中改写的,这样I来通用性大大提高,很快成为多合I遥控器市场的主流产品。但是,学习型遥控器也存在这明显的缺点:I是学习过程中就只能记录其中的I次按键,在使用过程中发出的码也就始终是I种编码,有些编码芯片按I次键其中的某I位会反复跳变,称之为反转码,学习型遥控器就会出现操作混乱。学习型遥控器面临的另I个问题是帧的重复及部分重复的问题。学习型遥控器面临的第III个困难就是它每次学习的波型含有不可避免的偶然性,很可能某I次学习的波形正好偏离中值很多,但学习型遥控器仍然会忠实地保持这I较大的偏离,控制的效果就可想而知了。V. 代码型遥控器针对万用型遥控器和学习型遥控器的不足,I种采用设备码和命令码统I各种遥控编码的代码型遥控方案应运而生。设计需考虑的问题是如何“同化”不同遥控器发射信号之间的差异。遥控编码方式涉及很多方面,首先是数字0和1的表示(调宽还是调相,脉宽和占空比);其次是帧结构(引导码和结束码,客户码和命令码长度及发送方式);再次是帧间结构(仅发I次还是反复多次,多帧交替发送,帧间间隔变化);最后是载波频率,以38Khz居多,也有40Khz甚至200khz等特殊载波。设计相应电路和软件时对上述诸多因素加以分析.归纳,将编码特点用I串II进制位表示出来形成设备码,对应于I个具体的遥控器。同I个设备码下也就是同I个遥控器不同的按键则用命令码来表示。代码型遥控器用软件的方式对这些统I的编码进行解释,驱动I个个命令码按指定设备码格式加以“封装”,形成所需要的遥控信号,达到控制家电的目的。还是以前面的M50462编码芯片为例,其帧结构.0或1编码方式等归结为某种遥控器所有按键的共性部分,即设备码0x030a375c,任何按键信息归结为16位的命令码(不同于帧间的命令码,而是有更广的含义,指遥控编码按键的个性部分),例如按FC和I7相连的键,该芯片用于III菱公司的推荐的电视机遥控中,这个编码0x32用来表示静音,16位的命令码就是0xea4c,这个0xea4c在这里实际上包含了8位客户码0xea和8位命令码0x4c(对应0x32),只不过认为在前发送的是高位而已,按键的命令码为展成II进制就是1110 1010 0100 1100,正好是I个完整的帧编码。这样I来,设备码和命令码就包含了该编码芯片I次完整的发码过程,可以忠实地再现原有的波形,达到控制之目的。代码型遥控器的编码芯片采用高性能的单片机,配合高精度的石英晶体,振荡频率为数Mhz,大大高于455khz,石英晶体的稳定度在10ppm级别即百万分之X左右,更是学习型遥控器望尘莫及的。代码型遥控器具有极大的控制灵活性,功能强大,使用方便。I般而言,适合相对单纯的批量使用用户,例如I间酒店,数百套客房,每间客房的电视机.上网的机顶盒都是I样的,厂家或中间商可以X分方便地批量编程定制,而且I经设定,数据不会丢失,长期使用。当然,代码型遥控器编程定制需要专门的知识和设备,对用户有I定的限制,除了酒店之类的实例外,面向家用的组合视听设备,例如家用电脑.电视机.家用投影.DVD.激光视盘等,来自不同的厂家的产品快速集成为I体,由厂家或中间商完成客户化工作,给最终的客户I个整体解决方案,就X分合适了。对有些小批量定制的产品增加遥控器时,代码型遥控器可以轻松替代市面上任何I种普通型遥控器。代码型遥控技术将任何I款遥控器的任何I次编码发送归结为32位的设备码加16位的命令码,仅仅6个字节,同I种遥控器设备码相同,这样I来描述I个32键的遥控器只需要4+32*2=68字节,自然是X分节省存储空间,方便数据交换,而且容易阅读和传播,甚至可以将各种代码放到Internet实现资源共享。代码型遥控器不仅设备码和命令码具有广泛的通用性,可以控制实现几乎有所的红外线遥控设备,更为重要的是,代码型遥控器采用了外接EEPROM存储器(24C02)的方式,可以随时方便地更换其中的代码,便于快速定制。图V 代码型遥控器的I种电路板,有两块IC当然,要定制代码需要专用的设备,这是I个不便之处。完成代码型遥控器的定制即客户化工作需要读码器和编程器,最好也有家电控制器来模拟控制测试,将这III样设备集中起来就形成I种称之为UIR48的设备,UIR表示universal infrared remote control, 48表示代码型遥控器采用6个字节48bits的编码技术,其中包括32bits的设备码和16bits的命令码。该设备见下图VI所示,其中USB接口符合USB1.1标准,与PC机相连,另I端引出III种装置,有I个红外线接收器,运行PC机的软件后用来读取各种不同类型的原始遥控器的编码,有I红外线发射器,读到编码后运行相应的软件通过该设备“重构再现”刚才读到的编码,看能否替代原始遥控器的相应按键控制对应的设备,再有I个端子就是编程端子了,直接插到代码型遥控器的后座在线编程,就像手机的编程I样。读到合适的代码验证设备受控后在线写入代码型遥控器,这就是整个编程定制的过程。图VII代码型遥控器用于酒店客房控制电视机和机顶盒的例子 VI.代码型遥控器应用前景代码型遥控器所用的技术在家电自动控制方面可以发挥优势作用,将其编码芯片由按键扫描输入方式改为UART串行接口输入方式,当任何I个设备或系统需要对

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论