IR(红外遥控)基本原理

Posted Abro.

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了IR(红外遥控)基本原理相关的知识,希望对你有一定的参考价值。

目录

一、简介

二、IR的种类 

三、NEC码的说明

四、IR的功能实现


一、简介

        IR(Infrared Remote)即红外遥控。每按下一个键,即产生具有不同编码的数字脉冲,这种代码指令信号通过调制激励红外光二级管产生具有脉冲串的红外波,通过空间的传送到受控机内的遥控接收器。在接收过程中,红外波信号通过光学滤波器和光电二极管转换为电信号,此信号经过放大、检波、整形、解调、送到解码与接口电路,从而完成相应的遥控功能。


二、IR的种类 

  • 很多半导体公司推出了自己制定的编码方式和其专用的遥控发射芯片,根据厂家分类有PHILIPS码、SANYO码、TOSHIBA码、NEC码等,另外,还有根据芯片名称分类,有TC9012码、L7461码、M34280码等。
  • 所有码的编码方式都是大同小异的,一般都由引导码,用户码和键数据码组成,引导码的作用是“引导”接收器开始接收数据,用户码的作用是用来区分不同的遥控器,让接收设备分辨是否为本机的遥控器,键数据码是用来区分不同的按键。不同编码方式的主要不同点在于引导码的长度和数据位的多少,以及表示“0”和“1”的脉冲的宽度。

三、NEC码的说明

  • 遥控码构成:引导码由9ms高电平脉冲及4.5ms低电平脉冲组成,一帧数据中含有24位,8位用户码和用户码的反码,接着是8位键数据码和键数据码的反码,发射时低位在前,高位在后。一帧完整的数据如下图所示:

        

  • 脉冲调制方式:PWM,脉冲载波:38KHz,脉冲宽度“1”由 0.56ms高电平加1.68ms低电平表示,“0”由0.56ms高电平加0.56ms低电平表示。如下所示:

        

 


四、IR的功能实现

问题:如何使遥控器传送过来的红外脉冲与主处理器取得通信,从而实现相应的IR功能呢?

一般是通过I/O接收并存储到相应的寄存器,主程序用循环的方式来查询是否有IR信号进来,如果没有,继续查询,如果有,读取IR信息,逐步映射到相应的功能函数,从而实现相应的IR功能。


如有错误,希望各位观摩的大佬能指出嘻嘻嘻~

以上是关于IR(红外遥控)基本原理的主要内容,如果未能解决你的问题,请参考以下文章

IR(红外遥控)基本原理

基于Arduino的红外遥控

树梅派硬件编程_红外遥控器

树莓派 ——红外遥控篇lirc【内核4.19.x】

红外接收器多频

IRM3800 红外遥控器解码 linux驱动