当前位置:文档之家› NEC协议的红外遥控器驱动程序

NEC协议的红外遥控器驱动程序

创作编号:BG7531400019813488897SX

创作者:别如克*

是不是觉得红外遥控+51单片机是绝妙组合?但是在编程时才发现超级纠结?其实也没那么纠结,自己摸索摸索,总能找出办法来的。

本程序占用了51单片机的定时器0以及中断1两个资源,为的是使单片机能接收到每一个红外脉冲信号,一个都不能少。如果舍不得用这两个资源,还有另一种查询的办法,就是不一定每个信号都能收到,可自己琢磨一下。

需要全套NEC协议红外遥控器资料的,到网上找,到处都有,而且很全。

另外,对着资料写程序如果实在写不出,可以找个示波器,把波形录下来好好研究研究。毕竟有些时候资料会过时,只要里面有一点东西变化了,程序就完全不一样了。这种弯路,尽量少走。

本程序只是头文件,具体到应用上还要各位自己动脑筋了,希望对大家有所帮助。共同学习,共同进步!

/******************************************************************

INF_NEC.h

用于NEC协议的遥控器,主控器为51单片机。用户码8位,分布于2-17个脉冲;按键码8位,分布于18-33个脉冲。皆为前8原码,后8反码。

注意:本驱动占用51单片机的外部中断1以及定时器0两个资源,编程时注意

不要再乱动这两个资源。

*******************************************************************/

#include

#define uchar unsigned char

#define uint unsigned int

uchar nec_flag=0;//nec_flag:遥控码的标志位。0:无信号;1、2:信号采集;3、可用信号

uchar nec_num=0;//nec_num:红外码的序号

uint nec_time=0;//nec_time:定时器的计时次数nec_time*250us

uchar nec_cod[2]={0,1};//遥控器的编号,编号0为原码,编号1为反码

uchar nec_dat[2]={0,1};//遥控器的数据,数据0为原码,数据1为反码

#ifndef __INF_NEC__

#define __INF_NEC__

extern void nec_init();

extern void nec_act();

#endif

void nec_init() //外中断1及定时器0的初始化函数

{

TMOD=(TMOD&0xf0)|0x02; //定时器0模式2,8位自动重装

TH0=0x19;

TL0=0x19; //11.0592MHz晶振,计数230次,大概时间250us

ET0=1;TR0=0; //定时器0使能,先关着

IT1=1;EX1=1; //外部中断1使能,用来接收红外信号

EA=1; //开总中断

创作编号:BG7531400019813488897SX

创作者:别如克*

}

void nec_act()//按键功能程序

{

if((nec_dat[0]==~nec_dat[1])&&(nec_flag==3))

{

switch(nec_dat[0])

{

case 69: break;

case 70: break;

case 71: break;

case 68:break;

case 64:break;

case 67:break;

case 7:break;

case 21:break;

case 9:break;

case 22:break;

case 25:break;

case 13:break;

case 12:break;

case 24:break;

case 94:break;

case 8:break;

case 28:break;

case 90:break;

case 66:break;

case 82:break;

case 74:break;

}

}

}

void timer0(void) interrupt 1

{

nec_time++;

if(nec_time>1000)//长时间无红外遥控信号时关定时器

{

nec_time=0;nec_num=0;nec_flag=0;TR0=0;

}

}

void exint1(void) interrupt 2

{

uint intime=0;//intime:为了不打扰计时器工作,所以用intime把nec_time提出来intime=nec_time;nec_time=0;//nec_time置0,准备计数

if(nec_num==0)TR0=1;//开定时器,开始计数

if(nec_num==1){if((intime>50)&&(intime<60))nec_flag=1;}

if(nec_num==2){if((intime>2)&&(intime<11))nec_flag=2;}

if(nec_flag==2)

{

if((nec_num>=2)&&(nec_num<=9))

{

if((intime>2)&&(intime<6))nec_cod[0]=nec_cod[0]&~(0x01<<(nec_num-2));

else

if((intime>7)&&(intime<11))nec_cod[0]=nec_cod[0]|(0x01<<(nec_num-2));

}

if((nec_num>=10)&&(nec_num<=17))

{

if((intime>2)&&(intime<6))nec_cod[1]=nec_cod[1]&~(0x01<<(nec_num-10));

else

if((intime>7)&&(intime<11))nec_cod[1]=nec_cod[1]|(0x01<<(nec_num-10));

}

if((nec_num>=18)&&(nec_num<=25))

{

if((intime>2)&&(intime<6))nec_dat[0]=nec_dat[0]&~(0x01<<(nec_num-18));

else

if((intime>7)&&(intime<11))nec_dat[0]=nec_dat[0]|(0x01<<(nec_num-18));

}

创作编号:BG7531400019813488897SX

创作者:别如克*

if((nec_num>=26)&&(nec_num<=33))

{

if((intime>2)&&(intime<6))nec_dat[1]=nec_dat[1]&~(0x01<<(nec_num-26));

else

if((intime>7)&&(intime<11))nec_dat[1]=nec_dat[1]|(0x01<<(nec_num-26));

}

}

nec_num++;if(nec_num>35){nec_num=35;nec_flag=3;}

}

创作编号:BG7531400019813488897SX

创作者:别如克*

史上最全的红外遥控器编码协议

目录 1)MIT-C8D8 (40k) 2) MIT-C8D8(33K) 3)SC50560-001,003P 4)M50462 5)M50119P-01 6)M50119L 7)RECS80 8)M3004 9)LC7464M 10)LC7461-C13 11)IRT1250C5D6-01 12)Gemini-C6-A 13)Gemini-C6 14) Gemini-C17(31.36K)-1 15)KONKA KK-Y261 16)PD6121G-F 17)DATA-6BIT 18)Custum-6BIT 19)M9148-1 20)SC3010 RC-5 21) M50560-1(40K) 22) SC50560-B1 23)C50560-002P 24)M50119P-01 25)M50119P-1 26)M50119P 27)IRT1250C5D6-02 28)HTS-C5D6P 29)Gemini-C17 30)Gemini-C17 -2 31)data6bit-a 32)data6bit-c 33)X-Sat 34)Philips RECS-80 35)Philips RC-MM 36)Philips RC-6 37)Philips RC-5 38)Sony SIRC 39)Sharp 40)Nokia NRC17 41)NEC 42)JVC 43)ITT

44)SAA3010 RC-5(36K)45)SAA3010 RC-5(38K)46)NEC2-E2 47) NEC-E3 48) RC-5x 49) NEC1-X2 50) _pid:$0060 51) UPD1986C 52) UPD1986C-A 53) UPD1986C-C 54) MV500-01 55) MV500-02 56) Zenith S10

基于51单片机的红外遥控器设计

天津职业大学 二○一五~二○一六学年第1学期 电子信息工程学院 通信系统综合实训报告书 课程名称:通信系统综合实训 班级:通信技术(5)班 学号:1304045640 1304045641 1304045646姓名:韩美红季圆圆陈真真指导教师:崔雁松 2015年11月17日

一、任务要求 利用C51单片机设计开发一套红外线收发、显示系统。 具体要求: ●编写相关程序(汇编、C语言均可); ●用Proteus绘制电路图并仿真实现基本功能; ●制作出实物 二、需求分析(系统的应用场景、环境条件、参数等) 现在各种红外线技术已经源源不断进入我们的生活中,在很多场合发挥着作用。 机场、宾馆、商场等的自动门,会在人进出时自动地开启和关闭。原来,在自动门的一侧有一个红外线光源,发射的红外线照射到另一侧的光电管上,红外线是人体察觉不到的。当人走到大门口,身体挡住红外线,电管接收不到红外线了。根据设计好的指令,触发相应开关,就把门打开了。等人进去后,光电管又可以接到红外线,恢复原来的线路,门又会自动关闭。因此这种光电管被称为“电眼”,在许多自动控制设备中大显身手。 在家庭中,许多电子设备如彩色电视、空调、冰箱和音响等,都使用了各种“红外线遥控器”。利用它我们可以非常方便的转换电视频道或设定空调的温度档次。 三、概要设计(系统结构框图/系统工作说明流程图) 红外线收发、显示系统硬件由以下几部分组成:红外遥控器,51单片机最小系统,接收放大器一体集成红外接收头,LED灯显示电路。 红外线接收是把遥控器发送的数据(已调信号)转换成一定格式的控制指令脉冲(调制信号、基带信号),是完成红外线的接收、放大、解调,还原成发射格式(高、低电位刚好相反)的脉冲信号。这些工作通常由一体化的接收头来完成,输出TTL兼容电平。最后通过解码把脉冲信号转换成数据,从而实现数据的传输。 红外遥控系统电路框图

红外遥控器的基本原理

红外遥控器的基本原理 ?红外线的特点人的眼睛能看到的可见光,若按波长排列,依次(从长到短)为红、橙、黄、绿、青、蓝、紫,红光的波长范围为0.62μm~0.7μm,比红光波长还长的光叫红外线。红外线遥控器就是利用波长0.76μm~1.5μm 之间的近红外线来传送控制信号的。 红外线的特点是不干扰其他电器设备工作,也不会影响周边环境。电路调试简单,若对发射信号进行编码,可实现多路红外遥控功能。 红外线发射和接收 人们见到的红外遥控系统分为发射和接收两部分。发射部分的发射元件为红外发光二极管,它发出的是红外线而不是可见光。 常用的红外发光二极管发出的红外线波长为 940nm 左右,外形与普通φ5mm 发光二极管相同,只是颜色不同。一般有透明、黑色和深蓝等三种。判断红外发光二极管的好坏与判断普通二极管一样的方法。单只红外发光二极管的发射功率约100mW。红外发光二极管的发光效率需用专用仪器测定,而业余条件下,只能凭经验用拉距法进行粗略判定。 接收电路的红外接收管是一种光敏二极管,使用时要给红外接收二极管加反向偏压,它才能正常工作而获得高的灵敏度。红外接收二极管一般有圆形和方形两种。由于红外发光二极管的发射功率较小,红外接收二极管收到的信号较弱,所以接收端就要增加高增益放大电路。然而现在不论是业余制作或正式的产品,大都采用成品的一体化接收头。红外线一体化接收头是集红外接收、放大、滤波和比较器输出等的模块,性能稳定、可靠。所以,有了一体化接收头,人们不再制作接收放大电路,这样红外接收电路不仅简单而且可靠性大大提高。

红外遥控器的协议 ?鉴于家用电器的品种多样化和用户的使用特点,生产厂家对红外遥控器进行了严格的规范编码,这些编码各不相同,从而形成不同的编码方式,统一称为红外遥控器编码传输协议。了解这些编码协议的原理,不仅对学习和应用红外遥控器是必备的知识,同时也对学习射频(一般大于300MHz)无线遥控器的工作原理有很大的帮助。 到目前为止,笔者从外刊收集到的红外遥控协议已多达十种,如: RC5、SIRCS、 S ON y、 RECS80、Denon、NEC、Motorola、Japanese、SAMSWNG 和 Daewoo 等。我国家用电器的红外遥控器的生产厂家,其编码方式多数是按上述的各种协议进行编码的,而用得较多的有 NEC协议。 红外遥控器的结构特征 ?红外遥控发射器由键盘矩阵、遥控专用集成电路、激励器和红外发光二极管组成。遥控专用集成电路(采用 AT89S52 单片机)是发射系统的核心部分,其内部由振荡电路、定时电路、扫描信号发生器、键输入编码器、指令译码器、用户码转换器、数码调制电路及缓冲放大器等组成。它能产生键位扫描脉冲信号,并能译出按键的键码,再经遥控指令编码器得到某键位的遥控指令(遥控编码脉冲),由 38KHZ 的载波进行脉冲幅度调制,载有遥控指令的调制信号激励红外二极管发出红外遥控信号。 在红外接收器中,光电转换器件(一般是光电二极管或光电三极管,我们这里用的是 PIN 光电二极管)将接收到的红外光指令信号转换成相应的电信号。此时的信号非常微弱而且干扰特别大,为了实现对信号准确的检测和转换,除了高性能的红外光电转换器件,还应合理地选择并设计性能良好的电路形式。最常用的

红外遥控原理及解码程序

红外遥控系统原理及单片机 红外线遥控是目前使用最广泛的一种通信和遥控手段。由于红外线遥控装置具有体积小、功耗低、功能强、成本低等特点,因而,继彩电、录像机之后,在录音机、音响设备、空凋机以及玩具等其它小型电器装置上也纷纷采用红外线遥控。工业设备中,在高压、辐射、有毒气体、粉尘等环境下,采用红外线遥控不仅完全可靠而且能有效地隔离电气干扰。 1 红外遥控系统 通用红外遥控系统由发射和接收两大部分组成。应用编/解码专用集成电路芯片来进行控制操作,如图1所示。发射部分包括键盘矩阵、编码调制、LED红外发送器;接收部分包括光、电转换放大器、解调、解码电路。 图1 红外线遥控系统框图 2 遥控发射器及其编码 遥控发射器专用芯片很多,根据编码格式可以分成两大类,这里我们以运用比较广泛,解码比较容易的一类来加以说明,现以日本NEC 的uPD6121G组成发射电路为例说明编码原理(一般家庭用的DVD、VCD、音响都使用这种编码方式)。当发射器按键按下后,即有遥控码发出,所按的键不同遥控编码也不同。这种遥控码具有以下特征:采用脉宽调制的串行码,以脉宽为0.565ms、间隔0.56ms、周

期为1.125ms的组合表示二进制的“0”;以脉宽为0.565ms、间隔1.685ms、周期为2.25ms的组合表示二进制的“1”,其波形如图2所示。 图2 遥控码的“0”和“1” (注:所有波形为接收端的与发射相反)上述“0”和“1”组成的32位二进制码经38kHz的载频进行二次调制以提高发射效率,达到降低电源功耗的目的。然后再通过红外发射二极管产生红外线向空间发射,如图3示。 图3 遥控信号编码波形图 UPD6121G产生的遥控编码是连续的32位二进制码组,其中前16位为用户识别码,能区别不同的电器设备,防止不同机种遥控码互相干扰。该芯片的用户识别码固定为十六进制01H;后16位为8位操作码(功能码)及其反码。UPD6121G最多额128种不同组合的编码。 遥控器在按键按下后,周期性地发出同一种32位二进制码,周期约为108ms。一组码本身的持续时间随它包含的二进制“0”和“1”的个数不同而不同,大约在45~63ms之间,图4为发射波形图。

自制用普通红外遥控器的遥控电脑

自制用普通红外遥控器的遥控电脑 当你躺在床上,正用电脑看着电影时,电话铃响起………无奈只好先跑去暂停了电影,再回来接电话,不然错过了精彩剧情岂不可惜?如果我们能给电脑安装一个遥控器那该多好,这样躺在床上也一样能操作电脑,给我们看电影和欣赏音乐带来了极大的便利。现在的电视卡都带有配套的遥控器并在卡上集成接收器,可以实现遥控换台以及一些其他的电视/电脑操作,但是,难道没有电视卡的朋友就无缘遥控了吗? 遥控接收器制作过程 其实,自制一个电脑遥控接收器,是非常容易的。首先,我们制作的电脑遥控器必须使用红外方式的(不能是射频的遥控器),一般电视、影碟机的遥控器都可以使用,如果手头没有闲置的遥控器,可以到小商品市场购买,一般的电视机遥控器即可,售价在十几元。注意,不要使用空调的遥控器,尽管它也是红外发射的,但是每次按键后,它都会把空调当前所有状态(模式、温度、风速、风向)发送一遍,导致每次发送的码串很长,会导致软件辨识错误。 经过比较,我们选择了Girder(v3.3.7)这个遥控软件,它功能全面,而且支持外挂插件,以支持新的遥控接收器和新的操作,从功能上可以说是"只有想不到,没有做不到"。除了日常操作,此外在幻灯片展示时如果运用遥控器,可以把演讲者从计算机旁边解放出来,从而与观众进行更加灵活亲近的互动,达到更好的展示效果。 (图1)遥控接收器的电路方案 我们的遥控接收器的电路方案取自Girder的第三方插件:"SFH-56 plugin for Girder"。该电路图(图一)简单到只有六个元件,而且可以直接去掉发光二极管(电源指示灯)和100Ω保护电阻以进一步简化电路。主要元件有HS0038A红外遥控接收头、5V稳压管(1/4W)、

单片机红外电视遥控器C51程序代码单片机程序

单片机红外电视遥控器C51程序代码单片机程序 //************************************************************** //名称:单片机红外电视遥控器C51程序代码() /*-------------------------------------------------------------- 描述: 一般红外电视遥控器的输出都是用编码后串行数据对38~40kHz的方波进行 脉冲幅度调制而产生的.当发射器按键按下后,即有遥控码发出,所按的键 不同遥控编码也不同。这种遥控码具有以下特征: 采用脉宽调制的串行码,以脉宽为0.565ms、间隔0.56ms、周期为1.125ms的组合表示二进制的“0”;以脉宽为0.565ms、间隔1.685ms、周期为2.25ms 的组合表示二进制的“1”。上述“0”和“1”组成的32位二进制码经38kHz 的载频进行二次调制,然后再通过红外发射二极管产生红外线向空间发射。 一般电视遥控器的遥控编码是连续的32位二进制码组,其中前16位为用户识别码,能区别不同的红外遥控设备,防止不同机种遥控码互相干扰。后16位 为8位的操作码和8位的操作反码,用于核对数据是否接收准确。 根据红外编码的格式,发送数据前需要先发送9ms的起始码和4.5ms的结果码。接收方一般使用TL0038一体化红外线接收器进行接收解码,当TL0038接收到38kHz红外信号时,输出端输出低电平,否则为高电平。 所以红外遥控器发送红外信号时,参考上面遥控串行数据编码波形图,在低 电平处发送38kHz红外信号,高电平处则不发送红外信号。 ----------------------------------------------------------------*/ //编辑: //日期: //**************************************************************** #define uchar unsigned char //定义一下方便使用 #define uint unsigned int #define ulong unsigned long #include //包括一个51标准内核的头文件 static bit OP; //红外发射管的亮灭 static unsigned int count; //延时计数器 static unsigned int endcount; //终止延时计数 static unsigned char flag; //红外发送标志 char iraddr1; //十六位地址的第一个字节 char iraddr2; //十六位地址的第二个字节 void SendIRdata(char p_irdata); void delay(); //************************************************************** void main(void) {

NEC协议的红外遥控器驱动程序

创作编号:BG7531400019813488897SX 创作者:别如克* 是不是觉得红外遥控+51单片机是绝妙组合?但是在编程时才发现超级纠结?其实也没那么纠结,自己摸索摸索,总能找出办法来的。 本程序占用了51单片机的定时器0以及中断1两个资源,为的是使单片机能接收到每一个红外脉冲信号,一个都不能少。如果舍不得用这两个资源,还有另一种查询的办法,就是不一定每个信号都能收到,可自己琢磨一下。

需要全套NEC协议红外遥控器资料的,到网上找,到处都有,而且很全。 另外,对着资料写程序如果实在写不出,可以找个示波器,把波形录下来好好研究研究。毕竟有些时候资料会过时,只要里面有一点东西变化了,程序就完全不一样了。这种弯路,尽量少走。 本程序只是头文件,具体到应用上还要各位自己动脑筋了,希望对大家有所帮助。共同学习,共同进步! /****************************************************************** INF_NEC.h 用于NEC协议的遥控器,主控器为51单片机。用户码8位,分布于2-17个脉冲;按键码8位,分布于18-33个脉冲。皆为前8原码,后8反码。 注意:本驱动占用51单片机的外部中断1以及定时器0两个资源,编程时注意 不要再乱动这两个资源。 *******************************************************************/ #include #define uchar unsigned char #define uint unsigned int uchar nec_flag=0;//nec_flag:遥控码的标志位。0:无信号;1、2:信号采集;3、可用信号 uchar nec_num=0;//nec_num:红外码的序号 uint nec_time=0;//nec_time:定时器的计时次数nec_time*250us uchar nec_cod[2]={0,1};//遥控器的编号,编号0为原码,编号1为反码 uchar nec_dat[2]={0,1};//遥控器的数据,数据0为原码,数据1为反码 #ifndef __INF_NEC__ #define __INF_NEC__ extern void nec_init(); extern void nec_act(); #endif void nec_init() //外中断1及定时器0的初始化函数 { TMOD=(TMOD&0xf0)|0x02; //定时器0模式2,8位自动重装 TH0=0x19; TL0=0x19; //11.0592MHz晶振,计数230次,大概时间250us ET0=1;TR0=0; //定时器0使能,先关着 IT1=1;EX1=1; //外部中断1使能,用来接收红外信号

红外遥控控制系统设计

河南科技学院机电学院单片机课程设计报告 题目:红外遥控控制系统设计 专业班级:电气工程及其自动化103 姓名:张明军 时间:2012.12.15 ~2012.12.28 指导教师:田丰庆邵锋张素君完成日期:2012年12月28 日

红外遥控控制课程设计任务书 1.设计目的与要求 设计出一个用于红外遥控控制的控制器。准确地理解有关要求,独立完 成系统设计,要求所设计的电路具有以下功能: (1)有效遥控距离大于10米。 (2)遥控控制的路数在5路以上。 (3)采用数码管显示当前工作的控制电路。 (4)通过遥控器可以任意设置用户密码(1-16位长度),只有合法用户才能有修改电路控制的功能,同时系统掉电后能自动记忆和存储密码在系统中。 (5)密码的输入时间超过12秒或者连续3次输入失败,声音报警同时锁定系统,不让再次输入密码。此时只有使用管理员密码方能对系统解锁。 2.设计内容 (1)画出电路原理图,正确使用逻辑关系; (2)确定元器件及元件参数; (3)进行电路模拟仿真; (4)SCH文件生成与打印输出; 3.编写设计报告 写出设计的全过程,附上有关资料和图纸,有心得体会。 4.答辩 在规定时间内,完成叙述并回答问题。 论文结构清晰,层次分明,理论严谨

目录 1引言 (1) 2总体设计方案 (2) 2.1 设计思路 (2) 2.2设计方框图 (3) 3设计原理分析 (4) 3.1发射电路设计 (4) 3.2接收电路设计 (7) 3.3 软件设计 (9) 4 结束语 (12) 参考文献 (13) 附录一 (14) 附录二 (15)

红外遥控控制系统 摘要:本设计由发射器和接收器两部分组成。指令键、指令信号产生电路、调制电路、驱动电路及红外线发射器组成。当指令键被按下时,指令信号产生电路便产生所需要的控制信号,控制指令信号经调制电路调制后,最终由驱动电路驱动红外线发射器,发出红外线遥控指令信号。 接收器由红外线接收器件、前置放大电路、解调电路、指令信号检出电路、记忆及驱动电路、执行电路组成。当红外接收器件收到发射器的红外指令信号时,它将红外光信号变成电信号并送到前置放大电路进行放大,再经过解调器后,由信号检出电路将指令信号检出,最后由记忆电路和驱动电路驱动执行电路,实现各种操作。 控制信号一般以某些不同的特征来区分,常用的区分指令信号的特征是频率和码组特征,即用不同的频率或者编码的电信号代表不同的指令信号来实现遥控。所以红外遥控系统通常按照产生和区分控制指令信号的方式和特征分类,常分为频分制红外线遥控和码分制红外线遥控。 关键词:4×4矩阵键盘;AT89C51;接收器件;震荡特性 1 引言 红外线遥控是目前使用很广泛的一种通信和遥控技术。由于红外线遥控装置具有体积小、功耗低、功能强、成本低等特点,因而,继彩电、录像机之后,在录音机、音响设备、空凋机以及玩具等其它小型电器装置上也纷纷采用红外线遥控。工业设备中,在高压、辐射、有毒气体、粉尘等环境下,采用红外线遥控不仅完全可*而且能有效地隔离电气干扰。 远程遥控技术又称为遥控技术,是指实现对被控目标的遥远控制,在工业控制、航空航天、家电领域应用广泛。红外遥控是一种无线、非接触控制技术,具有抗干扰能力强,信息传输可靠,功耗低,成本低,易实现等显著优点,被诸多电子设备广泛采用,并越来越多的应用到计算机系统中。红外线又称红外光波,在电磁波谱中,光波的波长范围为 0.01um~1000um 。根据波长的不同可分为可见光和不可见光,波长为0.38um~0.76um 的光波可为可见光,红外线遥控是利用近红外光传送遥控指令的,波长为0.76um~1.5um 。用近红外作为遥控光源,是因为目前红外发射器件( 红外发光管 ) 与红外接收器件 ( 光敏二极管、三极管及光电池 ) 的发光与受光峰值波长一般为 0.8um~0.94um ,在近红外光波段内,二者的光谱正好重合,可获得较高的传输效率及较高的可靠性。随着远程教育系统的不断发展和日趋完善,利用多媒体作为教学手段各级各类学校都得到了广泛应用。但经常会遇到同时使用多种设备,如: DVD 、 VCD 、录像机、电视机等,由于各种设备都自带遥控器,而且不同的设备所遵循的红外传输规约也不尽相同,操纵这些设备得用多种控器,给使用者带来了诸多不便。基于单片机的控制指令来对多种设备进行远程控制,从而方便快捷的实现远程控制。红外遥控的特点是不影响周边环境的、于10 米)遥控中得到了广泛的应用。

红外遥控器信号接收和显示的设计1

电子电路综合设计总结报告 题目:红外遥控器信号接收和显示的设计 摘要: 随着电子技术的发展,红外遥控器越来越多的使用到电器设备中,但各种型号遥控器的大量使用带来的遥控器大批量多品种的生产,使得检测成为难题,因此智能的红外遥控器检测装置成为一种迫切的需要。在该红外遥控器信号的接收和显示电路以单片机和一体化红外接收器为核心技术,具体由单片机最小系统、单片机和PC机间的通信模块、红外接收模块、数码管显示模块和流水灯模块组成。在本系统的设计中,利用红外接收器接收遥控器发出的控制信号,并通过软件编程将接收信号存储、处理、比较,并将数据处理送至数码管显示模块。总之,通过对电路的设计和实际调试,可以实现红外遥控器信号的接收和显示功能。根据比较接收信号的不同,在数码管显示电路及流水灯电路上显示相应的按键数字或闪烁变化功能,并可实现单片机及PC机之间的通信功能,使得控制信号能在PC机上显示。

关键词:单片机红外接收器HS0038 解码串口调试

设计任务 结合单片机最小电路和红外线接收接口电路共同设计一个基于单片机的红外遥控信号接收和转发系统,用普通电视机遥控器控制该系统,使用数码管显示信号的接收结果。 1、实现单片机最小系统的设计。 2、当遥控器按下数字键时,在数码管上显示其键值。如按下数字键1,则在数码管上显示 号码01。 3、当遥控器按下音量△及音量▽时,用两位数码的周围段实现顺时针或者逆时针旋转的流 水灯功能。(为使得音量的增减清晰显示,试验中在单片机的P1口外接一排流水灯,具体功能的实现见方案的可行性论证) * 运用串口调试助手,在遥控器有按键按下时,将其键值显示在PC机上。 * 当遥控器按下频道△及频道▽时,在数码管上显示加1或减1后的数值。 一、系统方案比较和论证 1、方案比较和选择 为了实现系统整体功能,红外解码部分是核心,红外解码是指将遥控发射器所产生的红外遥控编码脉冲所对应的键值翻译出来的过程。下面将系统方案做一论证,通常有硬件解码和软件解码两种方案。 方案一:此方案中,使用专用遥控器作为控制信号发出装置,当按下遥控器的按键后,一体化红外接收装置接收到遥控器发出的设置控制信号,然后将信号送到专用的解码芯片中进行解码,解码后将信号送到单片机,由单片机查表判断这个信号是按键数值信号或控制音量、频道等信号,当确认是何种信号后,启动子程序,然后进行查询。每次红外接收头接收到红外信号传到解码器中,解码器解码完毕后送到单片机,单片机再通过查表确定这些数值并进行相应功能的控制。设计原理图如图1所示。 图1、方案一设计原理图 方案二:此方案中,采用普通的家用遥控器作为控制信号发出装置,当按下遥控器的按键后,一体化红外接收装置接收到遥控器发出的红外线控制信号,然后把这个信号转换成电信号,传到单片机中,利用单片机对这个信号进行解码,解码完成后查表确定是按键数值信号或控制音量、频道等信号,启动子程序,进行相应的显示数字等功能。然后查询,重复上述流程。设计原理图如图2所示。

自制红外遥控开关

电子报/2007年/5月/27日/第015版 单片机应用 自制红外遥控开关 自制一款使用方便、价格低廉的遥控开关,不失为一个好的娱乐方法,本文详细介绍单路遥控开关的制作方法,如有需要,可以以此类推,制作出可同时控制灯具、风扇、自动窗帘等电气设备的多路开关。 本制作以89C2051单片机为核心,通过软件实现对红外遥控信号的解码,并对输出进行控制。 硬件电路如图1所示。 供电部分采用电容降压电路,通过全桥整流可以在同等情况下使用小容量的降压电容。5.1V 稳压管为芯片提供工作电压。89C2051的工作电压是2.7V~6V。单片机采用阻容复位。也可以加装复位开关,以方便调试时使用。晶振为6MHz。如需降低待机功耗,也可以选用更低频率的。红外接收头使用1838或1808一体化接收头。图中的按键为手控按键,也可作为调试验证使用。LED为工作指示灯。输出部分采用SSR固态继电器或者使用分立元件电路。虚线框中的部分可直接使用SSR,也可以按图中电路搭建。光揭MOC3061具有过零检测电路功能。 89C2051需要安装IC插座,以方便调试。89C2051不能在线编程,没有编程器的朋友可以使用具有ISP功能的89551系列单片机,这样可以省去调试时的来回拔插。 硬件电路制作好以后,就可以调试软件了。软件的流程图如图2所示。

程序的主要部分是红外解码,利用外部中断和定时共同完成。其他部分都是对端口的基本操作。调试软件时,如果不确定红外解码是否正确,可以使用按键程序测试其他功能或中断功能。 当软硬件都调好后,用滤光片遮挡红外一体化接收头(防止可见光干扰),将电路直接连接 到插座或是其他双线电路上,即可进行稳定性测试。

基于NEC标准的红外编码及解码原理及进程

基于NEC 标准的 主要器件:AT89c51、HS0038HS0038工作频率为38 kHz,能对得到TTL 电平的编码信号,再送给外只有3 个引脚: VS 、GND 和原理:采用 常用电器的NEC 38KHZ (即脉宽调制的方法)信息传给单片机,再通过单片机编码:NEC 标准:用 0.56ms 用0.565ms 高电平+1.685ms 发送的格式:引导码+用户码电平+4.5ms 的低电平组成。用第二次发送的用户码可为第一次是为了判断发送的信息是否正确注意:上面说的低电平和高电平志。即低电平期间不发射38KH 间发射38KHZ 的红外波。 标准的红外编码及解码原理及进程0038红外接收头、红外发射管、 能对收到遥控信号进行放大、检波、整形、解再送给单片机,经单片机解码并执行相关控制程1个脉冲信号输出引脚,使用方便,性能可EC 标准实现红外编码及解码。将要发送的通法)的载波发送出去,再由一体化红外接收单片机程序实现解码。 ms 的高低平+0.565ms 的低电平代表数据中5ms 的低电平代表数据中的1。 户码+用户码+操作码+操作反码。引导码为成。用户码和操作码均用8位的十六进制发送。 第一次发送用户码的反码,也可不为,发送反码,操作码也一样。 高电平不是实际的电平概念,只是个代表0和38KHZ 的红外波,此时发射管可亮可灭 。高电平 形、解调,制程序,对可靠。 数据通过头接收把中的0,9ms 的高送。 反码主要1的标高电平期

发射电路:如上图所示,D1为红外发射管,9014为低噪小功率NPN三极管,R1为10欧姆,R2为50欧姆,为了使发射管发射的距离加长常使R2为零, R1为4.7K欧姆。 功能:优势:通过对NEC标准红外编码的学习,可同时控制多个接收装置而不产生干扰。因红外发射芯片的地址码为固定的一个,只能控制单独的一个装置 或控制相同地址码的装置,且只能控制与遥控器上键数相同的功能,大多数为 十多个。而学习编码的优势是只用一个单片机就能至少有256个地址码(地址码不取反的话地址码将更多),一个地址码有对应的多个受控装置,可见学习 红外编码可大大节约资源。 解码原理及编程参考上面的编码原理。 实现中的问题:搜集资料不容易,且相同标准一个协议大家说的都不尽相同, 让人很难搞准那个是对的。 焊接的电路没理想的那么好使,红外接收头的距离没开发板上的接受的距离远。红外发射的距离更短,只有十多厘米。 进程:电路已焊接好,程序已写好,下面进入调试阶段。电路还需改进,尽可 能使其发射的距离加长。

红外遥控接收程序

#include "remote.h" UINT IrCode; //高8位为系统码,低八位为数据码 /*************************************************************************** *FUNCTION NAME: DelayIr *CREATE DATE: 2012/6/7 *CREATED BY: XS *FUNCTION: IR采样延时:0.14ms *MODIFY DATE: 2012/6/7 *INPUT: 无 * *RETURN: 无 ***************************************************************************/ void DelayIr(UCHAR timer) { UCHAR i; while(timer--) { for (i = 0; i<13; i++); } } /*************************************************************************** *FUNCTION NAME: RemoteDecode *CREATE DATE: 2012/6/7 *CREATED BY: XS *FUNCTION: IR遥控解码 *MODIFY DATE: 2012/6/7 *INPUT: 无 * *RETURN: 无 ***************************************************************************/ void RemoteDecode(void) { UCHAR i,j,n = 0; UCHAR irDat[4] = {0}; EX0 = 0;

万能学习型红外遥控器制作(毕业设计)

学号 密级 ××大学本科毕业论文 万能学习型红外遥控器设计 院(系)名称:×××× 专业名称:×××× 学生姓名:×××× 指导教师:×××× 二○○九年五月

BACHELOR'S DEGREE THESIS OF ×××× UNIVERSITY Design of Universal IR Learning Remote Controller College :×××× Subject :×××× Name :×××× Directed by :×××× May 2009

摘 要 随着家用电器种类的增加和无线遥控产品的普及,红外遥控器的使用频率越来越高,针对国内红外遥控学习技术成熟,但产品化程度低的特点,本文自主设计一种具有红外学习和触屏显示功能的红外遥控器,借此促进红外遥控学习技术在国内市场的产品化推广。 在红外解码方面,传统方法采用单片机中断或者查询方式采集红外信号,环境不理想情况下可能需要多次解码,本文借助电脑辅助记录全波形,通过相关软件优化波形,解码一次即可成功;在红外发射方面,本文通过实验发现红外发射距离受载波占空比和红外二极管贯通电流影响,通过调试将38KHz载波红外信号发射距离提高到10米;在红外接收方面,进行了红外干扰测试;在触屏校验方面,通过实验获取触屏数据,利用matlab参数估计lsqcurvefit函数求得校正参数,解决了触屏漂移问题;在彩屏显示方面,将遥控器所有按键简化为方向键和确认键,虚拟数码管显示按键位置,避免了单片机片上资源紧张的问题,此外,彩屏仅支持16位R5G6B5格式数据,一张176*220图片占用72. 6KB空间,造成极大浪费,本文借此讨论了适合本系统的图片压缩技术,给出了一种具体的图片压缩格式。 按照由简单到复杂的顺序,本文先后制作了遥控接收解码装置、遥控编码发射装置、万能学习型红外遥控器,以SAA3010遥控器作为典型代表(遵循飞利浦RC-5编码协议),成功的实现了红外编解码、发射接收、按键触屏双输入、彩屏显示等基本功能,最终制作的万能学习型遥控器在功能上可以完全代替SAA3010遥控器。 关键词:红外学习;红外解码;单片机控制;声卡采样;触屏校验

红外线遥控器解码程序

资料整理自互联网,版权归原作者! 欢迎访问 https://www.doczj.com/doc/283774248.html, 新势力单片机,嵌入式
专业技术论坛:https://www.doczj.com/doc/283774248.html,
红外线遥控器解码程序
Wang1jin 收藏. 交流论坛: https://www.doczj.com/doc/283774248.html,/ 推荐网站: https://www.doczj.com/doc/283774248.html, 个人博客: https://www.doczj.com/doc/283774248.html,
红外线遥控是目前使用最广泛的一种通信和遥控手段.由于红外线遥控装置具有体积小,功耗低,功能强,成本低等特点,因 而,继彩电,录像机之后,在录音机,音响设备,空凋机以及玩具等其它小型电器装置上也纷纷采用红外线遥控.工业设备中, 在高压,辐射,有毒气体,粉尘等环境下,采用红外线遥控不仅完全可靠而且能有效地隔离电气干扰.
1 红外遥控系统
通用红外遥控系统由发射和接收两大部分组成,应用编/解码专用集成电路芯片来进行控制操作,如图 1 所示.发射部分 包括键盘矩阵,编码调制,LED 红外发送器;接收部分包括光,电转换放大器,解调,解码电路.
2 遥控发射器及其编码
遥控发射器专用芯片很多,根据编码格式可以分成两大类,这里我们以运用比较广泛,解码比较容易的一类来加以说明, 现以日本 NEC 的 uPD6121G 组成发射电路为例说明编码原理.当发射器按键按下后,即有遥控码发出,所按的键不同遥控编码 也不同.这种遥控码具有以下特征:
采用脉宽调制的串行码,以脉宽为 0.565ms,间隔 0.56ms,周期为 1.125ms 的组合表示二进制的"0";以脉宽为 0.565ms, 间隔 1.685ms,周期为 2.25ms 的组合表示二进制的"1",其波形如图 2 所示.
个人博客:https://www.doczj.com/doc/283774248.html,
电子综合站点:https://www.doczj.com/doc/283774248.html,

课程设计-红外遥控开关(完整版附程序)

2008届计算机与信息学院 计算机科学与技术专业 一.课程设计题目:红外遥控开关 二.课程设计任务内容 1.课程设计的目的意义: 通过课程设计培养同学们的系统设计能力,使同学们达到以下能力训练: ⑴、调查研究、分析问题的能力; ⑵、使用设计手册、技术规范的能力; ⑶、查阅中外文献的能力; ⑷、制定设计方案的能力; ⑸、计算机应用的能力; ⑹、设计计算和绘图的能力; ⑺、技术经济指标的分析能力; ⑻、语言文字表达的能力。 2.本课题研究的主要内容: 设计一个多路红外遥控开关,利用市售彩电遥控器(以编码芯片LC7461为例),发送遥控器键盘数字信号,控制器接收解码,控制相应的输出。 基本要求: ⑴、设计实验电路(要求利用实验仪的硬件资源) ⑵、分析实验原理 ⑶、列出实验接线表 ⑷、采用汇编语言编写实验程序 ⑸、通过实验验证功能的实现 ⑹、编写课程设计说明书

红外遥控技术的出现,大大方便了人们的生活,而单片机技术的出现,给现代工业测控领域带来了一次新的革命。红外线遥控器具有体积小、功耗低、功能强、成本低等特点从而成为了当今非常流行的一种控制方式,因而,继彩电、录像机之后,在录音机、音响设备、空凋机以及玩具等其它小型电器装置上也纷纷采用红外线遥控。工业设备中,在高压、辐射、有毒气体、粉尘等环境下,采用红外线遥控不仅完全可靠而且能有效地隔离电气干扰。 红外遥控器是一种利用红外遥控系统来控制被控对象的系统.整个系统由数字电路和模拟电路两个部分组成。发射部分包括键盘矩阵、编码调制、红外发射器;接收部分包括红外接收、解调、解码电路。 关键字:红外遥控器,红外发射,红外接收,单片机

基于某单片机地红外遥控设计与制作

基于单片机的红外遥控设计与制作 13工试2班舒佳章韬略 一、设计目的 对于本课题的研究,其理论中的价值是对红外线这种电磁波的特性进行更加深入的研究。同时在与单片机和电子电路的共同作用下,找到单片机及电子电路在实际运用中的更多功能,从而挖掘出红外线和硬件设备结合中的更多可能性。在现实意义中,对于红外线的使用,它不仅提高了单片机、硬件设备和硬件系统在智能遥控领域的广泛应用,而相对了在硬件设施上使用了红外线的遥控技术,也同时大大拓宽了硬件设施的应用围。在不久的将来,我相信,人们对于红外遥控控制的运用,会变得越来越广。 二、设计要求 基本功能要求: 1.以一个单片机作为控制遥控器,另一个单片机控制系统为被遥控对象; 2.用遥控器的10个遥控开关,控制遥控对象的10个电源开关通断; 3.能实现10个电源开关状态显示; 4.能实现定时开关某一个电源开关。 扩展功能: 1.能实现灯光亮度连续调节;

2.能根据不同电器实现不同时间通断控制; 3.其他扩展功能。 三、方案设计 3.1红外遥控发射电路的方案 采用指令键产生电路产生不同的控制指令,单片机进行状态的编码,直接由单片机的口输出方波信号控制红外发射管进行发射。红外发射管采用普通的红外发射二极管。 3.2红外遥控接收电路的方案 遥控系统采用红外线脉冲个数编码,直接利用单片机软件解码,实现功能的遥控。 3.3单片机的选择 本设计所编写的程序比较简单,功能也比较少,所用到的输入输出端口也不是很多,所以我们决定用STC89C52单片机来完成本设计,既方便也很实用。 3.4红外遥控系统电路的原理框图以及各部分作用

各部分作用: (1)行列式键盘 行列式键盘又称为矩阵式键盘,用I/O线组成行列结构,按键设置在行列的交点上,行列式分别连接到按键开关的两端。键盘中有无按键按下是由行线送入扫描字及列线读入列线状态字来判断的,有键按下时通过查键并执行键功能程序。 (2)红外线发射电路 遥控器信息码由单片机的定时器1中断产生40KHZ红外线方波信号。由P3.5口输出,经过三极管放大,由红外线发射管发送。 (3)单片机 单片机用于输出方波信号控制红外发射电路的工作。 3.5红外接收部分原理框图以及各部分作用 各部分作用: (1)+5V电源电路 给单片机最小系统、控制电路提供以及红外接收电路提供电压。

(完整word)红外遥控协议分析之:NEC协议

红外遥控编码传输协议 生产厂家对红外遥控的编码做了严格的规范,目前国内外主流的红外遥控编码传输协议有十多种,如NEC、Philips RC-5、Philips RC-6、Philips RC-MM、Philips RECS80、 RCA、X-Sat、ITT、JVC、Sharp、Nokia NRC17和Sony SIRC等。 国内最常用的规范有两种:NEC和Sony SIRC。这两种规范的调制方式分别为:PPM(脉冲间隔调制)和PWM(脉冲宽度调制)。谈到这两个概念,我需要具体讲解一下,因为我在网上查阅相关资料时甚是郁闷,好多说法相互矛盾。有说NEC属于PWM的因为它的脉宽不同,PPM的脉宽是固定的。而细心地朋友如果探究到NEC的典型芯片的芯片手册时,会发现上面这种说法是错误的。比如UPD6121这款红外远程控制芯片的调制方式为PPM。后来终于在一家国外的网站上找到了能够自圆其说的解释。个人认为比较正确,拿来和大家分享。 要想认清红外遥控编码传输协议的具体内容,我想还是先捡其重点来讲一下,编码规范中最重要的当属调制这部分了。而主流的调制方式有两种分别为PPM和PWM,当然其他还有好几种,这里先不讲解,免得糊涂了。本文就先介绍下PPM和PWM的区别。 PPM(Pulse Position Modulation),其实更加准确的说法应该是PDM(Pulse Distance Modulation)即脉冲间隔调制: 上图为典型编码规范NEC协议的调制图,为PPM调制。可以看出不管是“0”还是“1”,有高频调制波的地方(下文称其为脉冲)其宽度都是相同的位560us,而脉冲间的间隔则是不同的:“1”时为(2.25ms-560us),“0”时为(1.12ms-560us)。由此得来PPM的称号。 再来看下PWM的调制波形吧: 显然可以看出,“1”的脉冲宽度为1.2ms,“0”的为600us。而脉冲间隔不管是“0”还是“1”,均为600us。从而PPM和PWM的两个概念认识清楚!当然不同规范中PPM和PWM 这两种调制方式的脉宽及脉冲间隔可能不同,上面两个图只是示例而已。

红外遥控制作详解

红外遥控制作详解 摘要:文章从实际应用角度出发,详细分析了红外遥控器的编码原理,硬件电路搭建,并给出了遥控器信号发送与接收的程序流程。 引言:红外遥控自1974年发明以来,因其体积小、重量轻、价格低廉、使用灵活、功耗低及抗干扰能力强等特点得到很广泛的应用,在日常生活中随处可见,如红外线鼠标,红外线打印机,红外线键盘等等。本文将以红外遥控电路为例,详细介绍红外遥控的制作流程。 一、原理介绍 红外遥控系统由发射和接收两大部分组成,红外发射管将电能转化为光能,接收管感应红外光,将光能转化为电信号。其通信的机理是利用单片机控制NE555发送脉宽调制的串行码,以脉宽为1ms、间隔0.5ms、周期为1.5ms的组合表示二进制的“0”;以脉宽为3ms、间隔0.5ms、周期为3.5ms的组合表示二进制的“1”,通过一个9ms的起始码(低电平),和一个5ms结果码(高电平)这个码值使程序能够判断是否可以开始接收数据。

二、硬件解析 整体硬件电路见附录。下面我们详细分析一下其中几个重点模块。 1.NE555调制模块 如果仅控制芯片的控制信号来驱动红外发射管的红外线发射,是不能让红外接收头收到信号的。接收头所能判断的信号为一定频率信号。大多数红外接收头能接收的中心频率为38kHz,但也有一些接收头中心频率为36kHz、37kHz、39kHz、40kHz,如果发射频率与接收频率相差1kHz,大多可以正常遥控,相差2kHz以上则会出现遥控不灵现象。而单片机的信号频率没有这 么大,因此,我们要对控制芯 片输出的控制信号进行调制。 这里我们所介绍的调制电路 以NE555为中心,加以一 定的外围电路,构成多谐振荡 器。 先来看一个NE555的 经典多谐振荡电路,如图1。 它的原理是把施密特触发器 的反相输出端经RC积分电路 接回到它的输入端,构成多谐

相关主题
文本预览
相关文档 最新文档