收藏 分享(赏)

遥控原理(NEC).doc

上传人:ysd1539 文档编号:6707408 上传时间:2019-04-21 格式:DOC 页数:16 大小:91KB
下载 相关 举报
遥控原理(NEC).doc_第1页
第1页 / 共16页
遥控原理(NEC).doc_第2页
第2页 / 共16页
遥控原理(NEC).doc_第3页
第3页 / 共16页
遥控原理(NEC).doc_第4页
第4页 / 共16页
遥控原理(NEC).doc_第5页
第5页 / 共16页
点击查看更多>>
资源描述

1、一、遥控原理:(NEC)电视遥控器使用的是专用集成发射芯片来实现遥控码的发射,如东芝、飞利浦、NEC 等,相互之间采用的遥控编码格式互不兼容,所以各机型的遥控器通常只能针对各自的遥控对象而无法通用。为了使信号能更好的被传输,发送端将基带二进制信号调制为脉冲串信号,通过红外发射管发射。常用的有通过脉冲宽度来实现信号调制的脉宽调制(PWM)和通过脉冲串之间的时间间隔来实现信号调制的脉时调制(PPM)两种方式。NEC 标准:遥控载波的频率为 38KHz(占空比为 1:3);当某个按键按下时,系统首先发射一个完整的全码,然后经延时再发射一系列简码,直到按键松开即停止发射。简码重复延时 108ms,每两

2、个引导脉冲上升沿之间的间隔都是 108ms。 其中,引导码高电平 9ms,低电平 4.5ms;系统码 16 位,数据码 16 位,共 32 位;数据 0 用“高电平 0.56ms低电平 0.565ms”表示,数据 1 用“高电平 0.56ms低电平 1.6875ms”表示,一个简码引导码系统码位的反码结束位(0.5625ms)高电平。各部分码的作用:引导码用来通知接收器其后为遥控数据。系统码用来区分是哪一机型的数据,接收端依此来判断后续的数据是否为须执行的指令。数据码用来区分是哪一个键被按下,接收端根据数据码做出应该执行什么动作的判断。简码是在持续按键时发送的码。它告知接收端,某键是在被连续地

3、按着。遥控数据传输系统的关键是数据传输的可靠性。为了提高编码的可靠性,NEC 标准规定系统码、数据码后分别接着传送一个同样的码或者反码,供误码校验用。1、载波波形:使用 455KHZ 晶体,经内部分频电路,信号被调制在 37.91KHZ,占空比是 13。调制频率(晶体使用 455KHZ 时)F=1T=Fosc12=38KHZ (Fosc 是晶振频率)2、数据格式:数据格式包括引导码、用户码、数据码和数据反码,编码总占 32 位。数据反码是数据码反相后的编码,编码时可用于对数据的纠错。注意:第二个用户码也可以在遥控应用电路中被设置成第一个用户码的反码。使用 455KHZ 晶体时各代码所占用的时间

4、。3、位定义:用户码和数据码中的每一个位可以是位“1”,也可以是位“0”。区分 0、1 是利用脉冲的时间间隔来区分,这种编码方式称为脉冲位置调制方式(ppm).4、按键输出波形:一般按键输出有二种方式:一种是每次按键都输出完整的一帧数据;另一种是按下相同的按键后每发送完整的一帧数据后,再发送重复码,再到按键被松开。重复码:单一按键波形:连续按键波形:二、程序设计思路:我们在写遥控接收程序时,可以有两种方法来实现:一、一个外部中断加上一个定时器,当有外部信号输入INT 脚时就执行摇控接收程序。二、用一个 IO 口(设置为高电平)和一个定时器,设置一个时间 T,在每过一个时间 T 后就对 IO 口

5、进行扫描一次,如果 IO 口有下降沿,那么就去执行遥控接收程序。在这里我选择了第一种方法。下面就是遥控接收程序的流程图:注意:1、接收引导码是利用定时器来计时,以达到 9ms 和 4.5ms 的准确接收。不过在接收 9ms 时要确保是INT 脚输入的是低电平,在接收 4.5ms 时要确保 INT 脚输入的是高电平。也就是说在 INT 输入 9ms 的低电平后马上输入 4.5ms 的高电平,说明引导码是正确的,否则是错误的。不过在判断时间时,可以有一个充许误差,此误差值一般取:引导码*2%。2、在接收用户码和数据码时,判断 0、1 是通过高电平的时间来判断的。如果高电平的时间是 1.687,那么

6、说明传输的值是 1,如果高电平的时间是 0.565,那说明传输的值是 0。可以有充许误差,取值上同。三、红外接收主程序:#include “Common.h“#include “system.h“#include “KEYPAD.H“#include “OSDDraw.h“#include “TwoWire.h“#include “Remote.h“#define _GLOBAL_H_#include “Global.h“_Bool Filter13(_Bool le)_Bool r;r=INT0;if(le=1)asm(“NOPnNOPnNOPnNOP“);rasm(“NOPnNOPnNOP

7、nNOP“);relseasm(“NOPnNOPnNOPnNOP“);r|=INT0;asm(“NOPnNOPnNOPnNOP“);r|=INT0;if(r=le)return 1;elsereturn 0;/*遥控接收在此中断程序内完成 数据放在 ir_data 内*/*/* Interrupt for IR subroutine */* external interrupt source INT0 */*/#pragma interrupt INT0Remote();void INT0Remote(void)register BYTE i;unsigned int count; /*计时变

8、量*/unsigned int temp0,temp1,temp2,ir_code=0;ir_enable=TRUE;msttrc=1;tstart_trcmr=0;trcic = 0x00;tck0_trccr1=0;tck1_trccr1=0;tck2_trccr1=1; trc=0; tstart_trcmr=1;/*/* Detect IR Head */*/do /*Detect IR head 9mS*/count=trc; /*count :us unit */if(Filter13(1)=1) break;while(count(OFF_REP-DELTA)temp1=ir_c

9、odeif(temp0!=temp1)ir_enable=FALSE;elsetemp2=(BYTE)(temp1); /*true code effective*/for(i=0;i=1;ir_data=1;ir_data=ir_data/2; /cjh2007ir_enable=TRUE;/*set ir flag*/int0en=0;return;else ir_enable=FALSE;int0en=1;* 红外遥控器键值表 *; 00 01 02 03; 04 05 06 07; 08 09 0A 0B; 0C 0D 0E 0F; 10 11 12 13; 14 15 16 17;=

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报