当前位置:文档之家› 所有红外遥控器的解码方法

所有红外遥控器的解码方法

所有红外遥控器的解码方法
所有红外遥控器的解码方法

所有红外遥控器的解码方法

已经完成了DS1302,18B20,RS232通讯,24C02存储,红外遥控等.现只将红外遥控的解码方法贴出,希望能与大家交流,起到抛砖引玉的作用.

我的开发环境是IAR FOR AVR 5.11, CPU为M8,晶振 11.0592.

红外遥控解码原理是通过AVR的输入捕获功能,捕获信号后进行宽度判断,并通过串口在电脑中显示出来.下面是捕获的程序,数据未经处理,只是捕获后进行编码的解码.通过这个捕获程序,原则上能解所有线外遥控编码,我已经解了格力和中星九B的遥控编码,代码未优化,只是测试.

#include

#include "MyDelay.h" //在此未提供我的延时程序,如果有需要的我再贴出

#include "MyUSART.h"//在此未提供我的串口配置程序,如果有需要的我再贴出

#ifndef uchar

#define uchar unsigned char

#endif

#ifndef uint

#define uint unsigned int

#endif

void ini(void)

{

//配置输入捕获

TCCR1A = 0x00;//普通端口模式,OC1A/B未连接

TCCR1B = 0x81;//位7与位6是输入捕获允许和触发方式,BIT2-0,分频选择

TCNT1H = 0x00;//计数器起始值高8位

TCNT1L = 0x00;//计数器起始值低8位

ICR1 = 0x0000;//输入捕获发生时,将该值写入TCNT

TIMSK |= 0x20;//输入捕捉中断使能 BIT5 =1

TIFR &= 0xdf;//输入捕捉标志,外部引脚 ICP1 出现捕捉事件时 ICF1置位

}

#pragma vector = TIMER1_CAPT_vect //定时器0溢出中断入口

__interrupt void TimeINT0(void)

{

uint r;

uchar h,l;

r = ICR1;//接收时序

if(TCCR1B &= 0x40) //更改触发方式

TCCR1B = 0x81; //下降沿触发

else

TCCR1B = 0xc1;//上升沿触发

TCNT1H = 0x00;//计数器起始值高8位

TCNT1L = 0x00;//计数器起始值低8位

TIFR |= 0x20;//输入捕捉标志,外部引脚 ICP1 出现捕捉事件时 ICF1置位

h = (uchar)(r>>8);

l = (uchar)r;

USART_Send(h); //串口显示高八位

USART_Send(l);//串口显示低八位

}

void main(void)

{

ini();

}

以下是由串口调试助手显示的数据.

说明:

1.时间未用,我的程序也通过串口显示了,

2.前两个字节无意义,是因为捕获到低电平后,16位计数器一直在计数,所以,前面的计数值无用.

3.编码原理不管是曼彻斯特_码/日立的通用红外编码/PT2272码等,差不多都由(异步) 码头+引导+编码+停止位组成,大同小异,所以根据这个原理,解出了上述数据的码头,引导和键编码.再根据解出的码画出频率图.

4.计算时要将显示的数据转换成10进制再计算.

5.未知部分估计是停止位,不过只要能检测到码头,引导和编码就可以了.

6.解码后,可以将该数据进行处理, 这时,这个遥控器就可以赋与功能,和开发板互动了.呵呵,

7.为什么选中九B,因为中9B的遥控器不用花钱,中9老是升级,好多客户都不用了,所以又省了10元钱,一块敷铜板的钱,哈哈哈.

8.题外话,中9想升级的可以和我交流,我已经升了很多了.

9.好,希望该方法可以帮助需要的朋友.

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

目录 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

红外遥控信号的解码

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

红外遥控器的基本原理

红外遥控器的基本原理 ?红外线的特点人的眼睛能看到的可见光,若按波长排列,依次(从长到短)为红、橙、黄、绿、青、蓝、紫,红光的波长范围为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 光电二极管)将接收到的红外光指令信号转换成相应的电信号。此时的信号非常微弱而且干扰特别大,为了实现对信号准确的检测和转换,除了高性能的红外光电转换器件,还应合理地选择并设计性能良好的电路形式。最常用的

单片机红外电视遥控器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) {

红外遥控原理及解码程序

红外遥控系统原理及单片机 红外线遥控是目前使用最广泛的一种通信和遥控手段。由于红外线遥控装置具有体积小、功耗低、功能强、成本低等特点,因而,继彩电、录像机之后,在录音机、音响设备、空凋机以及玩具等其它小型电器装置上也纷纷采用红外线遥控。工业设备中,在高压、辐射、有毒气体、粉尘等环境下,采用红外线遥控不仅完全可靠而且能有效地隔离电气干扰。 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为发射波形图。

基于单片机的红外解码.温度及液晶显示

中国矿业大学徐海学院 技能考核培训 姓名:顾嘉诚学号: 22110818 专业:信息11-2班 题目:基于单片机的红外解码.温度及液晶显示专题:红外解码 指导教师:宥鹏老师翟晓东老师 设计地点:电工电子实验室 时间: 2014 年 4 月

通信系统综合设计训练任务书 学生姓名顾嘉诚专业年级信息11-2班学号22110818 设计日期:2014年4 月5日至2014 年4 月10 日 同组成员:姜怀修,刘剑桥,顾嘉诚,彭传锁,何子豪,王业飞 设计题目: 基于单片机的红外无线控制 设计专题题目: 红外解码 设计主要内容和要求: 1.主要内容: 2. 单片机内部结构 红外遥控解码 C语言程序设 Ds18b20的使用 Lcd1602的使用 2. 功能扩展要求 环境温度液晶显示 指导教师签字:

目录 正文 (5) 1.概述 (5) 1.1功能描述 (5) 1.2单片机资源 (5) 2.1管脚图 (5) 3.1. 使用资源 (5) 2.原理篇 (6) 2.1红外发送及接收 (6) 2.1.1红外接收概述 (6) 2.1.2硬件及原理图 (7) 2.1.3红外中断接收部分程序 (8) 2.2温度原理 (9) 2.2.1 DS18B20 的主要特性 (9) 2.2.2原理图与硬件 (10) 2.2.3 DS18B20时序和程序 (10) 2.3 QC1602A (12) 2.3.1 1602外部结构及管脚说明 (12) 2.3.2 写命令/数据时序与部分程序 (13) 3.效果图 (15) 4.软件篇 (15) 4.1程序框图 (15) 4.1.1 Main函数 (15) 4.1.2 中断 (16) 4.1.3 60ms定时中断 (16) 4.2 完整程序 (16) 4.2.1 Project.c文件 (16) 4.2.2 onewire.c 文件 (23) 5.参考文献 (26)

最简单详细的红外解码程序

#include //包含头文件名 sbit IRIN=P3^2; //定义红外接收头的外部接口,即外部中断0 sbit BEEP=P1^5; //定义蜂鸣器接口,我的在P1^5 unsigned char IRCOM[7]; //定义数组,用来存储红外接收到的数据 void delay(unsigned char x) { //延时子程序unsigned char i; //延时约x*0.14ms while(x--) //不同遥控器应设置不同的参数

{for(i=0;i<13;i++){}} //参数的选择咱们先不管,先看这个 } void beep() { unsigned char i; //蜂鸣器发声子程序 for(i=0;i<100;i++) { delay(4); //这个得看你的蜂鸣器内部是否有振荡源 BEEP=~BEEP; } //如果没有振荡源就应该输入脉冲信号 BEEP=1; }

void IR_IN() interrupt 0 using 0 //外部中断0程序 { unsigned char j,k,n=0; //先定义变量,记住n=0 EX0=0; //禁止中断,以免再次进入中断 delay(15); //延时0.14ms*15=2.1ms if(IRIN==1) //如果在这期间有高电平说明 { //信号不是来自遥控的,返回主程序 EX0=1; return; } while(!IRIN){delay(1);} //死循环,等待9ms前导低电平信号的结束for(j=0;j<4;j++) //一共有4组数据

TCL空调遥控器企业标准

TCL空调遥控器企业标准 TCL空调器(中山)有限公司 企业技术标准 QT/TK-01.26-2005 遥控器 2005-05-30批准 2005-06-01实施 TCL空调器(中山)有限公司发布 文件编号 QT/TK-01.26-2005 TCL空调器(中山)有限公司 技术标准修改状态 A00 文件名称遥控器技术标准页码第2页共16 页 企业标准 文件名称: 遥控器文件编号: QT/TK-01.26-2005 起草部门:设计开发部品质管理部版本: A 编制: 李怀陈声艺日期: 2005 年 05 月 25日 标准化: 杨汉东日期: 2005 年 05 月 25日 审核: 黄永毅招伟日期: 2005 年 05 月 25日 审批: 刘锋欧阳新桥日期: 2005 年 05 月 25日 批准: 郑双名日期: 2005 年 05 月 30日 页面修改状态 (修改页码) 序修改单号发行日期号 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 1 2 3 4 5 6 7 8 9 10 说明 本技术标准为TCL空调器(中山)有限公司所有,未经许可任何人不得翻印,纸介文件在盖上红色受控印章后方为有效~

TCL AIR CONDITIONER(ZHONG SHAN)CO(,LTD 文件编号 QT/TK-01.26-2005 TCL空调器(中山)有限公司 技术标准修改状态 A00 文件名称遥控器技术标准页码第3页共16页 1 范围 本标准规定了TCL空调器用红外遥控发射器(简称:遥控器)的技术要求、试验方法、检验规则、标志、包装、运输及储存等。 本标准适用于所有TCL空调器所用的遥控器。 2 引用标准 GB/T2423.1 电工电子产品环境试验第2部分:试验方法试验A:低温 GB/T2423.2 电工电子产品环境试验第2部分:试验方法试验B:高温 GB/T2423.3 电工电子产品基本环境试验规程试验Ca:恒定湿热试验方法 GB/T2423.22 电工电子产品环境试验第2部分: 试验方法试验N:温度变化GB/T2423.10 电工电子产品环境试验第2部分:试验方法试验Fc和导则:振动 (正弦) GB4343.2 电磁兼容家用电器、电动工具和类似器具的要求第2部分:抗扰度产品类标准 GB/T17626.2 电磁兼容试验和测量技术静电放电抗扰度试验 GB/T2828.1 计数抽样检验程序 QB/T 2263 房间空气调节器电子控制器 QT/TK-08.001–2005《产品质量特性重要度分级、不合格(缺陷)分类及编码、不合格品分类导则》 3 定义

红外线遥控器解码程序

资料整理自互联网,版权归原作者! 欢迎访问 https://www.doczj.com/doc/9515835013.html, 新势力单片机,嵌入式
专业技术论坛:https://www.doczj.com/doc/9515835013.html,
红外线遥控器解码程序
Wang1jin 收藏. 交流论坛: https://www.doczj.com/doc/9515835013.html,/ 推荐网站: https://www.doczj.com/doc/9515835013.html, 个人博客: https://www.doczj.com/doc/9515835013.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/9515835013.html,
电子综合站点:https://www.doczj.com/doc/9515835013.html,

红外解码程序详解

//此程序为网上下载后修改,要弄懂的话,可以去看看HT6221的时序图。当然也欢迎在这里留言。 ///C51的红外解码程序,可以根据需要自己修改: //11.0592Mhz #include //根据自己的接线来改 sbit IRIN = P3^2; //红外接收器数据线 sbit led = P3^7; //指示灯 //////////////////////////////////////////// //定义数组IRCOM,分别装解码后得到的数据 //IRCOM[0] 低8位地址码 //IRCOM[1] 高8位地址码 //IRCOM[2] 8位数据码 //IRCOM[3] 8位数据码的反码 ///////////////////////////////////////////// #define uchar unsigned char #define uint unsigned int uchar IRCOM[4]=0; bit flag=0; /********************/ void delay014ms(unsigned char x); //x*0.14MS void IR_init(void); void delay014ms(unsigned char x) //x*0.14MS STC10F04延时约0.15MS { unsigned char i; while(x--) { for (i = 0; i<125; i++) //13 {;} } } /////////////// //初始化 //////////// void IR_init(void) { EA=1; EX0=1; //允许总中断中断,使能 INT0 外部中断 IT0=1; //触发方式为脉冲负边沿触发 IRIN=1; //I/O口初始化

基于单片机的空调遥控器设计 (1)

本科毕业设计基于单片机的空调遥控器

摘要 随着社会的发展,科技的进步以及人们生活水平的逐步提高,各种方便于生活的遥控系统开始进入了人们的生活。电器在家庭中已经十分普及,与此同时,和电器相伴的空调遥控器的品种和产量不断提高。 传统的遥控器采用专用的遥控编码及解码集成电路,这种方式虽然制作简单容易,但由于功能键数及功能受到特定的限制,只实用于某一专用电器产品的应用,应用范围受到限制。而采用单片机进行遥控系统的应用设计,具有编程灵活多样,操作码个数可随便设定等优点。 论文首先对遥控器的几个方案进行了论证,最终确定了一可行性方案,并对此方案进行了可行性分析之后提出了电器遥控器的硬件和软件设计方案。在硬件设计方案中,首先详细论述了遥控器的基本原理并用实例进行了说明。然后,对电器遥控器常用硬件设备原理和使用进行了讨论,并对设计中使用的单片机做了必要说明。在软件设计方案中,论文对软件流程做了详细的解释并阐述了单片机软件设计的一般方法。最后,论文对电器遥控器设计的硬、软件调试做了简单介绍。 关键字:遥控器电器遥控单片机

Air Conditioner Remote Controller Based On Single Chip Microcomputer Fan Geqiang (College of Science, South China Agricultural University, Guangzhou 510642, China) Abstract:With the development of society, the progress of science and technology and the improvement of people's living standards, remote control systems to facilitate life begin to enter people's life. Electrical appliances have become very popular, in the family at the same time, and the air conditioning remote control electric appliance with variety and yield improvement. The traditional remote controller adopt special remote control coding and decoding integrated circuit, while this preparation is simple and easy, but because the function keys and function subject to certain limitations, application is applicable only to a special electrical products, limited application range. Design and application of single-chip control system with programmable, flexible operation, code can be arbitrarily set number etc. Firstly, several schemes for the remote control has been demonstrated, ultimately determine a feasible scheme, and this scheme for the feasibility of proposed electric appliance remote controller hardware and software design scheme. In hardware design, this paper firstly discusses the basic principle of the remote control and illustrates it with examples. Then, on a remote control electric appliance equipment commonly used hardware principle and application are discussed, and the design used in single-chip to do the necessary notes. In software design, the software process to do a detailed explanation and expounds the general method of MCU software design. Finally, the article on the remote controller design hardware, software debugging is introduced briefly. Keyword: remote control electric remote control single-chip

红外解码程序详解

红外遥控解码程序设计 ——————基于uPD6121红外编码制式 红外传感系统是目前应用最为广泛的遥控系统,一个红外遥控系统可分为发射和接收两部分组成,发射端称之为红外遥控器,一般由矩阵键盘,红外编码调制芯片和红外发射管组成;接收端用一体化红外接收头即可,这个东东内置光电放大器和解调部分,信号接收之后一般很微弱须放大后才可解码,为有效发射出去得先托付在载波上所以需经历调制、解调的过程,其实对于发射部分主要工作在于编码,而对于编码方式只有几种主流方式,而目前国内大部分均为uPD6121编码方式(日本NEC公司搞出来的。。),所以我们只须弄清楚这种编码的时序,即可写出万能的红外解码程序,只要是基于这种编码方式的遥控器(家里的电视、空调、电扇遥控器)都可以用该程序来解码(这点也充分证明了C语言的高移植性啊。。) 这种编码的格式其实很简单,开头是一个引导码,人家芯片在编码时将其设计成9ms的高电平和4.5ms的低电平,也就是说你必须跳过这段引导码之后才会接收到数据,第一个问题来了:为什么要加这段引导码?因为红外传感是非常容易受到干扰的,如果直接传送数据很可能并非发送端的信号,很可能来自其他辐射,后面设计程序时会遇到这个问题。所以我们在写程序时在引导码时可以加入检测代码,如果是引导码则继续接收,否则跳出。第二个问题就是:接收数据时我们用外部中断接收,这是考虑到CPU 的执行效率,如果你在主函数里接收数据,就好比CPU一直在问:你接收到数据没? 你接收到没?..很明显不靠谱,和串口通信一样,接收数据用中断这是经验,有利于单片机的执行效率。第三个要注意的就是红外接收端和编码发送的数据是反向的!这点很重要,我看很多资料没有写明这点,让很多童鞋疑惑不解,也就是说引导码编码时确实是9ms高电平和4.5ms 的低电平,但是到了接收端是9ms的低电平和4.5ms的高电平,所以我们在解码时就得注意引导码高电平出现的顺序。对于编码格式,引导码后接了4个字节的数据,前两个字节为用户码和用户反码,简单点说就是器件地址;后两字节为操作码和操作反码,就是我们真正需要的数据。图为发送端编码格式,注意接收到的已反向!

红外遥控编码格式

红外遥控编码 红外遥控编码常用的格式有两种:NEC和RC5 NEC格式的特征: 1:使用38 kHz载波频率 2:引导码间隔是9 ms + 4.5 ms 3:使用16位客户代码 4:使用8位数据代码和8位取反的数据代码 下面的波形是从红外接收头上得到的波形:(调制信号转变成高低电平了) 不过需要将波形反转一下才方便分析:

NEC 协议通过脉冲串之间的时间间隔来实现信号的调制(英文简写PPM)。逻辑“0”是由0.56ms的38KHZ载波和0.560ms的无载波间隔组成;逻辑“1”是由0.56ms的38KHZ载 波和1.68ms的无载波间隔组成;结束位是0.56ms的38K载波。 遥控器的识别码是Address=0xDD20;键值是Command=0x0E;

注意波形先是发低位地址再发高位地址。所以0000,0100,1011,1011反转过来就是1101,1101,0010,000十六进制的DD20; 键值波形如下:

也是要将0111,0000反转成0000,1110得到十六进制的0E;另外注意8位的键值代码是取反后再发一次的,如图0111,0000 取反后为1000,1111。 最后一位是一个逻辑“1”。 RC5编码相对简单一些: 下面的遥控器地址是1A,键值是0D的波形 同样由于取自红外接收头的波形需要反相一下波形以便于分析:

反相后的波形: 根据编码规则:

得到一组数字:110,11010,001101 根据编码定义 第一位是起始位S 通常是逻辑1 第二位是场位F通常为逻辑1,在RC5扩展模式下它将最后6位命令代码扩充到7位代码(高位MSB),这样可以从64个键值扩充到128个键值。 第三位是控制位C 它在每按下了一个键后翻转,这样就可以区分一个键到底是一直按着没松手还是松手后重复按。 如图所示是同一按键重复按两次所得波形,只有第三位是相反的逻辑,其它的位逻辑都一样。

红外遥控器的基本原理

红外遥控器的基本原理 红外线的特点人的眼睛能看到的可见光,若按波长排列,依次(从长到短)为红、橙、黄、绿、青、蓝、紫,红光的波长范围为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 光电二极管)将接收到的红外光指令信号转换成相应的电信号。此时的信号非常微弱而且干扰特别大,为了实现对信号准确的检测和转换,除了高性能的红外光电转换器件,还应合理地选择并设计性能良好的电路形式。最常用的

红外解码C语言程序

#include #define uchar unsigned char #define uint unsigned int sbit SM0038 = P3^3; sbit LED = P1^0; uchar data IRcode[4]; //定义一个4字节的数组用来存储代码 uchar CodeTemp,charsend,i,j,k; //编码字节缓存变量 /**********************************2us延时******************************/ void delay(uint k) { while(k --); } /**********************************************************/ void delay0_14MS(unsigned char x) //x*0.14MS { unsigned char i; while(x--) { for (i = 0; i<13; i++) {} } } /******************************外部中断1初始化**************************/ void Outside_Init(void) { EX1= 1;//开外部中断1 IT1 = 1;//负边沿触发 EA = 1; //开总中断 } /******************************中断处理**************************************/ void Outside_Int(void) interrupt 2 using 0 { uchar N = 0; EX1 = 0; delay(500);//延时1ms if(SM0038 == 1) { EX1 =1; return; } //确认IR信号出现 while(!SM0038); //跳过9ms低电平

格力空调十六进制红外遥控器编码_2015-02-14

格力小王子 一、基本信息: 型号:YB0F2 采用脉冲间距调制。 图1:示波器获取波形 报头脉冲:9ms 报头间距:4.5ms 载波频率:37.9KHz(38KHz) 码段1与码段2间距:20ms “1”:脉宽,656us。间距,1640us。 “0”:脉宽,656us。间距,544us。 二、编码信息: 1-3位:模式 1、送风: 图标:风扇。代码:110。 2、自动: 图标:循环箭头。代码:000。 3、除湿:码段2 33位 码段1 36位 报头 脉冲 报头间距 4.5ms

图标:水滴。代码:010。 4、制冷: 图标:雪花。代码:100。 5、制热: 图标:太阳。代码:001。4位(加68位):开机关机 开机:1。 关机:0。第68位取反。5-6位:风速 一级:10 二级:01 三级:11 自动:00 7、37、41位(加65位):扫风 上下扫风:110。第65位取反 左右扫风:101。 上下左右:111 无扫风:000 8位:睡眠 睡眠:1 不睡眠:0 9-12位与65-68位:温度 制冷模式下:

送风模式:

超强:1 普通:0 22位:灯光 亮:1 灭:0 23位与25位:健康,换气 健康:10 换气:01 健康+换气:11 普通:00 24位:制冷模式下-干燥;制热模式下-辅热; 干燥:1 普通:0 45-46位:显示温度 不显示:00 显示:10 显示室内温度:01 显示室外温度:11 其他位: 除了29、31、34位为“1”外,均为“0”。其他位功能不详(遥控器无对应项)。 第36位和69位分别是码段1和码段2的最后一位,无所谓“0”“1”。 三、其他说明 在自动模式下只可以设置的项目有:风速1、2、3级、自动;上上下左右扫风;显示温度;灯光;睡眠定时(非睡眠)。其他项均不可以设置。此时温度不可设置,温度段的代码为:1001 1101。

红外遥控器编码规则简要说明

红外遥控器编码规则简要说明 1、遥控器由红外遥控专用芯片PT2248作为编码及发送部分,PT2248最大可用作18路红外遥控系统的编码,其内部己集成了38kHz的红外载波振荡及相应的数字脉码调制电路,只需外接3×6的矩阵式按键、红外发光二极管及其驱动电路等少量元器件便可完成编码发送的功能。发送部分电路图如下图所示: 2、PT2248组成的十八路遥控发送器其编码规则如下: (1)设a为一个时间单位,时间长度是38kHz的16个时钟周期,即 a=1÷38kHz×16=0.421ms 编码是以串行形式发送的,在接收端(38kHz一体化红外接收解调器)接收到如下形式的1位的编码时分别表示“0”和“1”: 1个a的低电平,3个a的高电平表示编码“0” 3个a的低电平,1个a的高电平表示编码“1” 编码以串行形式发送,接收端的一体化红外接收解调器输出波形如下图所示: (2)遥控器的每个按键编码由12位按以上编码规则所代表的“0”、“1”组成,时间长度为48a,当按下遥控器的7到18号单击按键,则以12位为一组(48a)发送两次编码,如下图所示: 60a为自按下按键到发送编码的等待时间,80a是前后两次发送12位48a编码的高电平时间间隔。7到18号单击按键无论发送端按键时间持续多长只发送一次这样形式的两组相同的12位编码。 (3)当按下1到6号连续按键时,编码按如下格式连续发送: (4)具体每个12位的串行编码规则如下: C1、C2、C3为用户可通过在遥控器发射电路中是否接入IN4148二极管决定其为“0” 或“1”,这里取“111”,H、S1、S2为单击连续按键的标志位,相当于列坐标,D1至

红外解码数码管显示

基于STC89C54单片机设计的红外解码数码管显示 1.红外解码原理 红外遥控器发送数据时,是将二进制数据调制成一系列的脉冲信号红外发射管发射出去,红外载波为频率38KHz的方波,红外接收端在收到38KHz的载波信号时,会输出低电平,否则输出高电平,从而可以将“时断时续”的红外光信号解调成一定周期的连续方波信号,再经过1838一体化红外接收头解调便可以恢复出原数据信号。如图所示, 我们可以通过单片机的定时器给红外接收管接收的每个点电平计时,并把每个点电平的时间存起来。根据时间的不同来分辨是引导码、“0”还是“1”。下面是我做的实验原理图 上图式数码管显示原理图,下面是红外接收管与单片机的连接原理图。

注:上图的J27是和单片机的P3^2相连的。 程序中用到的定时器1、定时器0和外部中断0. 下面是实验的C语言程序: /*----------------------------------------------- 名称:遥控器红外解码数码管晶显示 论坛:无 编写:yang-baoan 日期:2011.10 修改:无 内容:按配套遥控器按键,液晶显示4组码值,分别是用户码用户码数据码数据反码 显示如下:

1E1E00FF ------------------------------------------------*/ #include //包含头文件,一般情况不需要改动,头文件包含特殊功能寄存器的定义 sbit IR=P3^2; //红外接口标志 #define DataPort P0 //定义数据端口程序中遇到DataPort 则用P0 替换 sbit LATCH1=P2^2;//定义锁存使能端口段锁存 sbit LATCH2=P2^3;// 位锁存 unsigned char Tab[16]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07, 0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71}; unsigned char TempWei[8]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f}; /*------------------------------------------------

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