×
单片机 > 单片机程序设计 > 详情

利用单片机实现的红外线遥控系统

发布时间:2020-05-30 发布时间:
|

引言

随着科学技术的不断发展,红外线遥控器因其具有体积小、功耗低、功能强、成本低等特点正在向各个领域渗透,在家用电器、安全保卫、工业控制以及人们日常生活中广泛应用,特别是在家用电器、安全保卫和人们日常生活中的应用就更广泛了。本文给出用软件方式实现红外遥控器译码的单片机程序,所有程序都经过实际单片机系统调试通过。对于硬件电路,发射由红外线遥控器完成,而接收部分则只需要在单片机系统中添加一个红外线接收管就可完成。

1 红外线遥控系统

红外线遥控系统就是指利用红外线来传递控制信号,实现对控制对象的远距离控制的目的;具体来讲,就是由发射器发出红外线指令信号,由接收器接收信号并对信号进行处理,最后实现对对象的各种功能的远距离控制。红外线遥控系统一般由发射器和接收器两部分组成:发射器包括指令键、指令信号产生电路、调制电路、驱动电路及红外线发射器件;接收器由红外线接收器件(如红外线接收头)、前置放大电路解调电路、指令信号检出电路、记忆及驱动电路、执行电路等组成。红外线遥控系统按照产生和区分控制指令的方式和特征来分类,常用的有频分制和码分制红外线遥控— —频分制红外线遥控就是信号产生电路以不同频率的电信号代表不同的控制指令:码分制红外线遥控是指信号产生电路以不同的脉冲编码代表不同的指令。

2 红外线遥控信号码

以一款台湾PTC公司出产的PT2222—1为编码芯片的DVD遥控器为例。红外线遥控器发送红外信号,红外线接收电路接收到的红外线信号可以通过高性能数字示波器触发锁存获得。红外线波形如图1所示:

图1 红外线波形图

在平时没有接收到红外线信号时,接收器的输出电平为1;当某个键按下时。波形的开始是一个9ms的低电平0,然后是4.5ms的高电平1,接着是32个比特(4个字节)的数据,其中第一和第二字节是遥控器的地址码(对于一款已经设计好的遥控器,地址码是固定不变的),第三个字节是遥控器键值码。第四个字节是遥控器键值码的反码。其作用是用于解码后进行校验。[page]

NEC遥控器协议约定,当红外线遥控器发送的键值码数据为0时。波形应为如图2所示的上跳波形。

波形总宽为1.15ms。高电平部分长度约为550us,低电平的长度约600US,波形如下图2。

图2 键值码为0时的波形图

而当红外线遥控器发送的键值码数据的数据为1时,波形是一个总宽为2.25ms的上跳波形。高电平的长度约1.6ms.低电平的长度约650us,波形如下图3。

图3 键值码为1时的波形图

很显然,0的波形长度和1波形的长度是不同的。若从波形的上升沿开始计时,当延时达到550us以后。数据“0”的电平为低电平,数据“1”的电平仍然为高电平,直到1 600us以后,才变为低电平。这就给我们留出了大约600US的“窗口”时间。换句话说,只要在监测到上升沿以后的550us到11 500us时间里进行采样,就可以使用软件的方法判断出遥控器键值码中的1和0。



『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
8051单片机的函数发生器的设计