38K红外遥控解码

合集下载

38KHz红外线发射和接收

38KHz红外线发射和接收

38KHz红外发射和接收常识

红外线遥控器在家用电器和工业控制系统中已得到广泛应用,了解他们的工作原理和性能、进一步自制红外遥控系统,也并非难事。

1.红外线的特点

人的眼睛能看到的可见光,若按波长排列,依次(从长到短)为红、橙、黄、绿、青、蓝、紫,如图1所示。

由图可见,红光的波长范围为0.62μm~0.76μm,比红光波长还长的光叫红外线。红外线遥控器就是利用波长0.76μm~1.5μm之间的近红外线来传送控制信号的。

红外线的特点是不干扰其他电器设备工作,也不会影响周边环境。电路调试简单,若对发射信号进行编码,可实现多路红外遥控功能。

2.红外线发射和接收

人们见到的红外遥控系统分为发射和接收两部分。发射部分的发射元件为红外发光二极管,它发出的是红外线而不是可见光,如图2所示。

常用的红外发光二极管发出的红外线波长为940nm左右,外形与普通φ5 mm发光二极管相同,只是颜色不同。一般有透明、黑色和深蓝色等三种。判断红外发光二极管的好坏与判断普通二极管一样的方法。单只红外发光二极管的发射功率约100mW。红外发光二极管的发光效率需用专用仪器测定,而业余条件下,只能凭经验用拉距法进行粗略判定。

接收电路的红外接收管是一种光敏二极管,使用时要给红外接收二极管加反向偏压,它才能正常工作而获得高的灵敏度。红外接收二极管一般有圆形和方形两种。由于红外发光二极管的发射功率较小,红外接收二极管收到的信号较弱,所以接收端就要增加高增益放大电路。然而现在不论是业余制作或正式的产品,大都采用成品的一体化接收头,如图3所示。红外线一体化接收头是集红外接收、

38khz红外发射与接收解析

38khz红外发射与接收解析

38khz红外发射与接收

38khz红外发射与接收

红外线遥控器在家用人的眼睛能看到的可见光,若按波长排列,依次(从长到短)为红,橙,黄,绿,青,蓝,紫,如图1所示.

由图可见,红光的波长范围为0.62μm~0.76μm,比红光波长还长的光叫红外线.红外线遥控器就是利用波长0.76μm~1.5μm之间的近红外线来传送控制信号的.

红外线的特点是不干扰其他电器设备工作,也不会影响周边环境. 人们见到的红外遥控系统分为发射和接收两部分.发射部分的发射元件为红外发光二极管,它发出的是红外线而不是可见光,如图2所示.

常用的红外发光二极管发出的红外线波长为940nm左右,外形与普通φ5mm发光二极管相同,只是颜色不同.一般有透明,黑色和深蓝色等三种.判断红外发光二极管的好坏与判断普通二极管一样的方法.单只红外发光二极管的发射功率约100mW.红外发光二极管的发光效率需用专用仪器测定,而业余条件下,只能凭经验用拉距法进行粗略判定.

接收电路的红外接收管是一种光敏二极管,使用时要给红外接收二极管加反向偏压,它才能正常工作而获得高的灵敏度.红外接收二极管一般有圆形和方形两种.由于红外发光二极管的发射功率较小,红外接收二极管收到的信号较弱,所以接收端就要增加高增益放大电路.然而现在不论是业余制作或正式的产品,大都采用成品的一体化接收头,如图3所示.红外线一体化接收头是集红外接收,放大,滤波和比较器输出等的模块,性能稳定,可靠.所以,有了一体化接收头,人们不再制作接收放大电路,这样红外接收电路不仅简单而且可靠性大大提高.

6122编码格式,红外遥控的编码,载波38KHz

6122编码格式,红外遥控的编码,载波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命令;

②需要知道用户编码(客户码),每个键对应的编码,这些都是自己或者客户设定的;

51单片机红外解码资料+源代码

51单片机红外解码资料+源代码
irdata[bitnum]=irtime; irtime=0; bitnum++;
if(bitnum==33) { bitnum=0; irreceiveok=1; } } else { startflag=1; irtime=0; } }
红外发射电路如图: 左边是一个 222 的无极性电容,然后接地。 发送 38K 方波,就是载波
上述“0”和“1”组成 32 位二进制代码,包括两次 8 位用户码, 8 位数据码,和 8 位数据反码以及最后的同部位。 一体化红外接收管原理图
一体化红外接收头在检测到 38K 红外遥控载波信号时输出低
电平,在未检测到 39K 的红外遥控载波信号时输出高电平。
发射器发射的的信号为
接收器接收到的信号为
即 9ms 低电平后 4.5ms 高电平作为起始码,之后接受到两次 8 位客户码,一次八位数据码,和一次八位数据反码。
遥控器在按键按下之后周期性的发出同一种 32 位二进制编 码周期约为 108ms,一组码持续时间随本身的“0”“1”个数不同
而不同。大约在 45~63ms 之间,当一个键按下 36ms,振荡器使芯 片激活,将发射一组 108ms 的编码脉冲这 108ms 编码脉冲由一个 起始码(9ms),一个结束码(4.5ms),低八位地址码(9~18ms), 高八位地址码(9~18ms),八位数据码(9~18ms),和这八位数据 码反码(9~18ms),如果按下超过 108ms 仍未松开,接下来发射 的代码(连发代码)将仅有起始码(9ms)和结束码(2.5ms)组 成。

史上最全的红外遥控器编码协议

史上最全的红外遥控器编码协议

目录

1)MIT-C8D8 (40k)

2) MIT-C8D8(33K)

3)SC50560-001,003P 4)M50462

5)M50119P-01

6)M50119L

7)RECS80

8)M3004

9)LC7464M

10)LC7461-C13

11)IRT1250C5D6-01 12)Gemini-C6-A

13)Gemini-C6

14) Gemini-C17(31.36K)-1 15)KONKA KK-Y261 16)PD6121G-F

17)DATA-6BIT

18)Custum-6BIT

19)M9148-1

20)SC3010 RC-5

21) M50560-1(40K)

22) SC50560-B1

23)C50560-002P

24)M50119P-01

25)M50119P-1

26)M50119P

27)IRT1250C5D6-02 28)HTS-C5D6P

29)Gemini-C17

30)Gemini-C17 -2

31)data6bit-a

32)data6bit-c

33)X-Sat

34)Philips RECS-80

35)Philips RC-MM

36)Philips RC-6

37)Philips RC-5

38)Sony SIRC

39)Sharp

40)Nokia NRC17

41)NEC

42)JVC

43)ITT

44)SAA3010 RC-5(36K)45)SAA3010 RC-5(38K)46)NEC2-E2

47) NEC-E3

48) RC-5x

49) NEC1-X2

50) _pid:$0060

51) UPD1986C

史上最全的红外遥控器编码协议

史上最全的红外遥控器编码协议

目录

1)MIT-C8D8 (40k)

2) MIT-C8D8(33K)

3)SC50560-001,003P 4)M50462

5)M50119P-01

6)M50119L

7)RECS80

8)M3004

9)LC7464M

10)LC7461-C13

11)IRT1250C5D6-01 12)Gemini-C6-A

13)Gemini-C6

14) Gemini-C17(31.36K)-1 15)KONKA KK-Y261 16)PD6121G-F

17)DATA-6BIT

18)Custum-6BIT

19)M9148-1

20)SC3010 RC-5

21) M50560-1(40K)

22) SC50560-B1

23)C50560-002P

24)M50119P-01

25)M50119P-1

26)M50119P

27)IRT1250C5D6-02 28)HTS-C5D6P

29)Gemini-C17

30)Gemini-C17 -2

31)data6bit-a

32)data6bit-c

33)X-Sat

34)Philips RECS-80

35)Philips RC-MM

36)Philips RC-6

37)Philips RC-5

38)Sony SIRC

39)Sharp

40)Nokia NRC17

41)NEC

42)JVC

43)ITT

44)SAA3010 RC-5(36K)45)SAA3010 RC-5(38K)46)NEC2-E2

47) NEC-E3

48) RC-5x

49) NEC1-X2

50) _pid:$0060

51) UPD1986C

38khz红外模块的作用

38khz红外模块的作用

38khz红外模块的作用

38kHz红外模块的作用

红外模块是一种使用红外线作为通信媒介的电子元件,它能够将电信号转化为红外线信号,并通过红外线传输到接收端。而38kHz红外模块是一种工作频率为38kHz的红外传感器模块。它在现代电子产品中扮演着重要的角色,具有多种作用和应用。

38kHz红外模块被广泛应用在红外遥控系统中。我们经常使用的遥控器就是利用红外线来传输信号与电器设备进行通信的。遥控器按下按钮后,38kHz红外模块会产生特定的红外信号,通过空气传播到电器设备的接收端。接收端的红外接收器会接收到红外信号,并将其转化为电信号,使电器设备做出相应的动作。这种遥控系统广泛应用于电视、空调、音响等家电产品,方便了人们的生活。

38kHz红外模块还可用于红外测距。在一些自动化系统中,我们需要对物体进行精确的距离测量,而38kHz红外模块则可以发挥重要作用。它利用红外线的特性,通过测量红外线的反射时间来计算物体与传感器之间的距离。当物体靠近传感器时,红外线的反射时间较短;当物体远离传感器时,红外线的反射时间较长。通过测量反射时间的差异,可以准确计算出物体与传感器的距离。这种红外测距技术在自动驾驶、智能机器人等领域有着广泛的应用。

38kHz红外模块还可以应用于红外检测系统。红外检测系统是一种

通过检测红外线信号来实现目标检测的技术。38kHz红外模块可以作为发射器发送红外信号,而接收器则用于接收目标反射回来的红外信号。通过分析接收到的红外信号,系统可以判断目标是否存在以及目标的属性。这种红外检测系统广泛应用于安防监控、自动门禁等领域,可以提高安全性和便利性。

红外解码说明文档

红外解码说明文档

红外解码说明文档

作者:ruihuan_vb@

时间:2013-12-7

1、红外遥控的基本原理

红外遥控器发出的红外光信号,所以只能产生1 0 信号。但是,为防止自然光的干扰,同时为了增大红外管的发射功率,正真发出的“1”信号是:38K的载波信号。(而0 1 信号的区分就在于对发射管的关闭时间)。红外一体化接收头接收到信号后会对信号进行滤波,所以一体化接收头输出的信号是经过滤波放大后的电平信号,并且对对电平信号进行了反相输出。

2、一般电平编码的结构

红外遥控的数据编码是多种多样的,但是一般都会一这这种情况出现:引导码加数据。

引导码由9ms(可能有时候要设置到9.1ms)的低电平和4.5ms的高电平构成。“0”信号由0.6ms的低电平和0.6ms的高电平组成;“1”信号由0.6的低低电平和1.2ms的高电平组成。(注:这里说的电平是说的是红外一体化接收头的输出电平)。

红外一体化接收头的输出波形,示波器保存的图片

3、红外遥控的电路设计

1)发射电路

红外遥控的发射电路比较简单,但是要想做的比较好还是有要注意的地方的。NPN 三极管直接拉红外发射头就可以构成一个红外发射电路了。但是,要注意的是:驱动红外发射管要加隔离电阻,并且这个隔离电阻不能太大,因这个隔离电阻决定了红外发射的功率。发射电路的关键就在这里了,这个发射管的隔离电阻的阻值不要超过10欧姆,否则发射距离会非常近的,并且还有注意发射信号的载波的占空比不要设为1/2 最好是1/3 (这个好像是跟一体化接收头的原理有关的,而且将占空白降低方便增大发射功率)。

38k载波及红外发射原理

38k载波及红外发射原理

本帖最后由Randy 于2012-10-28 21:12 编辑

转自Doctor_A 坛友的笔记!

之前做接触过一次红外遥控器,现在有空想用简单的话来聊一聊,下面有错误的地方欢迎改正指出:

1:红外的概念不聊,那是一种物理存在。以下聊38K红外发射接收,主要讲可编程的红外编码。

2:红外遥控

红外遥控首先需要用来发“光”的红外发光管,还有一个接收光线的“接收管”(不是那种触发的红外对管),还有一个产生38K的信号源(可以是MCU中断实现还有就是市场上大把的红外编码IC),只需要简单的外围电路即可。

就单片机而言,为了增大红外发光管电流,需要用一个三极管驱动。红外编码IC也只需要几个外围电路,规格书上都有提供,这里不提。

3:红外接收头(有不理解的地方可以在后面找到你想要的答案或者继续“百度”“谷歌")

有必要可以看一下红外接收头内部组成的详细介绍。

接收收头分为电平头还有脉冲头。

电平型的:接收连续的38K信号,可以输出连续的低电平,时间可以无限长。其内部放大及脉冲整形是直接耦合的,所以能够接收及输出连续的信号。

脉冲型的:只能接收间歇的38K信号,如果接收连续的38K信号,则几百ms后会一直保持高电平,除非距离非常近(二三十厘米以内)。其内部放大及脉冲整形是电容耦合的,所以不能能够接收及输出连续的信号。

一般遥控用脉冲型的,只有特殊场合,比如串口调制输出,由于串口可能连续输出数据0,所以要用电平型的。

4:红外遥控中的载波到底是什么?(不要影响到你对其它载波的理解)第一次接触红外我看到’载波‘这个词就觉得生涩。网上很多资料五花八门都描绘得很厉害、

红外解码讲解

红外解码讲解

红外解码一直是单片机中应用较多的,需要设备加装专用解码芯片,这就大大减轻了单片机的负担。需要单片机样例使用延时做红外解码,比较容易理解,但是由于在主程序中使用,当存在许多中断时就可能造成误码,很多时候误码率较高,成品中则一般使用中断方式。

下面通过TC9012和uPD6121芯片为例大致讲解解码原理:

先看一些遥控器发射波形图

从上图可以看出 4.5ms高电平+4.5ms低电平称为头码,用于识别是否遥控码开始,uPD6121的头码是9ms+4.5ms,其他的一样,一些datasheet会提及连续发射码的波形图(就是一直按下某一遥控器按键),这里我们不做分析,仅分析单次按键发射的正个码的波形图。

头码过后可以看到4个8位的数据,我们最终目的就是要把这个 32位(4x8)从一体化红外接收头提取出来,并转换成16进制数,用于区分不同按键按下得出的不同数值。

在遥控器发射波形中,可以看出,8位数中的0或者1不是用高低电平表示,而是用不同的低电平的宽度表示,0.565ms表示0,1.69ms表示1,2个位中间还会有一个0.56ms的高电

平(上图阴影部分)。

这个是红外遥控器发射的波形,图中看到的阴影高电平表示载波,一般使用38KHz,遥控器发射出去的含有载波的红外信号通过一体化红外接收头处理后得到的是含有载波的反向的

波形,也就是没有上图中的阴影部分。大致如下图

一体化红外接收头内部集成了选频放大(38KHz左右频率增益最大),检波(把38KHz的载波滤除),放大整形(变成容易检测的矩形波)。

看到如上图波形,表示单片机引脚可以接收到的波形,我们只要通过单片机读取波形并分析波形的宽度,然后分辨出是头码,还是0或者1,最后整理出这组码的16进制组合。正确的解码结果是按同一个按键得出的16进制数值是不变化的。通过这个原理,我们可以分辨出每个按键的键值。

红外遥控解码

红外遥控解码

红外遥控器解码原理及示,Mini51Board上测试成功

一、编码

遥控发射器专用芯片很多,根据编码格式可以分成两大类,这里我们以运用比较广泛,解码比较容易的一类来加以说明,现以日本NEC的uPD6121G组成发射电路为例说明编码原理。当发射器按键按下后,即有遥控码发出,所按的键不同遥控编码也不同。这种遥控码具有

以下特征:

采用脉宽调制的串行码,以脉宽为0.565ms、间隔0.56ms、周期为1.125ms的组合表示二进制的“0”;以脉宽为0.565ms、间隔1.685ms、周期为2.25ms的组合表示二进制的“1”,

其波形如下图所示。

上述“0”和“1”组成的32位二进制码经38kHz的载频进行二次调制以提高发射效率,达到降低电源功耗的目的。然后再通过红外发射二极管产生红外线向空间发射。编码数据,

载波,发射,接收解码如下图所示:

UPD6121G产生的遥控编码是连续的32位二进制码组,其中前16位为用户识别码,能区别

不同的电器设备,防止不同机种遥控码互相干扰。该芯片的用户识别码固定为十六进制01H;后16位为8位操作码(功能码)及其反码。UPD6121G最多额128种不同组合的编码。

遥控器在按键按下后,周期性地发出同一种32位二进制码,周期约为108ms。一组码本身的持续时间随它包含的二进制“0”和“1”的个数不同而不同,大约在45~63ms之间,发

射波形图如下图所示。

当一个键按下超过36ms,振荡器使芯片激活,将发射一组108ms的编码脉冲,这108ms发射代码由一个起始码(9ms),一个结果码(4.5ms),低8位地址码(9ms~18ms),高8位地址码(9ms~18ms),8位数据码(9ms~18ms)和这8位数据的反码(9ms~18ms)组成。如果键按下超过108ms仍未松开,接下来发射的代码(连发代码)将仅由起始码(9ms)和结束码

全自动红外线遥控器解码测试仪使用说明

全自动红外线遥控器解码测试仪使用说明

全自动红外线遥控器解码测试仪使用说明

一:基本参数

电源 AC 220V,红外载波38K,最大可存储168个按键信息(视不同红外编码格式).

二:性能描述

1, 技术领先,功能齐全;全自动解码,无须手工操作;显示信息量大,红外编码格式及码值一目了然。

2, 带学习功能,可录入遥控器码值,方便成品测试。

3, 丰富的蜂鸣器声提示,减轻眼睛的疲劳,加快测试进度。

三:面板说明

四:操作方法

1,全自动解码&指定格式解码

全自动解码:把拨动开关拨至“解码”方向,小数码管显示“AUTO”字样,解码仪进入自动解码模式。使遥控器对着解码仪发码,若解码正确,解码仪则会在小数码管显示遥控器所使用的红外编码格式,下方大数码管则显示客户码及数据码信息,同时解码仪绿色LED闪烁一下,蜂鸣器BEEP一下,提示解码成功。如果解码不成功,则LED不闪烁,蜂鸣器不响,显示也不改变。

指定格式解码:对于一祯码包含多种编码格式的遥控器,可以通过按“ENTER”键指定格式解码,用以精确捕捉每段码的码值,此时解码仪红色LED亮,小数码管显示的格式表示指定格式解码。循环按“ENTER”可在多种格式预选。

按“RESET”键则返回全自动解码模式

2,录入模式(成品录入)

把拨动开关拨至“录入”方向,解码仪红色LED慢闪,小数码管显示“REC.000”字样(REC.000表示录入按键数为000),解码仪进入录入模式。

经测试,无次序按键测试会有大量按键被重复按下,实际花费时间比按按设定顺序按键测试反而要长,所以本产品仍设计为录入及校对须按相同的按键次序进行操作。

关于38KHz红外发射接收电路

关于38KHz红外发射接收电路

6楼这个图我觉得就能体现

接收电路

最佳答案

如图,你调整C的大小,可以调整方波的频率(C增大,频率降低);调整R1,能调整方波的占空比(R1大,占空比大),当然也要影响频率(R1大,频率会降低)。

51单片机解码红外遥控器原理

51单片机解码红外遥控器原理

51单片机解码红外遥控器原理

电视遥控器使用的是专用集成发射芯片来实现遥控码的发射,如东芝TC9012,飞利浦SAA3010T等,通常彩电遥控信号的发射,就是将某个按键所对应的控制指令和系统码(由0和1组成的序列),调制在38KHz的载波上,然后经放大、驱动红外发射管将信号发射出去。不同公司的遥控芯片,采用的遥控码格式也不一样。较普遍的有两种,一种是NEC标准,一种是PHILIPS 标准。

NEC标准:遥控载波的频率为38KHz(占空比为1:3);当某个按键按下时,系统首先发射一个完整的全码,如果键按下超过108ms仍未松开,接下来发射的代码(连发代码)将仅由起始码(9ms)和结束码(2.5ms)组成。一个完整的全码=引导码+用户码+用户码+数据码+数据反码。其中,引导码高电平4.5ms,低电平4.5ms;系统码8位,数据码8位,共32位;其中前16 位为用户识别码,能区别不同的红外遥控设备,防止不同机种遥控码互相干扰。后16 位为8 位的操作码和8位的操作反码,用于核对数据是否接收准确。收端根据数据码做出应该执行什么动作的判断。连发代码是在持续按键时发送的码。它告知接收端,某键是在被连续地按着。

NEC标准下的发射码表示

发射数据时0用“0.56ms高电平+0.565ms低电平=1.125ms”表示,数据1用“高电平0.56ms +低电平1.69ms=2.25ms”表示

即发射码“0”表示发射38khz的红外线0.56ms,停止发射0.565ms,发射码“1”表示发射38khz 的红外线0.56ms,停止发射1.69ms

红外解码

红外解码

一、红外遥控传输编码协议

鉴于彩电、VCD、DVD音视频系统和家电音响设备所配红外遥控器的控制种类多,各遥控器之间工作时又不能互相干扰,若采用简单的编码方式,很难适应其要求,所以,家电专业生产厂家给这此遥控器制定了严格的红外线传输编码协议,市面上有几种编码协议,如NEC码、Sonyd码、RECS80码、Motorola码、Japanese码、SAMSUNG码等,这里仅对NEC编码协议为实例,先详细介绍它的编码方式,然后介绍遥控器的接收解码原理,再用51单片机把接收的解码信号按键码工作方式读取出来。

图1

1。红外编码NEC协议

NEC协议的编码称为NEC码,采用脉冲相位调制(PPM),红外遥控器调制波的载波频率为38kHz。图2是NEC码的定义和编码格式:图2(a)是NEC协议的“0”、“1”码的定义,即“0”码定义为0.56ms高电平脉宽(常称为传号)和0.565ms低电平(常称为空号)组成“0”码;“1”码定义为0.56ms高电平脉宽和1.69ms低电平,组成“1”码。由此可见NEC协议“0”、“1”码定义与我们熟悉的二进制“0”、“1”定义完全不同。图2(b)是NEC协议传输一帧信息(或信号)码的组成,每一帧信息由引导码(9ms脉宽和4.5ms低电平)开始,后面紧跟着16位地址码(又称用户码)和16位键码(又称命令码)。在16位地址码中,有的分为低8位地址和高8位地址;而有的高8位地址码是低8位地址码的反码。在16位键码中,其高8位是键码,低8位是键码的反码。地址码和命令码的发送均是低位在前,高位在后。由上述可见,NEC协议的一帧信息占用的时间长度为67.5ms。

详解红外遥控器编码解码原理!

详解红外遥控器编码解码原理!

详解红外遥控器编码解码原理!

红外遥控器原理介绍

红外线遥控是目前使用最广泛的一种通信和遥控手段。由于红外线遥控装置具有体积小、功耗低、功能强、成本低等特点,因而,继彩电、录像机之后,在录音机、音响设备、空凋机以及玩具等其它小型电器装置上也纷纷采用红外线遥控。工业设备中,在高压、辐射、有毒气体、粉尘等环境下,采用红外线遥控不仅完全可靠而且能有效地隔离电气干扰。

红外遥控系统:通用红外遥控系统由发射和接收两大部分组成,应用编/解码专用集成电路芯片来进行控制操作,如图1所示。发射部分包括键盘矩阵、编码调制、 LED红外发送器;接收部分包括光、电转换放大器、解调、解码电路。

红外的简单发射接收原理:

在发射端,输入信号经放大后送入红外发射管发射,在接收端,接收管收到红外信号后,由放大器放大处理后还原成信号,这就是红外的简单发射接收原理。

1、红外遥控系统结构

红外遥控系统的主要部分为调制、发射和接收,如图1所示:

打开今日头条,查看更多精彩图片

红外遥控是以调制的方式发射数据,就是把数据和一定频率的载波进行“与”操作,这样既可以提高发射效率又可以降低电源功耗。

调制载波频率一般在30khz到60khz之间,大多数使用的是

38kHz,占空比1/3的方波,如图2所示,这是由发射端所使用的455kHz晶振决定的。在发射端要对晶振进行整数分频,分频系数一般取12,所以455kHz÷12≈37.9kHz≈38kHz。

目前有很多种芯片可以实现红外发射,可以根据选择发出不同种类的编码。由于发射系统一般用电池供电,这就要求芯片的功耗要很低,芯片大多都设计成可以处于休眠状态,当有按键按下时才工作,这样可以降低功耗芯片所用的晶振应该有足够的耐物理撞击能力,不能选用普通的石英晶体,一般是选用陶瓷共鸣器,陶瓷共鸣器准确性没有石英晶体高,但通常一点误差可以忽略不计。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

#include

#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就可以了,目的是提高解码的准确度,减少误差。

相关文档
最新文档