红外遥控的基本原理及通用多址遥控系统设计

发布者:知音学友最新更新时间:2018-04-11 来源: eefocus关键字:红外遥控  多址遥控系统 手机看文章 扫描二维码
随时随地手机看文章

    红外遥控在家用电器、安全保卫、工业控制以及人们日常生活中广泛应用,特别是家用电器、安全保卫。

    当家里的电视或者VCD、DVD较多时,有时候用遥控器遥控它们,会产生冲突,发生误操作。本来只想遥控当中的一台机器,但是两台电视机或者一台VCD(DVD)和一台电视机同时受到遥控。仔细分析,这两个设备产生冲突是由红外编码的问题引起的,由于它们有相同的地址编码,所以会同时发生动作,这就造成了上述麻烦。解决问题的关键在于,给每个电器设置不同的地址编码,当遥控时,先发送地址编码,地址相同的才能接受动作,接受后续发来的数据,先选择要遥控的对象,而后再按键执行相应的动作。

    在本文介绍的设计中,用单片机模拟红外遥控器编码,从矩阵键盘输入要遥控的地址,然后通过红外发光二极管发射编码信号,接收部分先把发射部分发射的编码信号接收下来,再和自己本身的地址作比较,如果地址相同,则点亮一只二极管,表示地址相同,遥控成功;否则二极管仍旧是熄灭的。

    此设计是根据红外线遥控的原理设计的,可以在此基础上设计出解决家用电器“打架”现象的电路系统,应用到实际生产中,因此具备一定的实用性。

    红外遥控的基本原理

    红外线遥控系统一般由发射器和接收器两部分组成。发射器由指令键、指令信号产生电路、调制电路、驱动电路及红外线发射器组成。当指令键被按下时,指令信号产生电路便产生所需要的控制信号,控制指令信号经调制电路调制后,最终由驱动电路驱动红外线发射器,发出红外线遥控指令信号。

    接收器由红外线接收器件、前置放大电路、解调电路、指令信号检出电路、记忆及驱动电路、执行电路组成。当红外接收器件收到发射器的红外指令信号时,它将红外光信号变成电信号并送到前置放大电路进行放大,再经过解调器后,由信号检出电路将指令信号检出,最后由记忆电路和驱动电路驱动执行电路,实现各种操作。

    控制信号一般以某些不同的特征来区分,常用的区分指令信号的特征是频率和码组特征,即用不同的频率或者编码的电信号代表不同的指令信号来实现遥控。所以红外遥控系统通常按照产生和区分控制指令信号的方式和特征分类,常分为频分制红外线遥控和码分制红外线遥控。

6

图1 遥控发射部分组成

    1 红外遥控系统发射部分

    红外遥控发射器由键盘矩阵、遥控专用集成电路、驱动电路和红外发光二极管三部分组成,结构如图1所示。

  当有键按下时,系统延时一段时间防止干扰,然后启动振荡器,键编码器取得键码后从ROM中取得相应的指令代码(由0和1组成的代码),遥控器一般采用电池供电,为了节省电量和提高抗干扰能力,指令代码都是经32~56kHz范围内的载波调制后输出到放大电路,驱动红外发射管发射出940nm的红外光。当发送结束时振荡器也关闭,系统处于低功耗休眠状态。载波的频率、调制频率在不同的场合会有不同,不过家用电器多采用的是38kHz的,也就是用455kHz的振荡器经过12分频得到的。

    遥控发射器的信号是由一串0和1的二进制代码组成的,不同的芯片对0和1的编码有所不同,现有的红外遥控包括两种方式:脉冲宽度调制(PWW)和脉冲位置调制(PPM或曼彻斯特编码)。两种形式编码的代表分别是NEC和PHILIPS的RC-5。

    2 红外遥控系统接收部分

    接收部分是由放大器、限幅器、带通滤波器、解调器、积分器、比较器等组成的,比如采用较早的红外接收二极管加专用的红外处理电路的方法,如CXA20106,此种方法电路复杂,现在一般不采用。但是在实际应用中,以上所有的电路都集成在一个电路中,也就是我们常说的一体化红外接收头。一体化红外接收头按载波频率的不同,型号也不一样。由于与CPU的接口的问题,大部分接收电路都是反码输出,也就是说当没有红外信号时输出为1,有信号输出时为0,它只有三个引脚,分别是+5V电源、地、信号输出。

    系统的设计

    1 单片机编码发射部分

    ① 键盘部分

    红外遥控器的发射器电路比较简单,由一个4×4矩形键盘、一个PNP驱动三极管、一个红外线发光二极管和两个限流电阻组成。要遥控哪台接收器由键盘输入,即由键盘输入要红外遥控的地址,地址经过编码、调制后通过红外发光二极管发射出去。

    矩阵键盘部分由16个轻触按键按照4行4列排列,将行线所接的单片机的I/O口作为输出端,而列线所接的作为输入。当没有键被按下时,所有输出端都是高电平,代表没有键按下。有键按下时,则输入线就会被拉抵,这样,通过读入输入线的状态就可以知道是否有键被按下。

    键盘的列线接到P1口的低4位,行线接到P1口的高4位,列线P1.0~P1.3设置为输入线,行线P1.4~P1.7设置为输出线。

      

图2 载波调制示意图


● 检测当前是否有键被按下。检测的方法是使P1.4~P1.7输出为0,读取P1.0~P1.3的状态,若P1.0~P1.3为全1,则无键闭合,否则有键闭合。

● 去除键抖动。当检测到有键按下后,延时一段时间再做下一步检测判断。

● 若有键按下,应该识别出是哪一个键闭合。方法是对键盘的行线进行扫描。P1.4~P1.7按下面4种组合依次输出1110,1101,1011,0111,在每组行输出时读取P1.0~P1.3,若全为1,则表示0这行没有键输入,否则有键闭合。由此得到闭合键的行值和列值,然后采用计算的方法或者查表的方法将闭合键的行值和列值转换成所定义的值。

● 为了保证每闭合一次CPU仅作一次处理,必须去除键释放时的抖动。产生的键值放在发送数据库区,30H存放的是产生的键值,即要遥控的8位地址共1字节,31H放的是和30H中的相同的8位地址,地址码重发了一次,主要是加强遥控器的可靠性,如果两次地址码不相同,则说明本帧数据有错,应该丢弃。32H放的是00H(为了编程简单),33H放的是0FFH,一共32位数据。要发送数据时,只要到那里读取数据即可,然后调用发射子程序发送。

    ②载波部分

    根据前面介绍的红外遥控的基本原理,红外遥控器编码调制的方法其实很简单,只要生成一定时间长的电平就可以。再通过一个38kHz载波调制便可以发射编码。载波的产生方法有多种,可以由CMOS门电路RC振荡器构成,或者由555时基电路构成等。

    在此次设计中采用的是CPU延时,即用定时器中断完成,用单片机的T0定时产生38kHz载波。设定定时器为方式2,即自动恢复初值的8位计数器。TL0作为8位计数器,TH0作为计数初值寄存器,当TL0计数溢出时,一方面置1溢出标志位TF0,向CPU请求中断,同时将TH0内容送入TL0,使TL0从初值开始重新加1计数。因此,T0工作于方式2,定时精度比较高。根据计算,设定38KHz的定时初值,采用12kHz晶振的定时初值为0F3H,用11.0592kHz晶振时的初值为0F4H,设定好定时器中断,在中断程序中只写入取反P2.0(CPL P2.0),当要发送数据1时,前面560μs高电平发送时,先打开定时器中断,再启动定时器,允许定时器工作,延时560μs再关定时器,后面1690μs的低电平因为不发送信号,所以可以直接置P2.0高电平后,延时1690μs即可;数据0前面的560μs高电平和数据1的一样,后面560μs的低电平因为不发送信号,所以可以直接置P2.0高电平后,延时560μs即可。

    2 红外接收解码电路

    红外遥控接收采用一体化红外接收头,它将红外接收二极管、放大器、解调、整形等电路安装在一起,只有三个引脚。红外接收头的信号输出端接单片机的INT0端,单片机中断INT0在红外脉冲下降沿时产生中断。电路如图3.3所示,图中增加一只PNP三极管对输出信号放大,R和C组成去耦电路抑制电源干扰。

      

图3 一体化接收头示意图

    3 遥控信号的解码算法

    平时,遥控器无键按下时,红外发射二极管不发出信号,遥控接收头输出信号1,有键按下时,0和1的编码的高电平经遥控接收头反相后会输出信号0,由于与单片机的中断脚相连,将会引起单片机中断(单片机预先设定为下降沿产生中断)。

    遥控码发射时由9ms的高电平和 4.5ms的低电平表示引导码,用560μs的高电平和560μs的低电平表示数据“0”,用560μs的高电平和1690μs的低电平表示数据“1”,引导码后面是4字节的数据。接收码是发射码的反向,所以判断数据中的高电平的长度是读出数据的要点,在这里用882μs(560~ 1690μs之间)作为标尺,如果882μs之后还是高电平则表示是数据1,将1写入寄存器即可(数据为1时还需要再延时一段时间使电平变低,用来检测下一个低电平的开始)。882μs后电平为低电平则表示是数据0,则将0写入寄存器中,之后再等待下一个低电平的到来。

    继续接收下面的数据,当接收到32位数据时,说明一帧数据接收完毕,然后判断本次接收是否有效,如果两次地址码相同并且等于本系统的地址码,数据码和数据反码之和等于0FFH,则接收的本帧数据有效,点亮一只发光二极管,否则丢弃本次接收到的数据。

    接收完毕后,初始化本次接收到的数据,准备下次遥控接收。

    结束语

    本文设计的通用多址遥控系统达到了预先想到的性能要求,在实际应用中,可以在这个系统的基础上设计红外遥控信号自学习系统。首先要对设备的红外遥控信号进行识别并存储(自学习),然后在需要时进行还原。制成自学习系统后可以实现对录相机和投影机、电视机遥控信号的自学习和还原,从而在多媒体远程教学系统中实现可红外遥控设备的控制。


关键字:红外遥控  多址遥控系统 引用地址:红外遥控的基本原理及通用多址遥控系统设计

上一篇:基于单片机的无人机真空速测量系统设计
下一篇:单片机显控系统中的实用的汉字拼音输入法

推荐阅读最新更新时间:2024-03-16 15:59

基于MSP430单片机的红外遥控器设计
1 引言 在工业控制的许多环境下,不适合操作人员直接控制,例如:高温、高压、辐射、粉尘、强酸性、腐蚀性、有毒气体等。这时,红外遥控是可行的控制方式。通过这种方式,操作人员能及时采集现场数据,修改控制对象的参数,并发送控制命令,以达到理想的控制效果。红外遥控通过红外通信的方式进行控制,具有低功耗、低成本、高可靠性、体积小、结构简单、避免人身伤害等优点,是一种先进的控制方式,具有广阔的应用前景。 2 红外通信原理 红外通信,即以红外线作为通信载体,通过红外光在空中的传播来传输数据的通信方式,它由发射端和接收端来完成。在发射端,发送的数字信号经过适当的调制编码后,送入电光变换电路,经红外发射管转变为红外光脉冲发射到空中;在接收端,
[单片机]
基于MSP430单片机的<font color='red'>红外遥控</font>器设计
状态机的典范-HT6222红外遥控芯片接收程序
/************************************************************* 红外线遥控器按键检测程序. 通过检测两次下降沿之间的时间差判断接受到的数据位. 已经通过了测试,能够正确区分出32bit数据的遥控器按键键值. 具有数据重发功能,但是数据的重发有点频繁. 使用晶震频率为11.0592MHz,所有定时值都是基于这个频率计算. 占用很少量的CPU时间,使用了外部中断0接受数据,定时器0进行计数, 定时器1作为串口的波特率发生器(Band = 9600). 主函数会使MCU进入低功耗模式,如需加入自己的代码需要屏蔽此功能. 状态机: 1.如果时间差=0,由空闲态进入接受态
[单片机]
合泰单片机接收红外遥控器程序(NEC码)
;;内容:按下PA3接的按键进中断LED数码管加1 ;数码管段码接法A-PD0,B-PD1....G-PD6,H-PD7 ;数码管位码接法OM0-PC0...COM4-PC3 ;红外头接-PA.3 ;完整源代码下载:http://www.51hei.com/f/hthw.rar include HT66F50.inc ORG 0000H JMP A1 ORG 04H ;外部中断0入口地址 JMP ZD01 ; ORG 0014H ;多功能中断入口地址 JMP ZD1 ORG 30H ; Q1: DC 03FH ; 0 DC 006H ; 1 DC 05BH ; 2 DC 04FH ; 3 DC 066H ; 4 DC 06DH ;
[单片机]
1602液晶显示红外遥控解码C语言程序设计
#include at89x52.h #define uchar unsigned char #define uint unsigned int /*----------------------------控制I/O口设置,根据实际而定---------------*/ #define RS P2_0 //RS数据命令选择端,高电平数据,低电平命令 #define RW P2_1 //RW读写选择端,高电平读操作,低电平写操作 #define E P2_2 //E使能控制端,E高电平跳变为低电平时LCD执行命令 #define DATA P0 //数据端口定义 #define D0 P0_
[单片机]
基于STM32F407的万能红外遥控
利用stm32f407的PA8引脚的复用功能输入捕获功能,将遥控器每个按键所对应的波形记录下来,再通过红外发射头发射出去,进而来控制电器。 由于要对所有遥控器适用,这就要求程序要能够在不知道红外编码方式的前提下学习,所以我决定将遥控器发出来的所有波形都记录下来,用的时候再按这个波形发射就能够实现遥控,中间不需要解码出相应的键值码。 编程学习波形的大致思路: 将遥控器每一个按键所对应的波形学习下来(即储存高低电平的时间 参考nec编码协议部分内容)每一位信息应该对应两个时间,所以要存储200多个时间信息,建立二维数组进行存储,利用输入捕获捕获到下降沿的时候开始计时,并立即设置为上升沿捕获,上升沿时来时读取低电平时间存到数
[单片机]
一种智能红外遥控开关的原理及设计
0 引言   红外遥控是当前使用最为广泛的通信和控制手段之一,由于其结构简单、体积小、功耗低、抗干扰能力强、可靠性高及成本低等优点而广泛应用于家电产品、工业控制和智能仪器系统中。然而市场上的绝大部分遥控器都是针对各自特定的遥控对象设计的,不能直接应用于通用的智能仪器研发及其更一般的控制场合。通常情况下,一般家庭所使用的电视机、空调、VCD/DVD等家用电器都使用了红外遥控器,而这些红外遥控器都是针对各自产品所设计的,从而导致了一般家庭中拥有数个遥控器,那么,能否将这些遥控器的功能进行复用,进而减少遥控器的数量,使遥控器的功能更加强大,就显得十分必要了。   电源开关广泛应用于家庭、工厂、仓库、以及办公室等场所。传统的机械式电源
[安防电子]
一种智能<font color='red'>红外遥控</font>开关的原理及设计
基于单片机的灯头红外遥控系统设计
  1 红外遥控系统的原理   红外遥控电路的结构形式一般分为3种,即:单通道遥控开关电路、单通道步进式遥控电路和多通道遥控电路。本设计采用单通道遥控开关电路,这种红外遥控系统一般由发射和接收两大部分组成,发射部分一般包括脉冲发生器、脉冲功放和红外发射,接收部分一般包括红外接收、电压放大、限幅放大、双稳触发和继电器,有的还采用专用遥控集成电路使结构简化。本遥控系统主要由开关控制按键、定时数据输入按键、亮度控制按键、定时控制电路、显示电路、红外发射电路、红外接收电路、亮度控制及执行电路等组成。   2 硬件电路   2.1 开关控制   该部分主要实现遥控开灯或关灯,为一个按键。当按下按键时,红外发射部分发射一红外脉冲,经红
[单片机]
基于单片机的灯头<font color='red'>红外遥控</font><font color='red'>系统</font>设计
基于89C52单片机的红外遥控双模式交通灯控制系统设计
引言 近年来,随着经济的快速发展,城市中车辆不断增多。由此引起交通拥挤、堵塞,交通事故频发等一系列问题。交通灯是城市重要的交通指挥系统,与人们的日常生活有十分密切的关系,它不仅关系到城市交通的有序进行,也影响到人们的出行便捷和安全。设计一个稳定、灵活、便捷的交通灯控制系统具有必要性和现实性。然而现实生活中很多交通灯都是按照一个时间间隔切换。而本设计中交通灯可根据平时或上下班高峰期来转换红绿灯切换时间,如上下班高峰期红灯转换时间设置为40 秒,平时设置为60 秒。这样可有效缓解在上下班时间,由于红灯设置时间太长,为了赶时间而闯红灯现象。同时,有效缓解交通堵塞现象。 1 交通管理方案的论证 1968 年,联合国《道路交
[单片机]
基于89C52单片机的<font color='red'>红外遥控</font>双模式交通灯控制<font color='red'>系统</font>设计
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved