[牛人杂谈]

红外遥控接收发射原理

[复制链接]
490|5
手机看帖
扫描二维码
随时随地手机跟帖
wanduzi|  楼主 | 2019-3-28 11:00 | 显示全部楼层 |阅读模式
红外遥控是利用近红外光进行数据传输的一种控制方式。近红外光波长0.76um~1.5um,红外遥控收发器件波长一般为0.8um~0.94um,具有传输效率高,成本低,电路实现简单,抗干扰强等特点,在家用电器上被广泛使用。
红外遥控一般有发射和接收两部分组成,发射元件为红外发射管,接收一般采用一体化红外接收头,但发射载波频率与接收头固定频率需一致才能正确接收。
0.gif
一、发射1. 调制
红外遥控是以调制方式发射数据,将数据调制到固定的载波上发送,调制发送抗干扰能力更强,传送距离也更远。红外发送首先要解决的就是调制问题。
目前主流的调制方式有PPM和PWM。
  • PPM:脉冲位置调制,调制脉冲宽度不变,用脉冲间隔来区分0和1。如下图所示,脉冲宽度不变都是560us,脉冲间隔改变。逻辑1总时间为2.25ms,逻辑0中时间长度为1.12ms。

353375c9c38b6d9e9f.png
图1:PPM调制
  • PWM:脉冲宽度调制,脉冲间隔不变,调制脉冲宽度改变。如下图所示,脉冲间隔为600us,脉冲宽度不同。逻辑1高电平时间为1.2ms,逻辑0高电平时间为0.6ms。

73765c9c38c049a89.png
图2:PWM调制
调制载波频率一般在30KHz到60KHz之间,常用的载波有33K,36K,36.6K,38K,40K,56K等,其中38K使用最多。
常用占空比有1/3、1/2,1/3最多。

使用特权

评论回复
wanduzi|  楼主 | 2019-3-28 11:01 | 显示全部楼层
2. 红外传输协议
常用的红外传输协议有ITT协议、NEC协议、Nokia NRC协议、Sharp协议、Philips RC-5、RC-6 RECS-80协议、Sony SIRC协议等,其中最常见的为NEC协议。
常见NEC协议分析:
  • 载波38KHz,逻辑1为2.25ms,脉冲时间560us;逻辑0为1.12ms,脉冲时间560us

517185c9c3902224c8.png
图3:NEC逻辑0与逻辑1
  • 协议格式

69405c9c38fb20825.png
图4:NEC红外载波发送协议
(1) 首先发送9ms的高电平脉冲
(2) 然后发送4.5ms的低电平
(3) 接下来是8bit的地址码(低位在前)
(4) 然后是8bit的地址反码,用于检验地址码是否出错
(5) 接下来的是8bit的命令码(低位在前)
(6) 然后是8bit的命令反码,用于检验命令码是否出错。
  • 重复码


88045c9c38f386d8a.png
图5:NEC重复发送载波协议
如果一直按着一个键,将以110ms为周期发送重复码,重复码由9ms高电平、2.25ms低电平及560us高电平组成。
425955c9c38ed37f7f.png
图6:NEC重复码

使用特权

评论回复
wanduzi|  楼主 | 2019-3-28 11:02 | 显示全部楼层
3. 编码
虽然不同协议都对各自的协议格式做了不同定义,但总体而言还是有高低电平组成的一串数据。
对于红外发射,就是按照协议规定高电平时间内,在红外输出口输出固定频率载波;低电平则直接输出低。红外接收头接到载波时输出高电平,没有载波时输出低电平,完成数据解码。
252855c9c394346d07.png
图7:NEC解码后协议

使用特权

评论回复
wanduzi|  楼主 | 2019-3-28 11:03 | 显示全部楼层
二、接收
红外接收常采用一体化红外接收头,集红外接收、放大、滤波、比较器输出等功能,并输出MCU可识别的TTL信号的。常用的一体化红外接收头有SCR638、HS0038、VS1838等。
85175c9c397304143.png
SCR638
9625c9c396c4d1ab.png
HS0038
图8:一体化接收头
红外接收应用电路图:
52345c9c396493a95.png

图9:红外接收典型应用

使用特权

评论回复
wanduzi|  楼主 | 2019-3-28 11:03 | 显示全部楼层
三、ESP8266红外发送与接收
ESP8266定义了1个IR红外遥控接口,IR红外遥控接口由软件实现,接口定义如下:

193745c9c39983a1b4.png
图10:ESP8266红外管脚定义
1. 发送
在ESP8266上用于发送的载波可以通过以下方式实现:
1) I2S的BCK
2) WS管脚产生
3) 由GPIO中的sigma-delta功能在任意GPIO口产生载波。
其中sigma-delta产生的载波占空比约为20%,推荐使用MTMS管脚(GPIO14),可产生准确的38KHz且占空比为50%的标准方波。
2. 接收
红外接收功能通过GPIO的边沿中断实现,读取系统时间,将2次时间相减可以得到波形持续时间,然后通过软件逻辑实现红外协议处理。

使用特权

评论回复
wanduzi|  楼主 | 2019-3-28 11:04 | 显示全部楼层
实际上任何的单片机都可以,用IO口就可以实现操作。会发现38KHz载波很容易使用13us定时周期实现,也就是实现一个26us周期的方波作为载波。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

129

主题

1647

帖子

2

粉丝