38K红外遥控解码
- 格式:docx
- 大小:14.10 KB
- 文档页数:1
第1篇一、实验目的本次实验旨在通过搭建红外遥控系统,了解红外遥控的基本原理,掌握红外遥控信号的编码和解码方法,并利用单片机实现对红外遥控信号的解码,实现对红外遥控器的控制。
二、实验原理红外遥控技术是一种无线通信技术,通过发射端发送特定编码的红外信号,接收端接收该信号并进行解码,从而实现对电器的控制。
红外遥控系统主要由发射端和接收端两部分组成。
1. 发射端:由按键矩阵、编码调制电路和红外发射器组成。
按键矩阵根据按键的不同产生不同的编码信号,编码调制电路将这些信号调制在38kHz的载波上,红外发射器将调制后的信号发射出去。
2. 接收端:由红外接收器、前置放大电路、解调电路和指令信号检出电路组成。
红外接收器接收发射端发射的红外信号,前置放大电路对信号进行放大,解调电路将38kHz的载波信号去除,指令信号检出电路从解调后的信号中提取出指令信号。
三、实验设备1. 红外遥控发射器2. 红外接收模块3. 单片机开发板4. 连接线5. 电源6. 红外遥控解码程序四、实验步骤1. 搭建红外遥控系统:将红外接收模块连接到单片机开发板的相应引脚上,确保连接正确无误。
2. 编写红外遥控解码程序:根据红外遥控协议,编写解码程序,实现对红外信号的解码。
3. 程序烧录与调试:将解码程序烧录到单片机中,连接电源,进行程序调试。
4. 测试与验证:使用红外遥控器对单片机进行控制,观察单片机是否能够正确解码红外信号,并实现相应的控制功能。
五、实验结果与分析1. 红外遥控系统搭建成功:通过连接红外接收模块和单片机开发板,成功搭建了红外遥控系统。
2. 解码程序编写与调试:根据红外遥控协议,编写解码程序,实现对红外信号的解码。
在调试过程中,通过观察单片机的输出,验证了程序的正确性。
3. 测试与验证:使用红外遥控器对单片机进行控制,观察单片机是否能够正确解码红外信号,并实现相应的控制功能。
实验结果表明,单片机能够成功解码红外信号,并实现红外遥控器的控制功能。
38khz红外发射与接收38khz红外发射与接收红外线遥控器在家用人的眼睛能看到的可见光,若按波长排列,依次(从长到短)为红,橙,黄,绿,青,蓝,紫,如图1所示.由图可见,红光的波长范围为0.62μm~0.76μm,比红光波长还长的光叫红外线.红外线遥控器就是利用波长0.76μm~1.5μm之间的近红外线来传送控制信号的.红外线的特点是不干扰其他电器设备工作,也不会影响周边环境. 人们见到的红外遥控系统分为发射和接收两部分.发射部分的发射元件为红外发光二极管,它发出的是红外线而不是可见光,如图2所示.常用的红外发光二极管发出的红外线波长为940nm左右,外形与普通φ5mm发光二极管相同,只是颜色不同.一般有透明,黑色和深蓝色等三种.判断红外发光二极管的好坏与判断普通二极管一样的方法.单只红外发光二极管的发射功率约100mW.红外发光二极管的发光效率需用专用仪器测定,而业余条件下,只能凭经验用拉距法进行粗略判定.接收电路的红外接收管是一种光敏二极管,使用时要给红外接收二极管加反向偏压,它才能正常工作而获得高的灵敏度.红外接收二极管一般有圆形和方形两种.由于红外发光二极管的发射功率较小,红外接收二极管收到的信号较弱,所以接收端就要增加高增益放大电路.然而现在不论是业余制作或正式的产品,大都采用成品的一体化接收头,如图3所示.红外线一体化接收头是集红外接收,放大,滤波和比较器输出等的模块,性能稳定,可靠.所以,有了一体化接收头,人们不再制作接收放大电路,这样红外接收电路不仅简单而且可靠性大大提高.图3是常用两种红外接收头的外形,均有三只引脚,即红外接收头的主要参数如下:工作电压:4.8~5.3V工作电流:1.7~2.7mA接收频率:38kHz峰值波长:980nm静态输出:高电平输出低电平:≤0.4V输出高电平:接近工作电压3.红外线遥控发射电路红外线遥控发射电路框图如图4所示.框图4是目前所有红外遥控器发射电路的功能组成,其中的编码器即调制信号,按遥控器用途的编码方式可以很简单,也可以很复杂.例如用于电视机,VCD,DVD 和组合音响的遥控发射的编码器,因其控制功能多达50种以上,此时的编码器均采用专用的红外线编码协议进行严格的编程,然而对控制功能少的红外遥控器,其编码器是简单而灵活.前者编码器是由生产厂家的专业人员按红外遥控协议进行编码,而后者适用于一般图4中编码器的编码信号对38kHz的载波信号进行调制,再经红外发射管D向空间发送信号供遥控接收端一体化接收头接收,解调输出,再作处理.利用红外线的特点,可以制作多路遥控器.在遥控发射电路中,有两种电路,即编码器和38kHz载波信号发生器.在不需要多路控制的应用电路中,可以使用常规1.频分制编码的遥控发射器在红外发射端利用专用(彩电,VCD,DVD等)的红外编码在实际应用中,遥控发射器是3V 2.遥控接收解调电路图4为红外接收解调控制电路,图4中IC2是LM567.LM567是一种锁相环集成电路,采用8脚双列直插塑封装,工作电压为+4.75~+9V,工作频率从直流到500kHz,静态电流约8mA.⑧脚为输出端,静态时为高电平,是由内部的集电极开路的三极管构成,允许最大灌电流为100mA.鉴于LM567的内部电路较复杂,这里仅介绍该电路的基本功能.LM567的⑤,⑥脚外接的弄清了LM567的基本组成后,再来分析图4电路的工作过程.ICl是红外接收头,它接收图1发出的红外线信号,接收的调制载波频率仍为38kHz,接收信号经ICl解调后,在其输出端OUT输出频率为f1(见图2)的方波信号,只要将LM567的中心频率f01调到(用RP)与发射端f1(见图2)相同,即f01=fl,则当发射端发射时,LM567开始工作,⑧脚由高电平变为低电平,该低电平使三极管8550导通,在A点输出利用图1和图4的电路,可以实现多路遥控器,即在发射端,将ICl组成的低频振荡器,其电路模式不变,只改变电阻R2,即可构成若干种R组成的多个频率不同的低频振荡器(即编码),利用微动开关转接,38kHz的载波电路共用;在接收电路中,一体化红外接收头共用,再设置与接收端编码器相同个数的LM567锁相器和后级锁相驱动控制电路,各锁相环的振荡频率与各编码器的低频编码信号的频率对应相等.这样发射端(图1)按压不同的按钮,载波信号接入不同频率编码的调制信号时,在接收端(图4),各对应的LM567的⑧脚的电平会发生变化,从而形成多路控制信号.上述所述的工作方式,称为频分制的编码方式.这种频分制工作方式,其优点是可实现多路控制,但缺点是电路复杂,对于路数不多的控制电路,因电路工作原理简单,对一般电子技术人员仍然是有用的.。
38k红外接收头原理小伙伴们!今天咱们来唠唠那个超有趣的38K红外接收头的原理。
你知道吗?这38K红外接收头就像是一个超级灵敏的小耳朵,专门用来听红外世界的“悄悄话”呢。
红外光啊,它是一种我们肉眼看不到的光,就像那些隐藏在神秘世界里的小秘密。
38K呢,其实是指这个接收头最敏感的红外信号的频率,就像是它最喜欢听的那种特殊的“旋律”。
那这个小接收头是怎么工作的呢?当有红外发射器发出38K频率的红外信号的时候,这个接收头就开始它的表演啦。
它里面有个特殊的结构,就像是一个小小的魔法盒子。
这个魔法盒子里面有个光电二极管,这个二极管可神奇了,它对红外光超级敏感。
当红外光照射到这个光电二极管上的时候,就像给它注入了一股神秘的力量,它就会产生微弱的电流。
你可以想象一下,光电二极管就像一个小小的能量收集器,把那些看不见的红外光能量转化成电流这种我们能理解的东西。
但是呢,这个电流很微弱,就像小蚂蚁的力气一样小。
不过别担心,接收头里面还有其他的部件来帮忙。
接下来就到了放大电路出场的时候啦。
这个放大电路就像是一个超级放大器,把光电二极管产生的微弱电流放大好多好多倍。
就好比把小蚂蚁的力气放大成大象的力气一样。
这样一来,这个信号就变得足够强大,可以被后面的电路处理了。
然后呢,还有一个滤波器在里面起作用。
这个滤波器就像是一个超级挑剔的守门员。
它只允许38K频率的信号通过,就像只让穿特定队服的球员进入球场一样。
那些其他频率的干扰信号,就像没有穿对队服的人,统统被滤波器挡在外面。
这样就保证了接收到的信号是纯净的38K红外信号。
再之后呢,有一个解调器。
这个解调器就像是一个超级翻译官。
它把接收到的经过放大和滤波的信号进行处理,把它变成一种数字信号。
就像是把一种神秘的语言翻译成我们能读懂的数字代码一样。
这样的数字信号就可以被我们的微控制器或者其他电路轻松地识别和处理了。
你看,这整个过程就像是一场精彩的接力赛。
光电二极管先起跑,收集能量产生微弱电流,然后放大电路接过接力棒,把电流放大,滤波器再筛选出正确的频率,最后解调器把信号翻译成数字语言。
目录1)MIT-C8D8 (40k)2) MIT-C8D8(33K)3)SC50560-001,003P 4)M504625)M50119P-016)M50119L7)RECS808)M30049)LC7464M10)LC7461-C1311)IRT1250C5D6-01 12)Gemini-C6-A13)Gemini-C614) Gemini-C17(31.36K)-1 15)KONKA KK-Y261 16)PD6121G-F17)DATA-6BIT18)Custum-6BIT19)M9148-120)SC3010 RC-521) M50560-1(40K)22) SC50560-B123)C50560-002P24)M50119P-0125)M50119P-126)M50119P27)IRT1250C5D6-02 28)HTS-C5D6P29)Gemini-C1730)Gemini-C17 -231)data6bit-a32)data6bit-c33)X-Sat34)Philips RECS-8035)Philips RC-MM36)Philips RC-637)Philips RC-538)Sony SIRC39)Sharp40)Nokia NRC1741)NEC42)JVC43)ITT44)SAA3010 RC-5(36K)45)SAA3010 RC-5(38K)46)NEC2-E247) NEC-E348) RC-5x49) NEC1-X250) _pid:$006051) UPD1986C52) UPD1986C-A53) UPD1986C-C54) MV500-0155) MV500-0256) Zenith S101) MIT-C8D8(40K)MIT-C8D8(40K)是一种常见的红外遥控编码格式。
该格式出现在万能遥控器ZC-18A(600-917)中。
Features 基本特点1,8位地址码,8位数据码,结束码;2,脉宽调制方式(PWM);3,载波:40.0 KHZ;4,逻辑位时间长度是1.215ms或2.436 ms。
目录1)MIT-C8D8 (40k)2) MIT-C8D8(33K)3)SC50560-001,003P 4)M504625)M50119P-016)M50119L7)RECS808)M30049)LC7464M10)LC7461-C1311)IRT1250C5D6-01 12)Gemini-C6-A13)Gemini-C614) Gemini-C17(31.36K)-1 15)KONKA KK-Y261 16)PD6121G-F17)DATA-6BIT18)Custum-6BIT19)M9148-120)SC3010 RC-521) M50560-1(40K)22) SC50560-B123)C50560-002P24)M50119P-0125)M50119P-126)M50119P27)IRT1250C5D6-02 28)HTS-C5D6P29)Gemini-C1730)Gemini-C17 -231)data6bit-a32)data6bit-c33)X-Sat34)Philips RECS-8035)Philips RC-MM36)Philips RC-637)Philips RC-538)Sony SIRC39)Sharp40)Nokia NRC1741)NEC42)JVC43)ITT44)SAA3010 RC-5(36K)45)SAA3010 RC-5(38K)46)NEC2-E247) NEC-E348) RC-5x49) NEC1-X250) _pid:$006051) UPD1986C52) UPD1986C-A53) UPD1986C-C54) MV500-0155) MV500-0256) Zenith S101) MIT-C8D8(40K)MIT-C8D8(40K)是一种常见的红外遥控编码格式。
该格式出现在万能遥控器ZC-18A(600-917)中。
Features 基本特点1,8位地址码,8位数据码,结束码;2,脉宽调制方式(PWM);3,载波:40.0 KHZ;4,逻辑位时间长度是1.215ms或2.436 ms。
红外遥控解码程序红外接收头的型号有很多HS0038 VS838等功能⼤致相同,只是引脚封装不同。
红外接收有⼏种统⼀的编码⽅式,采样哪种编码⽅式取决于遥控器使⽤的芯⽚,接收头收到的都是⼀样的。
电视遥控器使⽤的是专⽤集成发射芯⽚来实现遥控码的发射,如东芝TC9012,飞利浦AA3010T等,通常彩电遥控信号的发射,就是将某个按键所对应的控制指令和系统码(由0和1组成的序列),调制在38KHz的载波上,然后经放⼤、驱动红外发射管将信号发射出去。
不同公司的遥控芯⽚,采样的遥控码格式也不⼀样,较普遍的有两种,⼀种NEC标准,⼀种是PHILIPS标准。
NEC标准:遥控载波的频率为38KHz(占空⽐1:3)当某个键按下时,系统⾸先发射⼀个完整的全码,如果按键超过108ms仍未松开,接下来发射的代码(连发代码)将由起始码(9ms)和结束码(2.5ms)组成。
⼀个完整的全码 = 引导码 +⽤户码 +⽤户码 + 数据码 + 数据码 + 数据反码。
其中,引导码⾼电平9ms,低电平4.5ms;系统码8位,数据码8位,共32位;其中前16位为⽤户识别码,能区别不同的红外遥控设备,以防⽌不同的机种遥控码互相⼲扰。
后16位为8位的操作码和8位的操作反码,⽤于核对数据是否接收准确。
收端根据数据码做出应该执⾏上⾯动作的判断。
连发代码是在持续按键时发送的码。
它告知接收端。
某键是在被连续的按着。
NEC标准下的发射码表⽰发射数据0时⽤”0.56ms⾼电平 + 0.565ms低电平 = 1.125ms”表⽰;数据1⽤”⾼电平0.56ms + 1.69ms = 2.25ms”表⽰。
遥控器发射信号:需要注意的是:当⼀体化接收头收到38kHz红外信号时,输出端输出低电平,否则为⾼电平。
所以⼀体化接收头输出的波形和发射波形是反向的PHILIPS标准:载波频率38KHz:没有筒,点按键时,控制码1和0之间切换,若持续按键,则控制码不变。
⼀个全码 = 起始码’11’ +控制码 + ⽤户码 + ⽤户码数据0⽤“低电平1.778ms + ⾼电平1.778ms”表⽰;数据1⽤“⾼电平1.778ms + 低电平1.778ms”表⽰。
38khz红外模块的作用38kHz红外模块的作用红外模块是一种使用红外线作为通信媒介的电子元件,它能够将电信号转化为红外线信号,并通过红外线传输到接收端。
而38kHz红外模块是一种工作频率为38kHz的红外传感器模块。
它在现代电子产品中扮演着重要的角色,具有多种作用和应用。
38kHz红外模块被广泛应用在红外遥控系统中。
我们经常使用的遥控器就是利用红外线来传输信号与电器设备进行通信的。
遥控器按下按钮后,38kHz红外模块会产生特定的红外信号,通过空气传播到电器设备的接收端。
接收端的红外接收器会接收到红外信号,并将其转化为电信号,使电器设备做出相应的动作。
这种遥控系统广泛应用于电视、空调、音响等家电产品,方便了人们的生活。
38kHz红外模块还可用于红外测距。
在一些自动化系统中,我们需要对物体进行精确的距离测量,而38kHz红外模块则可以发挥重要作用。
它利用红外线的特性,通过测量红外线的反射时间来计算物体与传感器之间的距离。
当物体靠近传感器时,红外线的反射时间较短;当物体远离传感器时,红外线的反射时间较长。
通过测量反射时间的差异,可以准确计算出物体与传感器的距离。
这种红外测距技术在自动驾驶、智能机器人等领域有着广泛的应用。
38kHz红外模块还可以应用于红外检测系统。
红外检测系统是一种通过检测红外线信号来实现目标检测的技术。
38kHz红外模块可以作为发射器发送红外信号,而接收器则用于接收目标反射回来的红外信号。
通过分析接收到的红外信号,系统可以判断目标是否存在以及目标的属性。
这种红外检测系统广泛应用于安防监控、自动门禁等领域,可以提高安全性和便利性。
38kHz红外模块还可用于红外通信。
红外通信是一种短距离的无线通信方式,可以在没有网络的情况下实现设备之间的数据传输。
通过38kHz红外模块,设备可以将数据转化为红外信号进行传输,接收端的设备再将红外信号转化为数据。
红外通信广泛应用于移动设备、智能家居等领域,提供了一种便捷的无线通信方式。
红外、6122编码、38KHz载波一、红外遥控编码简介一般而言,一个通用的红外遥控系统由发射和接收两大部分组成,如图1 所示:发射部分主要包括键盘矩阵、编码调制、红外发射管;接收部分包括光、电信号的转换以及放大、解调、解码电路。
举例来说,通常我们家电遥控器信号的发射,就是将相应按键所对应的控制指令和系统码( 由0 和1 组成的序列),调制在32~56kHz 范围内的载波上(目的为:抗干扰及低功率),然后经放大(接三极管)、驱动红外发射管(透明的头)将信号发射出去。
二、6122编码格式简介流行的控制方法是应用编/ 解码专用集成电路芯片来实现。
不同公司的遥控芯片,采用的遥控码格式也不一样。
本文是NEC(代表芯片WD6122)PWM( 脉冲宽度调制) 标准。
遥控载波的频率为38kHz( 占空比为1:3) ;当某个按键按下时,系统首先发射一个完整的全码,然后经延时再发射一系列简码,直到按键松开即停止发射。
简码重复为延时108ms,即两个引导脉冲上升沿之间的间隔都是108ms。
如图2所示即为完整的NTC编码。
正常发码:引导码(9ms+4.5ms)+用户编码+用户编码(或者是用户编码的反码)+键数据码+键数据反码+延时:将正常发码标识出来,从图中可以看出“0”和“1”的表示方法。
(不要问为什么是这样,规定!标准!高性能!)重复码:9ms+2.25ms+延时三、程序思想①低功耗。
写程序前要想到,没有用过的,可以新建工程只用sleep命令;②需要知道用户编码(客户码),每个键对应的编码,这些都是自己或者客户设定的;③高电平期间:用38KHz的方波表示,低电平期间:用低电平表示。
也就是说,高电平不是一直都是高,其实是38KHz的方波,这也是为什么上面②和③图中9ms高电平期间有方格。
(我用的公司自己的精简指令集,就不再上传。
需要的话,私信)四、电路做为波形的输出端,加三极管,放大。
下图为矩形键盘组成的按键,图中黑色二极管为红外发射管。
红外遥控编码格式红外遥控器的编码格式通常有两种格式:NEC和RC5NEC格式的特征:1:使用38 kHz载波频率2:引导码间隔是9 ms + 4.5 ms3:使用16位客户代码4:使用8位数据代码和8位取反的数据代码下面的波形是从红外接收头上得到的波形:(调制信号转变成高低电平了)不过需要将波形反转一下才方便分析:NEC 协议通过脉冲串之间的时间间隔来实现信号的调制(英文简写PPM)。
逻辑“0”是由0.56ms的38KHZ载波和0.560ms的无载波间隔组成;逻辑“1”是由0.56ms的38KHZ载波和1.68ms的无载波间隔组成;结束位是0.56ms的38K载波。
下面实例是已知NEC类型遥控器所截获的波形:遥控器的识别码是Address=0xDD20;其中一个键值是Command=0x0E;注意波形先是发低位地址再发高位地址。
所以0000,0100,1011,1011反转过来就是1101,1101,0010,000十六进制的DD20;键值波形如下:也是要将0111,0000反转成0000,1110得到十六进制的0E;另外注意8位的键值代码是取反后再发一次的,如图0111,0000 取反后为1000,1111。
最后一位是一个逻辑“1”。
RC5编码相对简单一些:下面的遥控器地址是1A,键值是0D的波形同样由于取自红外接收头的波形需要反相一下波形以便于分析:反相后的波形:根据编码规则:得到一组数字:110,11010,001101 根据编码定义第一位是起始位S 通常是逻辑1第二位是场位F通常为逻辑1,在RC5扩展模式下它将最后6位命令代码扩充到7位代码(高位MSB),这样可以从64个键值扩充到128个键值。
第三位是控制位C 它在每按下了一个键后翻转,这样就可以区分一个键到底是一直按着没松手还是松手后重复按。
如图所示是同一按键重复按两次所得波形,只有第三位是相反的逻辑,其它的位逻辑都一样。
. . . ... .其后是五个系统地址位:11010=1A.s . ..。
#include <reg52.h>
#define uint08 unsigned char
#define uint16 unsigned int
sbit IR=P3^2;
uint08 a[4],k,IR_number;
uint16 x;
void init_int0_time0() //外部中断0与定时器中断0初始化函数
{
TMOD=0x01; //定义定时中断0在模式1
TH0 =0x00; //0000 0000
TL0 =0x00; //0000 0000
TR0 =1;
ET0 =1; //打开定时中断0
IT0 =1; //边沿触发
EX0 =1; //打开外部中断0
EA =1; //打开总中断
}
void int0() interrupt 0
{
x=TH0*256+TL0; //读取两次中断时间差
TH0=0;
TL0=0; //恢复寄存器,准备下一次读数
if(12000<=x&&x<=15000) //判断IR开始信号
k =0;
else if(1000<=x&&x<=2500) //判断IR信号为0/1
{
a[k/8]=a[k/8]>>1;
if(2000<=x&&x<=2500)
a[k/8]|=0x80;
k++;
}
if(k==32&&a[2]==~a[3]) //判断读取的数据是否正确
{
IR_number=a[2];
}
}
void time0(void) interrupt 1 //定时器0
{
}
说明:a[0],a[1]为用户码,a[2]为红外遥控信号数据,a[3]为a[2]的反码,应用时在“IR_number=a[2];”这条语句前面加个判断用户码是否正确的语句,然后在主函数中读出IR_number就可以了,目的是提高解码的准确度,减少误差。