当前位置:文档之家› 红外遥控制作详解

红外遥控制作详解

红外遥控制作详解
摘要:文章从实际应用角度出发,详细分析了红外遥控器的编码原理,硬件电路搭建,并给出了遥控器信号发送与接收的程序流程。

引言:红外遥控自1974年发明以来,因其体积小、重量轻、价格低廉、使用灵活、功耗低及抗干扰能力强等特点得到很广泛的应用,在日常生活中随处可见,如红外线鼠标,红外线打印机,红外线键盘等等。

本文将以红外遥控电路为例,详细介绍红外遥控的制作流程。

一、原理介绍
红外遥控系统由发射和接收两大部分组成,红外发射管将电能转化为光能,接收管感应红外光,将光能转化为电信号。

其通信的机理是利用单片机控制NE555发送脉宽调制的串行码,以脉宽为1ms、间隔0.5ms、周期为1.5ms的组合表示二进制的“0”;以脉宽为3ms、间隔0.5ms、周期为3.5ms的组合表示二进制的“1”,通过一个9ms的起始码(低电平),和一个5ms结果码(高电平)这个码值使程序能够判断是否可以开始接收数据。

二、硬件解析
整体硬件电路见附录。

下面我们详细分析一下其中几个重点模块。

1.NE555调制模块
如果仅控制芯片的控制信号来驱动红外发射管的红外线发射,是不能让红外接收头收到信号的。

接收头所能判断的信号为一定频率信号。

大多数红外接收头能接收的中心频率为38kHz,但也有一些接收头中心频率为36kHz、37kHz、39kHz、40kHz,如果发射频率与接收频率相差1kHz,大多可以正常遥控,相差2kHz以上则会出现遥控不灵现象。

而单片机的信号频率没有这
么大,因此,我们要对控制芯
片输出的控制信号进行调制。

这里我们所介绍的调制电路
以NE555为中心,加以一
定的外围电路,构成多谐振荡
器。

先来看一个NE555的
经典多谐振荡电路,如图1。

它的原理是把施密特触发器
的反相输出端经RC积分电路
接回到它的输入端,构成多谐
振荡器。

即只要将NE555定时器的TH和TR连在一起拼成施密特触发器,然后再将V o经RC积分电路接回输入端就可以了。

电容C1电压波型图如图2。

由波形图可以求出电容C1的充电时间T1和放电时间T2分别为:
T1R1R2Cln V cc V t
V cc V t
R1R2Cln2
T2R2C 0V t
0V t
R2Cln2
因此电路的振荡周期为:
T T1T2R12R2Cln2
在这里,我们应当注意到,由图1的电路所得到的输出脉冲的占
空比为:
q T1
T
R1R2
R12R2
占空比q恒大于50%。

原因
主要是因为电容C1的充电
和放电路径不同,充电路径
中的电阻和放电路径中的电
阻始终不能达到平衡。

知道
了这一原因,我们就可以对
该电路稍作改进。

改进后的
电路如图3所示:二极管D1和D2改变了电容C1的充电电流和放电电流流经的路径,充电电流只经R1,放电电流只经R2。

因此电容C1的
充电时间和放电时间分别变为:
T1R1Cln V cc V t
V cc V t
R1Cln2
T2R2Cln 0V t
0V t
R2Cln2
占空比为
q T1
T
R1
R1R2
这时,占空比可以达到任何
我们想要的值。

在这里我们
取R1R2R
振荡周期为:
T T1T22RCln2
本电路中,红外接收管的载
波频率为f=38KHz,取电容
为0.1uF,代入上述公式中可
以计算出R=190欧姆。

2.红外发射驱动电路模块
红外发射的驱动电路可用图4电路,但这曾加了NE555的负担,红外发射的功率比较低,发射的距离不是很理想。

图5很好的解决了这个问题,通过一个8050NPN型三极管,作为开关作用,驱动发射管在电源和地之间的导通状态来控制红外发射
与否,这样提高的红外发射的功率,也减轻了NE555的负载。

市场上一般所用的红外发射管的规格为工作电压 1.5-1.35(V),工作电流50-10(mA)。

这里取工作电压1.4V,工作电流36mA为例作一个粗略的计算。

R=(5-1.4)/0.036=100欧姆。

这种计算方式在电流不是太小
的情况下是可以用的。

由图6
可知二极管的伏安特性曲线为
非线性,在不同电流下这个稳
压电压可能不同。

理论上,我
们应当根据图6的伏安特性曲
线,由下式算得正确值:
R E c U F
I F
E c:电源电压
U F:I F值下的正向电压
3.红外接收电路模块
在程序中我们定义外部中断为边沿触发方式,下降沿有效。

不接收信号时,中断口P3.2的电平为高电平状态。

而发射头在没有信号时是一直处于发射状态的,使得接收头的电平一直处于
低电平,这正好与中断口的判断相反。


就是说我们所需要做的工作是把接收头的
电平取反。

当然,我们不需要特意去买一
个非门芯片,原理很简单,只要让接收头
的输出端控制三极管的B极,中断口接三
极管C极(这里以NPN型为例)上拉电
阻端,就可达到目的了。

三、软件流程
红外发射通过单片机的P2.7口控制NE555芯片的复位端,来控制555输出端调制后的38kHZ信号的输出与否,形成载波,以控制红外发射头的发射。

其程序设计流程图下图所示。

首先对
后面要用到的寄存器设初值,开中断允
许位,然后等待按键按下。

延时1ms对
按键动作的二次判断可以防止第一次检
测到的信号为干扰信号。

另外,延时还
可以起到反弹跳的效果。

当第二次判断
有键按下则判定按键动作有效,开始扫
描按键,并存储相应键号。

然后发送起
始码和结果码。

接着把20H单元里的数
值带进位位左移,判断进位标志位CY
的电平,当C=1时,调用SEND1子程
序,发送3ms的高电平和0.5ms的低电
平,当C=0时,调用SEND0子程序,
发送1ms的高电平和0.5ms的低电平,
每发完一位都对C进行清零。

如此循环移位八次,就达到了发送的效果。

本次使用的接收头为一体化接收头,它本身可以对接收信号进行放大、解调等。

接收程序设计流程下图所示,首先在程序开始时对其设初值,开中断,这里外部中断0采用的是边沿触发方式,下降沿有效。

定时器0采用工作模式1,为16位计数,设定初值为FF9BH,使得100us产生一次中断让R2自增1,同时等待外部中断,当外部中断到来时,首先判断此时的R2是否在130到150之间,如果不是,则说明这个信号不是
起始码,重新等待。

如果在这个
范围之内,则说明接收到的是起
始码,接下来产生的的八次外部
中断,要依次将此时的R2值放
到20H到27H单元中去。

下面开
始解码,判断20H到27H单元中
的值是在0到25之间还是在25
到45之间,如果在0到25之间,
则让R4与FEH,再左移一位,如
果在25到45之间,则让R4或
01H,再左移一位,如此循环八次。

当八次循环结束,此时R4的值
就为发射管发出的键号值,最后
让R4的值在P2口显示出来。

相关主题