红外线遥控系统原理及软件解码实例

合集下载

红外遥控解码实验报告(3篇)

红外遥控解码实验报告(3篇)

第1篇一、实验目的本次实验旨在通过搭建红外遥控系统,了解红外遥控的基本原理,掌握红外遥控信号的编码和解码方法,并利用单片机实现对红外遥控信号的解码,实现对红外遥控器的控制。

二、实验原理红外遥控技术是一种无线通信技术,通过发射端发送特定编码的红外信号,接收端接收该信号并进行解码,从而实现对电器的控制。

红外遥控系统主要由发射端和接收端两部分组成。

1. 发射端:由按键矩阵、编码调制电路和红外发射器组成。

按键矩阵根据按键的不同产生不同的编码信号,编码调制电路将这些信号调制在38kHz的载波上,红外发射器将调制后的信号发射出去。

2. 接收端:由红外接收器、前置放大电路、解调电路和指令信号检出电路组成。

红外接收器接收发射端发射的红外信号,前置放大电路对信号进行放大,解调电路将38kHz的载波信号去除,指令信号检出电路从解调后的信号中提取出指令信号。

三、实验设备1. 红外遥控发射器2. 红外接收模块3. 单片机开发板4. 连接线5. 电源6. 红外遥控解码程序四、实验步骤1. 搭建红外遥控系统:将红外接收模块连接到单片机开发板的相应引脚上,确保连接正确无误。

2. 编写红外遥控解码程序:根据红外遥控协议,编写解码程序,实现对红外信号的解码。

3. 程序烧录与调试:将解码程序烧录到单片机中,连接电源,进行程序调试。

4. 测试与验证:使用红外遥控器对单片机进行控制,观察单片机是否能够正确解码红外信号,并实现相应的控制功能。

五、实验结果与分析1. 红外遥控系统搭建成功:通过连接红外接收模块和单片机开发板,成功搭建了红外遥控系统。

2. 解码程序编写与调试:根据红外遥控协议,编写解码程序,实现对红外信号的解码。

在调试过程中,通过观察单片机的输出,验证了程序的正确性。

3. 测试与验证:使用红外遥控器对单片机进行控制,观察单片机是否能够正确解码红外信号,并实现相应的控制功能。

实验结果表明,单片机能够成功解码红外信号,并实现红外遥控器的控制功能。

第13章 红外遥控器的解码

第13章 红外遥控器的解码
Page 6 机械工业出版社 2012-2-16
图13-4 发射器改进电路
Page 7
机械工业出版社
2012-2-16
13.1.4 接收器
图13-5 红外接收器模块图
图13-5所示为一个典型的红外接收器模块图。红外信号 由接收器的检波二极管接收,信号通过放大和限幅2个 环节处理。限幅模块如同一个AGC(自动增益控制电 路),使信号有稳定的脉冲电平,因而可以忽略由于遥 控距离不同接收信号强弱引起的问题。
图13-9 HT6221 PPM编码格式
Page 14
机械工业出版社
送一个码,HT6221 会先送出一个 9ms 的头码和 的头码和4.5ms的间隙,然后依次送出 位 的间隙, 的间隙 然后依次送出16位 的地址码( )、8 的地址码(18ms~36ms)、 位数据码( )、 位数据码( 9ms~18ms)和8 位数据反码,如下图 位数据反码,如下图13-10所示 ) 所示 。
当一个键按下超过36ms,振荡器就使芯片激 , 当一个键按下超过 如果这个键按下且延迟大约108ms,这 活,如果这个键按下且延迟大约 这 108ms 发射代码由一个起始码 发射代码由一个起始码9ms ,一个结果 一个结果 码4.5ms ,低 8 位地址码9ms~18ms ,高 8 位地址 低 位地址码 高 位数据码9ms~18ms 和这 8 位 码9ms~18ms ,8 位数据码 组成。 数据的反码 9ms~18ms 组成。如果键按下超过 108ms 仍未松开,接下来发射的代码为连发代 仍未松开, 也就是仅由起始码9ms和结束码 和结束码2.5ms组 码,也就是仅由起始码 和结束码 组 成的代码。 成的代码。
Page 8
机械工业出版社
2012-2-16

红外遥控器软件解码及其应用

红外遥控器软件解码及其应用

红外遥控器软件解码及其应用随着现代科技的不断发展,红外遥控器已经成为人们日常生活中的必备工具之一。

不过,很多人并不了解红外遥控器的工作原理以及它是如何通过软件解码来实现遥控效果的。

本文将详细介绍红外遥控器软件解码的相关知识,以及其在实际应用中的作用。

一、红外遥控器的工作原理首先,我们需要了解红外遥控器的工作原理。

简单来说,红外遥控器是一种利用红外线光谱来传输指令的设备,通过在发射端发送编码的红外信号,再在接收端解码后执行相应的指令。

通常,红外遥控器由发射部分与接收部分两个部分组成。

发射部分由红外LED发射器构成,它会通过红外发射现象来发送编码的红外信号。

在接收端,红外接收器则会接收到这些信号,并将其转换成电信号进行解码。

之后,解码器会解析出信号的编码含义,然后执行相应的指令。

这就是红外遥控器的基本工作原理。

二、红外遥控器软件解码的实现在红外遥控器的工作中,软件解码起到了重要的作用。

所谓软件解码,就是在终端设备中运行的一种程序,能够将遥控器发射的红外编码转换成可读的指令。

而这些指令就可以用于控制各种家电、设备等。

软件解码的实现主要有两种方式。

第一种是使用硬件解码器,这需要在终端设备上安装一个专门的硬件解码器,用于解析红外信号,并输出相应的指令。

第二种方法则是使用软件解码器,这需要在终端设备上安装一个软件程序,用于解析红外信号并输出指令。

在软件解码的实现中,最常见的是使用赛贝尔红外编解码库。

这个库已经成为了广泛使用的一种红外编解码方案。

它可以用于各种嵌入式设备、物联网设备、手机、电视机顶盒等多种应用场景中。

三、红外遥控器软件解码的应用目前,红外遥控器软件解码已广泛应用于各种智能家居、物联网设备、工控设备等领域。

下面列举一些具体的应用案例:1、智能家居:通过使用红外遥控器软件解码,可以实现对家中的各种电器、设备的遥控控制。

如电视、空调、照明设备等。

2、物联网设备:红外遥控器软件解码还可以用于物联网设备中,如智能家居中的智能门锁、智能家电等。

电路工作原理揭秘遥控器的红外发射与信号解码

电路工作原理揭秘遥控器的红外发射与信号解码

电路工作原理揭秘遥控器的红外发射与信号解码红外发射技术是现代电子产品中常见的一种通信方式,广泛应用于各种遥控器中。

它的工作原理是通过红外光发射器将信号转换成红外光信号,然后通过红外接收器接收并解码,实现远程控制设备的操作。

本文将揭秘遥控器的红外发射与信号解码的工作原理及其应用。

一、红外发射器的工作原理红外发射器是遥控器中的核心部件,它能将电信号转换成红外光信号,并通过空气传输到接收器。

红外发射器工作原理如下:1.1 发光二极管红外发射器通常采用发光二极管(Light Emitting Diode,简称LED)进行红外光的发射。

LED是一种能够发出可见光和红外光的二极管,当通电时,LED会发出特定频率的光信号。

1.2 调制技术为了确保遥控器发出的红外信号能够被接收器正确解码,通常会采用调制技术。

调制技术是通过改变信号的频率、幅度或脉冲来表示信息,常见的调制方式有脉冲宽度调制(PWM)和脉冲位置调制(PPM)。

1.3 码型遥控器发射的红外信号通常是经过编码的,不同的信号对应不同的功能。

常见的红外码型有NEC码、RC-5码、RC-6码等,不同的遥控器使用不同的码型。

二、红外信号解码技术接收器是红外发射信号的接收和解码装置,它能将接收到的红外信号转换成电信号,并进行解码还原为原始信号,从而控制相应的设备。

红外信号解码技术主要包括以下几个方面:2.1 红外接收器红外接收器是用于接收红外信号的装置,它通常由红外接收模块和解码电路组成。

红外接收模块能够接收并转换传输过来的红外光信号,解码电路则负责解析接收到的信号。

2.2 滤波和放大由于环境中存在多种光源,为了确保只接收到有效的红外信号,红外接收器通常会设置滤波器来屏蔽其他频率的光信号。

同时,接收到的红外信号经过放大,以增强信号的强度和稳定性。

2.3 解码和译码接收到的红外信号经过解码电路的处理,通过特定的解码算法还原为原始信号,这样就可以实现对设备的控制。

解码算法通常根据不同的码型进行设计,以确保正确地解析红外信号。

红外线遥控编码解码控制

红外线遥控编码解码控制

红外遥控具有结构简单,制作方便,成本低廉,抗干扰能力强,工作可靠性高等一系列优点。

同时,由于红外遥控器件,工作电压低,功耗小,外围电路简单,因此,在日常生活中广泛应用,如彩电,录像机,音响空调,风扇,即其它的小型电器上。

遥控距离在几米到十几米。

波长在0.76um~1000um的光波为红外光(线),红外光为不可见光。

红外光按波长范围分为近红外、中红外、远红外、极红外4类。

红外线遥控是利用近红外光传送遥控指令的,波长为0.76um~1.5um。

用近红外作为遥控光源,是因为目前红外发射器件(红外发光管)与红外接收器件(光敏二极管、三极管及光电池)的发光与受光峰值波长一般为0.8um~0.94um,在近红外光波段内,二者的光谱正好重合,能够很好地匹配,可以获得较高的传输效率及较高的可靠性。

一、红外遥控系统的构成:主要由两大部分构成: 红外编码发射部分,红外解码接收部分。

红外发射部分主要由,键盘,红外编码芯片(sc6122/ht6122),电源,红外发射管组成。

红外解码部分:由红外接收电路、红外解码、电源和应用电路组成。

红外遥控接收器的主要作用是将遥控发射器发来的红外光信好转换成电信号,再放大、限幅、检波、整形,形成遥控指令脉冲,输出至遥控微处理器。

其中红外接收电路主要是接收部分的红外接收管是一种光敏二极管(现在常用一体化红外接收头)。

三、红外遥控的编码与解码常用的编码芯片HT6122,遥控器的按键信息由编码芯片编码后,以38KHZ的载频,经红外发射管,向外发射。

有引导码,16为用户编码,按键编码,按键反码构成。

引导码:引导码,也称引导脉冲,一般由高电平1和低电平0的脉冲组成,高电平9ms,低电平4.5ms用来标志遥控编码脉冲信号的开始,使遥控接收器能由此判断出所接收的信号是干扰还是系统的遥控代码。

用户码:通常由8位原码和8位反码组成。

它用来指示遥控系统的种类,以区别其它遥控系统,防止各遥控系统的误动作。

红外解码程序

红外解码程序

红外解码程序本篇介绍红外解码的原理和程序的写法。

下面来看一下,红外线是如何编码的。

下面来具体说一下,解码的原理,每按一下遥控器的一个按键,遥控器就会发出32个“0”“1”代码(当然是通过高低电平的占空比来判断是0还是1的),具体是0,1是如何编码的上面图片中有介绍,和一个引导码,引导码的作用是告诉处理器,接下来将要开始发送代码,我们在编写程序时,当检测到引导码时,就应该准备接受数据了。

32位代码中的前16位是用户识别码,不同的遥控器不相同,防止互相干扰的,后16是8为数据码,和8位数据反码。

接下来开始介绍如何解码程序的编写。

程序中用到了两个中断,一个是定时器中断,一个是外部中断。

定时器中断用来准确计时,判断接受的代码是0还是1,外部中断用来准确确定定电平到来的时刻,然后开始计时。

/*********************************************************函数功能:红外解码,用八位数码管显示红外线的按键码,便于红外控制测试环境:hot 51学习板编译环境:keil4整理人:张家越QQ:435835181整理时间:2011-04-03************************************************************/#include<reg51.h>#define uchar unsigned char#define uint unsigned intuchar code seg_du[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0 x6f,0x77,0x7c,0x39,0x5E,0x79,0x71 };//0-f的段选码unsigned char code seg_we[]={0,1,2,3,4,5,6,7};uchar irtime,startflag,bitnum,irreceok;uchar irdata[33];uchar irprosok;uchar display[8];uchar ircode[8] ;sbit led1=P0^1;sbit led2=P0^2;/******************************************************************** ****函数功能:延时函数,在数码管显示时使用,不需要很精确********************************************************************* ****/void delay_50us(uint t){uchar j;for(;t>0;t--)for(j=19;j>0;j--);}/******************************************************************** ******函数的功能:定时器0的初始化********************************************************************* *****/void timer0init(){TMOD=0x02; //设置定时器工作在方式2TH0=0x00; //TL0=0x00; //设置定时器的初值ET0=1; //开定时器中断TR0=1; // 打开定时器EA=1; //开总中断}/******************************************************************** ****外部中断1的初始化********************************************************************* **/void int1init(){IT1=1; //设置触发方式为上升沿EX1=1; //开外部中断1EA=1; //开总中断}/******************************************************************** **定时器0的功能函数,每中断一次irtime++,用于计时********************************************************************* **/void timer0() interrupt 1{irtime++; //定时器中断一次irtime++,用于计时}/******************************************************************** ***外部中断0的处理函数,每当有低电平数据过来时,中断一次,(使用次中断的前提是,信号线必需接在外部中断0上面,也就是P3^2口),函数功能是,把信号从高低电平变成时间的代码放入irdata【】中********************************************************************* ***/void int1() interrupt 2{if(startflag){if(irtime>32) //一组代码检测完毕{bitnum=0;}irdata[bitnum]=irtime; //把检测到的时间送到数组irdata【】中去irtime=0;bitnum++;if(bitnum==33) //如果检测到bitnum=33,说明32位用户码已经检测完毕{bitnum=0; //将bitnum清零以便重新计数irreceok=1; //接收完毕标志位置一}}else //(此函数先进入else语句,跳过引导码的检测){startflag=1; //将开始标志位置一irtime=0; //设置时间初值为零irreceok=1; //接收完毕标志位置一}}/******************************************************************** *****函数功能:把irdata【】中的时间代码转换成二进制代码存放在ircode【】中********************************************************************* *****/void irpros(){uchar k=1,value,j,i;for(j=0;j<4;j++){for(i=0;i<8;i++){value=value>>1; //右移7次(第一次是00,相当于没有移位)if(irdata[k]>6) //循环8次{value=value|0x80;}k++;}ircode[j]=value;}irprosok=1;}/******************************************************************** ********函数的功能是:将ircode【】中的二进制代码转换成为16进制代码便于在数码管上显示******************************************************************* ********/void irwork(){display[0]=ircode[0]/16;display[1]=ircode[0]%16;display[2]=ircode[1]/16;display[3]=ircode[1]%16;display[4]=ircode[2]/16;display[5]=ircode[2]%16;display[6]=ircode[3]/16;display[7]=ircode[3]%16;}/******************************************************************** ****函数功能:用数码管显示解码结果********************************************************************* ***/void display1(){uchar i;for(i=0;i<8;i++){P2=seg_we[i];P0=seg_du[display[i]];delay_50us(40);}}void main(){timer0init(); //定时器初始化int1init(); //外部中断初始化while(1){if(irreceok) //判断数据接收完毕(数组中存储的是高低电平的时间){irpros(); //执行处理函数,将高低电平时间转化成16进制的0,1代码,存放在数组中irreceok=0; //标志清零}if(irprosok) //处理函数执行完毕,{irwork(); //将存储的16进制代码分离,便于数码管显示irprosok=0; //标志清零}display1();}}//在最后我再分析一下程序的编写思路,便于大家理解,一旦有按键按下,接受管接收到引导码,进入外部中断,并将高低电平的时间放入irdata【】数组中,接受完毕标志位置一,判断接受标志位,为1,进行处理函数,将高低电平转换成16进制数,处理标志位置一,判断处理标志位,为1,执行分离函数,将16进制数分离,便于数码管显示,分离完毕后显示。

红外调制与解调原理

红外调制与解调原理

4 功能模块设计4.1 红外的发射和接收红外线波长在750nm至1um之间的电磁波,它的频率低于可见光,是一种人的眼睛看不到的光线。

红外遥控具有抗干扰能力强,信息传输可靠,功耗低,成本低,易于实现等显著优点。

红外遥控由发送和接收两部分组成,发送端采用单片机将待发送的二进制信号编码调制为一系列的脉冲信号,通过红外发射管发射红外信号。

红外接收采用性能可靠的一体化红外接收头接收红外信号,它同时对信号进行放大,检波,整形,得到TTL电平的编码信号,再送给单片机,经单片机解码并进行相关操作。

发送与接收示意图如下所示:图4 发送与接收示意图由上所述可知,遥控系统分为编码,调制,解调和解码如图5所示四大部分:图5 遥控与接收系统4.1.1 编码如图4,二进制信号中的‘1’的高低电平均等于0.26ms,相当于10个26us的宽度;二进制信号中的‘0’的低电平宽0.52ms,高电平宽0.26ms。

图6 编码示意图4.1.2 调制红外信号的调制有脉冲宽度调制(PWM),脉冲位置调制(PPM)等方法,本设计采用脉宽调制。

二进制的调制由单片机来完成,它把编码后的二进制信号调制成频率为38khz 的间断脉冲串,此脉冲串即是用于红外发射二极管发送的信号。

如图7,A是二进制信号的编码波形,B是频率为38khz(周期约为26us)的连续脉冲串,C是经调制后的间断脉冲串,即是用于发送的信号。

图7中,待发的二进制数据为101。

图7 信号调制示意图4.1.3 解调二进制信号的解调由一体化红外接收头来完成,它把接收到的信号(图8中的波形D 也是图7中的波形C)经内部处理并解调复原,输出图8中的波形E(正好是图7中A的取反)。

接收头的解调可理解为:在输入脉冲串时输出低电平,否则输出高电平。

二进制的解码由单片机来完成,它把红外接收头送来的二进制编码波形通过解码,还原成发送端发送的数据。

如图8,把波形E解码还原成数据信息101。

图8 信号解调示意图4.1.4 解码在发送字节的开始先通过单片机发送20个脉冲宽度(每个脉冲周期26us)的高电平作为传输的开始(同步帧),接着发送8位二进制数据(高位在前,低位在后),最后发送10个脉冲宽度的低电平作为传输的结束,如图9所示:图9 字节传输当接收到同步帧后,进入解码部分。

红外遥控器软件解码原理和程序

红外遥控器软件解码原理和程序

void rs232(void) interrupt 4{ static unsigned char sbuf1,sbuf2,rsbuf1,rsbuf2; //sbuf1,sbuf2 用来接收 发送临时用,rsbuf1,rsbuf2 用来分别用来存放接收发送的半字节 EA=0; //禁止中断 if(RI){ RI=0; //清除接收中断标志位 sbuf1=SBUF; //将接收缓冲的字符复制到 sbuf1 if(sbuf1==HEAD){ //判断是否帧开头 state1=10; //是则把 state 赋值为 10 buf1=RECEIVE; //初始化接收地 址 } else{
void tf_2(void); void read_ir(void); void ir_jiema(void); void ir_init(void); void ir_exit(void); void store_ir(void); void read_key(void); void reset_iic(void); unsigned char read_byte_ack_iic(void); unsigned char read_byte_nack_iic(void); bit write_byte_iic(unsigned char a); void send_ack_iic(void); void send_nack_ic(void); bit receive_ack_iic(void); void start_iic(void); void stop_iic(void); void write_key_data(unsigned char a); unsigned int read_key_data(unsigned char a); void ie0(void) interrupt 0{ie_0();} void tf0(void) interrupt 1{tf_0();} void ie1(void) interrupt 2{ie_1();} void tf1(void) interrupt 3{tf_1();tf_2();} void tf2(void) interrupt 5{ //采用中断方式跟查询方式相结合的办法解 码 EA=0; //禁止中断 if(TF2){ //判断是否是溢出还是电平变化产生的中断 TF2=0; //如果是溢出产生的中断则清除溢出位,重 新开放中断退出 EA=1; goto end; } EXF2=0; //清除电平变化产生的中断位 *ir=RCAP2H; //把捕捉的数保存起来 ir++; *ir=RCAP2L; *ir++; F0=1; TR0=1; //开启计数器 0 loop: TL0=0; //将计数器 0 重新置为零 TH0=0; while(!EXF2){ //查询等待 EXF2 变为 1 if(TF0)goto exit; //检查有没超时,如果超时则退出 };

红外线遥控工作原理

红外线遥控工作原理

红外线遥控工作原理红外线遥控技术广泛应用于遥控器、家用电器以及无人机等领域。

它通过发射和接收红外线信号实现物体的远程控制。

本文将介绍红外线遥控的工作原理以及应用。

一、红外线遥控的原理红外线是位于可见光和微波之间的一种电磁波,它的波长较长,无法被人眼所察觉。

红外线遥控利用红外线的特性来传输信号并控制目标设备。

1. 发射器红外线发射器由红外二极管和电路组成。

当遥控器上的按键被按下时,电路会向红外二极管提供电流,导致二极管产生红外线信号。

红外线通过透明的遥控器外壳发射出去,并传输到目标设备。

2. 接收器目标设备上的红外接收器可以接收到从遥控器发射出的红外线信号。

红外接收器会将接收到的信号转换成电信号,并传输给设备的控制电路。

3. 解码与执行控制电路接收到红外接收器传来的电信号后,会进行解码。

每个遥控器的按键都有对应的红外码,解码后的信号会与设备内部存储的红外码进行比对。

如果两者一致,控制电路将执行对应的指令,实现遥控操作。

二、红外线遥控的应用1. 家用电器红外线遥控广泛应用于电视、空调、音响等家用电器。

通过遥控器发送指令,用户可以在不离开座位的情况下调整设备的音量、温度或切换频道等功能。

红外线遥控的简单操作和方便性赢得了广大用户的喜爱。

2. 汽车许多汽车配备了红外线遥控系统,用于解锁、遥控启动以及车门窗户的控制。

遥控汽车钥匙通过红外线发射信号,将指令传输到汽车控制系统,实现对汽车的远程控制。

3. 无人机无人机作为飞行器的一种,通过红外线遥控实现操控。

飞行员可以通过控制器来控制无人机的飞行、相机的角度调整等操作,以达到所需的效果。

红外线遥控技术的精确性和高速性,使得无人机能够在各种复杂的环境中实现精确的操控。

4. 安防系统红外线遥控也广泛应用于安防系统中,如门禁系统、报警器等。

用户可以通过遥控器控制门禁的开关、设置报警器的工作模式等,从而增强家庭和企业的安全性。

总结:红外线遥控技术凭借其便利性和广泛应用性,在日常生活中扮演着不可或缺的角色。

红外线遥控解码原理

红外线遥控解码原理

红外线遥控解码原理一、引言红外线遥控解码是一种常见的电子技术应用,广泛用于电视、空调、音响等家电产品中。

通过红外线遥控解码技术,可以实现遥控器与设备之间的无线通信,方便人们对设备进行远程操控。

本文将介绍红外线遥控解码的原理和实现方式。

二、红外线遥控解码原理红外线遥控解码的原理是利用红外线信号的特点进行解码。

遥控器通过按键操作产生一系列的红外信号,这些信号被红外发射器发射出去,然后被接收器接收并解码。

下面将详细介绍红外线遥控解码的原理。

1. 红外线信号的特点红外线是一种电磁波,波长在0.75微米到1000微米之间。

在这个波长范围内,红外线具有较好的穿透性,能够穿透一些物体,比如空气、玻璃等。

同时,红外线的波长也决定了它能够被人眼所感知。

2. 红外线遥控信号的编码方式红外线遥控信号一般采用脉冲宽度编码(Pulse Width Encoding)的方式进行编码。

即通过调节红外线信号的脉冲宽度来表示不同的信息。

通常会将一个编码周期分为若干个时间单位,每个时间单位内的脉冲宽度决定了信号的状态,比如高电平表示1,低电平表示0。

3. 红外线遥控信号的解码方式红外线遥控信号的解码一般分为两个步骤:解调和解码。

解调是指将接收到的红外线信号转换为电信号,解码是指将解调后的电信号转换为对应的按键信息。

解调通常采用红外线接收头来完成,红外线接收头是一种能够感知红外线信号并将其转换为电信号的传感器。

红外线接收头内部含有一个光电二极管,当红外线信号照射到光电二极管上时,会产生一个电压信号。

通过对这个电压信号进行放大和滤波处理,可以得到解调后的电信号。

解码是将解调后的电信号转换为对应的按键信息。

解码一般采用红外线遥控解码芯片来完成,这些芯片内部包含了一系列的逻辑电路和存储器,能够根据输入的电信号解码出对应的按键信息。

不同的遥控器厂商和设备类型会使用不同的解码协议,因此解码芯片需要根据具体的解码协议来进行解码。

三、红外线遥控解码的实现方式红外线遥控解码可以通过硬件电路和软件算法两种方式来实现。

红外线遥控器原理

红外线遥控器原理

红外线遥控器原理
红外线遥控器原理是通过发送和接收红外线信号来实现远程控制设备的操作。

遥控器内部有一个红外线发射器和一个红外线接收器。

红外线发射器通常由一颗红外线发光二极管构成。

当用户按下遥控器上的按钮时,控制电路会发出特定的电信号,通过电路的调制器将这个信号调制到用于红外线通信的特定频率上,然后将信号传输到发射二极管。

发射二极管接收到信号后,会将电信号转化为相应的红外线信号,并将其发射出去。

这种红外线信号具有特定的频率和编码,不同的按键会对应不同的编码。

在被控制的设备上,会有一个红外线接收器。

当接收器接收到发射器发射出来的红外线信号时,会将其转化为电信号,并通过接收器的解码器进行解码。

解码器会将接收到的编码和预设的编码进行比较,并确定用户按下了遥控器上的哪个按钮。

一旦按键被正确识别,接收器会将对应的指令发送给设备的控制电路,从而实现相应的操作。

这个过程是无线的,简单方便,广泛应用于各种家用电器、车载设备、电视、空调、DVD等
智能设备的远程控制中。

红外线遥控

红外线遥控

红外线遥控Company number:【WTUT-WT88Y-W8BBGB-BWYTT-19998】红外线遥控系统原理及软件解码实例时间:2006-11-30 来源: 作者: 点击:15039 字体大小:【】红外线遥控是目前使用最广泛的一种通信和遥控手段。

由于红外线遥控装置具有体积小、功耗低、功能强、成本低等特点,因而,继彩电、录像机之后,在录音机、音响设备、空凋机以及玩具等其它小型电器装置上也纷纷采用红外线遥控。

工业设备中,在高压、辐射、有毒气体、粉尘等环境下,采用红外线遥控不仅完全可靠而且能有效地隔离电气干扰。

1、红外遥控系统通用红外遥控系统由发射和接收两大部分组成。

应用编/解码专用集成电路芯片来进行控制操作,如图1所示。

发射部分包括键盘矩阵、编码调制、LED红外发送器;接收部分包括光、电转换放大器、解调、解码电路。

?图1 红外线遥控系统框图?2 、遥控发射器及其编码?遥控发射器专用芯片很多,根据编码格式可以分成两大类,这里我们以运用比较广泛,解码比较容易的一类来加以说明,现以日本NEC的uPD6121G组成发射电路为例说明编码原理(一般家庭用的DVD、VCD、音响都使用这种编码方式)。

当发射器按键按下后,即有遥控码发出,所按的键不同遥控编码也不同。

这种遥控码具有以下特征:采用脉宽调制的串行码,以脉宽为、间隔、周期为的组合表示二进制的“0”;以脉宽为、间隔、周期为的组合表示二进制的“1”,其波形如图2所示。

?图2 遥控码的“0”和“1” (注:所有波形为接收端的与发射相反)上述“0”和“1”组成的32位二进制码经38kHz的载频进行二次调制以提高发射效率,达到降低电源功耗的目的。

然后再通过红外发射二极管产生红外线向空间发射,如图3所示。

?图3 遥控信号编码波形图UPD6121G产生的遥控编码是连续的32位二进制码组,其中前16位为用户识别码,能区别不同的电器设备,防止不同机种遥控码互相干扰。

红外线遥控原理

红外线遥控原理

红外线遥控原理
红外线遥控是一种常见的遥控方式,它是通过发送和接收红外线信号来实现控制操作。

红外线遥控的原理如下:
1. 发送信号:遥控器上的按键被按下时,电路会产生一个特定的红外线编码信号。

这个信号是由一系列脉冲组成的,每个脉冲表示一个二进制位(0或1)。

不同的按键对应着不同的编码信号。

2. 红外发射器:红外发射器是遥控器中的一个重要组件,它通过电流变化来产生红外线脉冲信号。

红外线发射器通常采用红外二极管或红外光电传感器。

3. 红外线传播:红外线脉冲信号从发射器发射出去后,会沿着直线传播。

红外线是一种电磁波,具有波长比可见光要长,人眼无法直接看到。

红外线在空气中传播时,会被一些物体吸收或反射,所以传播距离较短。

4. 红外接收器:红外接收器通常位于接收端设备(如电视、空调等)上,它接收到红外线信号后,会将其转换成电信号。

红外接收器也采用红外二极管或红外光电传感器,但其结构和工作原理与发射器略有不同。

5. 信号解码:接收器将红外信号转换为电信号后,经过一段电路处理后,会得到一个特定的二进制编码。

该编码与遥控器上
按下的按键对应,接收端设备通过判断接收到的编码来实现相应的操作。

总结起来,红外线遥控的原理就是通过遥控器发射红外线脉冲信号,接收端设备通过接收和解码红外信号来实现控制操作。

这种遥控方式广泛应用于家电、汽车等领域。

红外遥控解码原理

红外遥控解码原理

感谢观看
汇报人:XX
红外遥控解码技 术能够提高智能 家居系统的稳定 性和可靠性
红外遥控解码技 术能够实现智能 家居系统的自动 化控制
红外遥控解码技 术能够提高智能 家居系统的安全 性和隐私保护
04
红外遥控解码的发展趋势
提高解码的准确性和稳定性
采用更先进的 算法和编码技 术,提高解码 的准确性和稳
定性
增加抗干扰能 力,降低外界 因素对解码的
影响
优化硬件设计, 提高接收器的 灵敏度和稳定

结合人工智能 技术,实现自 适应学习和优
化解码效果
实现多通道解码和多协议兼容
红外遥控解码技术不断发展,未来将实现多通道解码,提高解码效率和稳定性。 随着不同品牌和型号的红外遥控器不断涌现,多协议兼容将成为解码技术的重要发展方向。 解码芯片厂商将不断推出支持更多协议和通道的解码芯片,以满足市场需求。 未来红外遥控解码技术将更加智能化和人性化,为用户带来更加便捷的使用体验。
灯光:红外遥控解码技术也可以 用于控制灯光,如调节亮度、色 温等,实现智能照明。
在工业控制中的应用
实现远程控制:通过红外遥控解码技术, 工业控制中可以实现设备的远程启动、 停止、调节等功能,提高生产效率。
自动化监控:红外遥控解码技术可以用 于工业控制中的自动化监控,例如对温 度、湿度、压力等参数的实时监测和调 节。
无线通信:红外遥控解码技术可以实现工 业控制中的无线通信,避免了布线的繁琐 和成本,提高了系统的灵活性和可靠性。
安全性:红外遥控解码技术可以用于工 业控制中的安全保护,例如对设备的锁 定、解锁等操作,保证生产过程的安全 可控。
在智能家居系统中的应用
红外遥控解码技 术能够实现智能 家居系统的远程 控制

红外线遥控器(nec编码方式)

红外线遥控器(nec编码方式)
如果发现按键响应异常,需要对按键映射进行修正,确保按键功 能正常。
抗干扰优化
通过调整编码方式或增加滤波器等手段,增强遥控器的抗干扰能 力。
测试结果与结论
测试结果显示,该红外线遥控器 在有效范围内能够正常工作,按 键响应准确,抗干扰能力较强。
通过调试优化,进一步提高了遥 控器的性能和稳定性。
结论:该红外线遥控器符合预期 要求,可以用于实际应用中。
在NEC编码中,脉冲的宽度和间隔时间 被分为两种不同的比例,即1:2和1:1, 通过这两种比例的不同组合,可以表示 出0和1两种不同的二进制位。
当发送数据时,首先发送起始位,然 后是数据位,最后是停止位。起始位 是一个较长的脉冲和一个较短的间隔 时间,数据位由一系列的脉冲和间隔 时间组成,停止位是一个较短的脉冲 和一个较长的间隔时间。
红外线遥控器(NEC编码方式)
目 录
• 红外线遥控器简介 • NEC编码方式简介 • 红外线遥控器(NEC编码方式)的电路设计 • 红外线遥控器(NEC编码方式)的软件设计 • 红外线遥控器(NEC编码方式)的测试与调试
01 红外线遥控器简介
红外线遥控器的原理
红外线遥控器利用红外线作为信号传输介质,通过调制信号来控制设备的开关或功 能。
THANKS FOR WATCHING
感谢您的观看
01
采用NEC编码算法,将按键信息转换为红外线信号。
解码算法
02
将接收到的红外线信号解码为按键信息。
测试与调试
03
对编码和解码算法进行测试和调试,确保其正确性和稳定性。
05 红外线遥控器(NEC编码 方式)的测试与调试
测试方法
1 2
发射距离测试
测试遥控器在不同距离下的信号发射效果,确保 遥控器在有效范围内能够正常工作。

红外线遥控器工作原理

红外线遥控器工作原理

红外线遥控器工作原理红外线遥控器是一种常见的电子设备,广泛应用于家庭电视、空调、DVD播放器等各种消费电器。

它的工作原理是基于红外线通信技术。

本文将详细介绍红外线遥控器的工作原理和相关技术。

一、红外线遥控器的基本构成红外线遥控器的基本构成包括信号发射器和信号接收器两部分。

1. 信号发射器信号发射器是红外线遥控器最核心的部分,它通过发射红外线来实现遥控功能。

信号发射器通常由红外二极管、振荡电路和调制电路组成。

2. 信号接收器信号接收器用于接收红外线遥控器发出的信号,并将其解码后送到相应的设备。

信号接收器由红外接收模块、解码电路和控制电路等组成。

二、红外线遥控器的工作原理红外线遥控器的工作原理可以分为信号发射和信号接收两个过程。

1. 信号发射当用户按下红外线遥控器上的按钮时,遥控器内部的按键开关会导通,给发射器的振荡电路供电。

振荡电路开始运行,产生一定频率的信号。

振荡电路的信号经过调制电路的调制处理后,变成一串脉冲信号。

调制电路通常采用的是PAM(脉冲幅度调制)或PWM(脉冲宽度调制)技术。

调制后的信号具有特定的编码格式,以便接收器能够正确解码。

发射器中的红外二极管将调制后的信号转换为红外线信号,通过透明的塑料外壳发射出去。

2. 信号接收红外线遥控器的信号接收器接收到发射器发出的红外线信号后,红外接收模块会将其转换为电信号。

红外接收模块的核心是红外接收二极管,它能够接收红外线并产生相应的电流。

接收到的电信号经过解码电路解码后,得到一个特定的数据序列。

解码电路根据不同的遥控器厂商和设备类型,采用不同的解码方式。

解码后的数据被传送到控制电路,再由控制电路判断该数据序列对应的功能,并将相应的控制信号发送给目标设备。

三、红外线遥控器使用的频段为了避免不同设备之间的干扰,红外线遥控器使用了不同的频段。

常用的红外线遥控器频段主要有以下几个:1. 38kHz频段这是最常见的红外线遥控器频段,大多数家电产品的遥控器都采用了这个频段。

红外智能遥控的原理和应用

红外智能遥控的原理和应用

红外智能遥控的原理和应用1. 红外智能遥控的基本原理红外智能遥控技术是利用红外线传输信号实现设备之间的遥控操作。

其基本原理包括红外发射、红外接收和信号解码三个主要环节。

•红外发射:遥控器通过红外发射器将信号转化为红外光信号并发送出去。

红外发射器通常采用红外二极管作为发射源,其工作频率一般为38kHz。

•红外接收:被遥控设备接收器接收到红外信号后,转化为电信号并进行解码处理。

红外接收器通常采用红外二极管和光敏电阻等元件组成。

•信号解码:接收器将接收到的红外信号转化为二进制信号,并通过解码算法还原出原始信号。

常用的解码算法有NEC、RC-5、RC-6等。

2. 红外智能遥控的应用领域红外智能遥控技术在各个领域都有广泛的应用。

以下列举了几个主要的应用领域。

2.1 家居自动化在家居自动化领域,红外智能遥控技术可以实现对空调、电视、音响等设备的远程控制。

通过配合智能家居设备,可以实现手机APP控制家电设备,实现智能化家居体验。

2.2 工业自动化在工业自动化领域,红外智能遥控技术可以实现对生产线上的设备进行遥控操作。

工业领域中常见的应用包括遥控机器人、遥控无人机等。

2.3 医疗器械红外智能遥控技术在医疗器械领域也有广泛的应用。

医疗器械常常需要通过遥控进行操作,如遥控手术器械、遥控医疗设备等。

2.4 安防领域在安防领域,红外智能遥控技术可用于实现对安防摄像头、门禁系统、报警设备等的遥控和监控。

通过红外智能遥控技术,可以实现对安防设备的远程开关操作和视频监控。

2.5 汽车领域红外智能遥控技术也被广泛应用于汽车领域。

通过遥控汽车的车门、天窗、尾箱等功能,提高了汽车的舒适性和便利性。

3. 红外智能遥控的优势和局限性3.1 优势•空间范围广:红外智能遥控技术可以在遥控设备和被控设备之间建立一条无线通信通道,遥控距离相对较远,可以实现无需直接触摸被控设备就能进行遥控操作。

•信号稳定:红外智能遥控技术的信号传输相对稳定可靠,不容易受到其他干扰信号的影响。

红外线遥控器的工作原理

红外线遥控器的工作原理

红外线遥控器的工作原理红外线遥控器是一种广泛应用于家电、汽车、音响、电视等设备的遥控器,其工作原理主要是基于红外线的发送和接收。

红外线遥控器的发送端包含一个红外线发射二极管,它能够将电能转化成红外线信号。

当用户按下遥控器上的按钮时,发送端内的电路会接收到相应的信号。

首先,用户通过按下按钮使得遥控器上的电池电路形成闭合回路,电池所提供的电能会通过电路传输到遥控器内部的控制芯片。

控制芯片是红外线遥控器的核心部件,它根据按钮的按下情况,通过自身的电路调节电能的大小和方向,驱动红外线发射二极管发射红外线信号。

接下来,红外线发射二极管将电能转化成红外线信号,这个过程是通过电流在二极管中流动引起的。

当电流通过二极管时,二极管中的活性材料开始发光,并将这种能量转化成红外线信号。

红外线信号是类似于可见光的电磁波,但波长较长,因此肉眼无法直接看到。

这些信号被发射出去后,会在空气中传播。

然后,红外线信号会被接收设备上的红外线接收头感知。

红外线接收头是一个特殊的传感器,由一个或多个红外线灵敏的光电二极管组成。

当红外线信号经过红外线接收头时,光电二极管会将接收到的红外线转化成电信号,并将其传输到接收电路中。

接收电路是红外线遥控器内部的一部分,它会解码接收到的电信号,并将信号转化成设备能够识别的指令码。

最后,接收电路将解码得到的指令码传输给设备的控制电路。

设备的控制电路会根据指令码的不同,执行相应的操作,比如打开或关闭设备、调节音量、切换频道等。

总结起来,红外线遥控器的工作原理主要包括按钮按下触发电路、控制芯片驱动红外线发射、红外线发射二极管发射红外线信号、红外线信号被接收头接收感知、光电二极管将红外线信号转化成电信号、接收电路解码电信号、控制电路根据指令码执行操作。

通过这一系列的步骤,红外线遥控器能够实现控制各种设备的功能。

除了以上提到的工作原理,红外线遥控器还涉及到红外线编码和解码的技术。

在红外线遥控器中,编码是指将按键信号转换为红外线信号的过程。

单片机的红外遥控器解码原理与实现

单片机的红外遥控器解码原理与实现

单片机的红外遥控器解码原理与实现红外遥控器是我们日常生活中常见的电子设备,它通过使用红外线信号与接收器进行通信。

而在这个过程中,单片机起到了解码的重要作用。

本文将介绍单片机解码红外遥控器的原理以及实现方法。

一、红外遥控器的工作原理红外遥控器是一种使用红外线进行通信的设备,它主要由发送器和接收器两部分组成。

发送器将指令数据转换为红外脉冲信号并发送出去,接收器通过接收红外线信号并将其转换为电信号,进而解码为可识别的指令。

而单片机则负责接收并解码红外信号,将其转化为具体的操作。

二、单片机解码红外信号的原理单片机解码红外信号主要分为两个步骤:红外信号的接收和信号的解码处理。

1. 红外信号的接收单片机通过外部的红外接收器接收红外信号。

红外接收器可以通过外部电路将接收到的红外信号转换为电压信号,然后通过单片机的IO 口输入。

2. 信号的解码处理接收到的红外信号经过IO口输入后,单片机需要对信号进行解码处理。

解码的过程涉及到红外信号的标准化和解析。

对于常见的红外遥控器协议,单片机需要能够识别其编码方式,确定其协议格式。

这些协议通常包含了引导码、地址码和指令码等信息。

在解析红外信号时,单片机首先需要识别引导码。

引导码是红外信号的起始标志,通常由高、低电平组成,表示编码的开始。

单片机通过判断引导码的时间长度来确定信号的开始。

接下来,单片机需要识别地址码和指令码。

地址码是用来区分不同的红外遥控器设备,指令码则表示具体的操作指令。

单片机通过判断地址码和指令码的高、低电平时间长度来确定具体的操作。

三、单片机解码红外信号的实现方法单片机解码红外信号有多种实现方法,以下是一种简单的实现示例。

首先,需要连接红外接收器到单片机的IO口,将接收到的信号输入到单片机。

接收到的信号可以通过外部中断的方式触发单片机的中断服务程序。

然后,在中断服务程序中,单片机需要根据红外协议的规则,判断引导码、地址码和指令码的时间长度。

利用计时器或延时函数可以实现对信号时间的测量。

红外遥控技术的原理及应用

红外遥控技术的原理及应用

红外遥控技术的原理及应用一、红外遥控技术的原理1. 红外辐射原理红外辐射是指电磁波在电磁谱中位于可见光之外的一段波长范围。

红外辐射具有较高的穿透能力,能够穿过物体并被物体吸收、反射或透射。

红外光的波长范围通常为0.7至1000微米。

2. 红外遥控技术的工作原理红外遥控技术通过利用红外辐射的特性,将遥控信号编码传输,实现设备之间的无线控制。

其工作原理如下: - 发射器发射:遥控器通过红外LED发射器发射红外信号; - 信号编码:遥控器通过对按键进行编码,将不同功能的信号区分发送;- 信号传输:红外信号传输到接收器,并经过解码; - 控制设备响应:接收器解码后将信号传递给被控设备,使之执行相应的功能。

二、红外遥控技术的应用1. 家电遥控红外遥控技术广泛应用于各类家电产品,如电视机、空调、音响、DVD播放器等。

用户可以通过遥控器进行操作,方便快捷。

2. 汽车遥控红外遥控技术也被应用于汽车的遥控功能。

用户可以通过遥控器锁定、解锁汽车,控制车内音响、空调等功能。

3. 安防监控红外遥控技术在安防监控领域得到广泛应用。

通过红外遥控技术,用户可以通过遥控器控制安防摄像机进行转动、对焦等操作。

4. 医疗设备红外遥控技术在医疗设备中有着重要的应用,如远程控制医疗器械、控制医疗设备参数等。

5. 工业自动化在工业自动化领域,红外遥控技术也有着广泛的应用。

通过红外遥控技术,可以远程控制机器设备的操作以及监测设备的状态。

6. 智能家居红外遥控技术是智能家居的重要组成部分。

用户可以通过智能遥控器将灯光、窗帘、电器等设备进行集中控制,提高居住的便利性和舒适度。

7. 电子游戏红外遥控技术在电子游戏中也有着重要的应用。

通过红外遥控器,玩家可以进行游戏操作,享受更好的游戏体验。

三、总结红外遥控技术通过利用红外辐射的特性,实现无线控制设备的功能。

它广泛应用于各个领域,如家电遥控、汽车遥控、安防监控、医疗设备、工业自动化、智能家居和电子游戏等。

相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

红外线遥控系统原理及软件解码实例
简介:红外线遥控是目前使用最广泛的一种通信和遥控手段。

由于红外线遥控装置具有体积小、功耗低、功
关键字:红外
红外线遥控是目前使用最广泛的一种通信和遥控手段。

由于红外线遥控装置具有体积小、功耗低、功能强、成本低等特点,因而,继彩电、录像机之后,在录音机、音响设备、空凋机以及玩具等其它小型电器装置上也纷纷采用红外线遥控。

工业设备中,在高压、辐射、有毒气体、粉尘等环境下,采用红外线遥控不仅完全可靠而且能有效地隔离电气干扰。

1、红外遥控系统
通用红外遥控系统由发射和接收两大部分组成。

应用编解码专用集成电路芯片来进行控制操作,如图1所示。

发射部分包括键盘矩阵、编码调制、LED 红外发送器;接收部分包括光、电转换放大器、解调、解码电路。

图1 红外线遥控系统框图
2 、遥控发射器及其编码
遥控发射器专用芯片很多,根据编码格式可以分成两大类,这里我们以运用比较广泛,解码比较容易的一类来加以说明,现以日本NEC的uPD6121G组成发射电路为例说明编码原理(一般家庭用的DVD、VCD、音响都使用这种编码方式)。

当发射器按键按下后,即有遥控码发出,所按的键不同遥控编码也不同。

这种遥控码具有以下特征:
采用脉宽调制的串行码,以脉宽为0.565ms、间隔0.56ms、周期为1.125 ms的组合表示二进制的“0”;以脉宽为0.565ms、间隔1.685ms、周期为2.25 ms的组合表示二进制的“1”,其波形如图2所示。

图2 遥控码的“0”和“1” (注:所有波形为接收端的与发射相反)
上述“0”和“1”组成的32位二进制码经38kHz的载频进行二次调制以提高发射效率,达到降低电源功耗的目的。

然后再通过红外发射二极管产生红外线向空间发射,如图3所示。

图3 遥控信号编码波形图
UPD6121G产生的遥控编码是连续的32位二进制码组,其中前16位为用户识别码,能区别不同的电器设备,防止不同机种遥控码互相干扰。

该芯片的用户识别码固定为十六进制01H;后16位为8位操作码(功能码)及其反码。

U PD6121G最多额128种不同组合的编码。

遥控器在按键按下后,周期性地发出同一种32位二进制码,周期约为108 ms。

一组码本身的持续时间随它包含的二进制“0”和“1”的个数不同而不同,大约在45~63ms之间,图4为发射波形图。

图4 遥控连发信号波形
当一个键按下超过36ms,振荡器使芯片激活,将发射一组108ms的编码脉冲,这108ms发射代码由一个引导码(9ms),一个结果码(4.5ms),低8位地址码(9ms~18ms),高8 位地址码(9ms~18ms),8位数据码(9ms~18ms)和这8位数据的反码(9ms~18ms)组成。

如果键按下超过108ms仍未松开,接下来发射的代码(连发码)将仅由起始码(9ms)和结束码(2.25ms)组成。

图5 引导码图6连发码
3 、遥控信号接收
接收电路可以使用一种集红外线接收和放大于一体的一体化红外线接收器,不需要任何外接元件,就能完成从红外线接收到输出与TTL电平信号兼容的所有工作,而体积和普通的塑封三极管大小一样,它适合于各种红外线遥控和红外线数据传输。

接收器对外只有3个引脚:Out、GND、Vcc与单片机接口非常方便,如图7所示。

图7
①脉冲信号输出接,直接接单片机的IO 口。

②GND接系统的地线(0V);
③Vcc接系统的电源正极(+5V);
4 遥控信号的解码
下面是一个对51实验板配套的红外线遥控器的解码程序,它可以把红外遥控器每一个按键的键值读出来,并且通过实验板上P1口的8个LED显示出来,在解码成功的同时并且能发出“嘀嘀嘀”的提示音。

ORG 0000H
MAIN
JNB P2.2,IR ;遥控扫描
LJMP MAIN ;在正常无遥控信号时,一体化红外接收头输出是高电平,程序一直在循环。

;=================================================
; 解码程序
IR
;以下对遥控信号的9000微秒的初始低电平信号的识别,波形见图5。

MOV R6,#10
IR_SB
ACALL DELAY882 ;调用882微秒延时子程序
JB P2.2,IR_ERROR ;延时882微秒后判断P2.2脚是否出现高电平如果有就退出解码程序
DJNZ R6,IR_SB ;重复10次,目的是检测在8820微秒内如果出现高电平就退出解码程序
;识别连发码,和跳过4.5ma的高电平。

JNB P2.2, $ ;等待高电平避开9毫秒低电平引导脉冲
ACALL DELAY2400
JNB P2.2,IR_Rp ;这里为低电平,认为是连发码信号,见图6。

ACALL DELAY2400 ;延时4.74毫秒避开4.5毫秒的结果码
;以下32数据码的读取,0和1的识别请看图2
MOV R1,#1AH ;设定1AH为起始RAM区
MOV R2,#4
IR_4BYTE
MOV R3,#8
IR_8BIT
JNB P2.2,$ ;等待地址码第一位的高电平信号
LCALL DELAY882 ;高电平开始后用882微秒的时间尺去判断信号此时的高低电平状态
MOV C,P2.2 ;将P2.2引脚此时的电平状态0或1存入C中
JNC IR_8BIT_0 ;如果为0就跳转到IR_8BIT_0
LCALL DELAY1000
IR_8BIT_0
MOV A,@R1 ;将R1中地址的给A
RRC A ;将C中的值0或1移入A中的最低位
MOV @R1,A ;将A中的数暂时存放在R1中
DJNZ R3,IR_8BIT ;接收地址码的高8位
INC R1 ;对R1中的值加1,换下一个RAM
DJNZ R2,IR_4BYTE ;接收完16位地址码和8位数据码和8位数据,
;存放在1AH1BH1CH1DH的RAM中
;解码成功
JMP IR_GOTO
IR_Rp
;这里为重复码执行处
;按住遥控按键时,每过108ms就到这里来
JMP IR_GOTO
IR_ERROR
;错语退出
LJMP MAIN ;退出解码子程序
;=================================================
;遥控执行部份
IR_GOTO
;这里还要判断1AH和1BH两个系统码或用户码,用于识别不同的遥控器
;MOV A,1AH
;CJNE A,#xxH,IR_ERROR ;用户码1不对则退出
;MOV A,1BH
;CJNE A,#xxH,IR_ERROR ;用户码2不对则退出
;判断两个数据码是否相反
MOV A,1CH
CPL A
CJNE A,1DH,IR_ERROR ;两个数据码不相反则退出
;遥控执行部份
;MOV A,1DH ;判断对应按键
;CJNE A,#xxH,$+6
;LJMP -à跳到对应按键执行处
;CJNE A,#xxH,$+6
;LJMP -à跳到对应按键执行处
;.
MOV P1,1DH ;将按键的键值通过P1口的8个LED显示出来! CLR P2.3 ;蜂鸣器鸣响-嘀嘀嘀-的声音,表示解码成功LCALL DELAY2400
LCALL DELAY2400
LCALL DELAY2400
SETB P2.3 ;蜂鸣器停止
;清除遥控值使连按失效
MOV 1AH,#00H
MOV 1BH,#00H
MOV 1CH,#00H
MOV 1DH,#00H
LJMP MAIN
;================================================= ; 延时子程序
;=============================882
DELAY882 ;1.085x ((202x4)+5)=882
MOV R7,#202
DELAY882_A
NOP
NOP
DJNZ R7,DELAY882_A
RET
;=============================1000
DELAY1000 ;1.085x ((229x4)+5)=999.285
MOV R7,#229
DELAY1000_A
NOP
NOP
DJNZ R7,DELAY1000_A
RET
;=============================2400 DELAY2400 ;1.085x ((245x9)+5)=2397.85 MOV R7,#245
DELAY2400_A
NOP
NOP
NOP
NOP
NOP
NOP
NOP
DJNZ R7,DELAY2400_A
RET
END。

相关文档
最新文档