万能学习型红外遥控器设计
自学习型红外遥控
SW-PB
SW-PB
SW-PB
SW-PB
SW5
SW6
SW7
SW8
பைடு நூலகம்
晶振
LCD显示
SW-PB
SW-PB
SW-PB
SW-PB
SW9
SW10
SW11
SW12
SW-PB VCC VCC JP3 1 3 5 7 24C02 REST P1_2 P1_3 2 4 6 8 SW13 R7 5.1K R8 5.1K
SW-PB
• 实际电路的测试 • 程序下载进单片机后,打开单片机开发板上电源接口开 关以及P1口电源切换开关,按下中断0控制键,待绿色的 流水灯亮后,将电视遥控器对准单片机开发板上的红外接 收头按下某个按键,当绿灯熄灭时,此时代表学习完成了, 然后关闭PI口电源切换开关按下单片机开发板上的发射键 对电视机进行遥控操作。测试可知,本次设计的学习型遥 控器完全符合要求,达到了预期目的。
Program /***********初始化函数**********/ clearmen() { studylamp=1; lamp=1; remoteout=1; remotein=1; for(i=0;i<206;i++) {remotedata[i]=0x00;} IE=0x00; IP=0x01; TMOD=0x22; PCON=0X00; TH1=0xf3; TL1=0xf3; IT0=1; EX0=1; EA=1; }
红外接收电路
X2 X1
P1_1
红外发送电路
C3 X2 10pF D2 LED R10 10k Y1 11.0592MHZ C5 X1 10pF P1_12 R14 10k SW1 P1_4 P1_5 P1_6 P1_7 P1_8 P1_9 P1_10 P1_11 SW2 R11 10k SW3 R12 10k SW4 VCC R13 10k
学习型红外遥控器
目录摘要 (I)ABSTRACT (II)第1章绪论 (1)1.1课题研究背景 (1)1.2课题研究的发展现状 (1)1.3课题研究的意义 (2)1.4课题研究的内容 (2)第2章学习型红外遥控的原理 (4)2.1红外遥控系统概述 (4)2.2红外遥控调制原理 (4)2.3红外遥控发射原理 (4)2.4红外遥控接收原理 (6)第3章红外遥控系统方案设计 (8)3.1设计性能指标 (8)3.2硬件方案设计 (8)3.3软件方案设计 (8)第4章红外遥控的硬件设计 (10)4.1硬件的选择 (10)4.1.1红外接收装置的选择 (10)4.1.2红外发射装置的选择 (12)4.1.3单片机的选择 (13)4.2红外遥控电路设计 (19)4.2.1接收部分电路 (19)4.2.2发射部分电路 (19)第5章系统软件的设计 (21)5.1主程序的设计 (21)5.2遥控码读入程序的设计 (21)5.3遥控码发送程序的设计 (23)5.4初始化程序和延时程序 (23)第6章红外遥控的调试与仿真 (25)6.1软件部分的仿真 (25)6.2硬件电路部分的仿真 (26)6.3硬件电路的调试 (28)第7章结论与展望 (34)致谢 (35)参考文献 (36)附录 (37)附录一 (37)附录二 (38)附录三 (39)2010届电子信息工程专业毕业设计(论文)摘要红外线遥控是目前使用最广泛的一种通信和遥控方式,由于其具有结构简单、体积小、功耗低、功能强、成本低等特点,因而广泛应用于彩电、空调机、CD/VCD、录像机家用电器设备及其工业控制中。
随着现在人们生活中家电日益增加的需要,使用红外遥控器也越来越频繁。
因为各种红外遥控器编码格式不同,使得各种红外遥控器不能兼容。
经常需要更换遥控器,这也给人们生活带来了不便。
单片机的迅速发展使这一问题得到了很好的改善。
在此设计一种以AT89C52单片机为核心的学习型红外遥控器,通过测量红外一体化接收头输出信号,并原样地记录其输出脉冲宽度,然后保存在单片机中,最后利用单片定时器中断产生38 kHz载波信号,以软件代替了硬件,节约了资源。
学习型遥控器
22个元件构成的学习型遥控器(附制作过程,电路图)红外学习型遥控器的主要功能是学习,意思是“复制”其他红外遥控器,取而代之。
所谓“复制”,就是复制后的遥控器的所有功能与原遥控器一模一样。
否则,就不能算成功的“复制”。
学习型红外遥控,可以分为两类:以固定码格式学习的遥控器和波形拷贝方式学习的遥控器。
前者,需要收集各种不同种类的遥控器信号,然后进行识别比较,最后再记录。
但是,要实现几乎所有的红外遥控器的成功复制就太难了。
因为,红外遥控器的红外编码格式变化太多。
不过这种学习型遥控器对硬件要求相对简单,处理器的工作频率可以不高,存储容量也较小,其缺点是对未知编码的遥控器无效。
后者主要是把原始遥控器所发出的信号进行完全拷贝,而不管遥控器是什么格式,存储在EEPROM等存储器中。
当发射时,只需将储存器中记录的波形长度还原成原始信号即可。
这种学习型遥控器对MCU的主频要求高,RAM 要求较大,其优点是对任何一种红外遥控器都可以进行学习。
所以,我以第二种方案进行设计。
红外学习遥控器的学习功能在某些应用场合非常有用。
但是,学习遥控器的使用,需要原来的遥控器,没有原来的遥控器,学习功能就无法实现了,这也算一个缺点吧。
所需元器件及材料:编号零件名称数量116MHz晶振12M8单片机插座13M8单片机14存储器插座15SST25VF040存储器16LED灯17红外一体接收头18红外发射二极管190.1μF电容110300Ω电阻311微动按钮812ISP下载插针113万用板1由于使用的SST25VF040存储芯片的封装比较小,所以笔者通过转接板,把SOIC封装转接为DIP封装,方便了后期的制作。
这次制作的焊接工作很简单,都采用了DIP的元器件。
使用绝缘线,根据原理图连接对应引脚即可。
焊接好的作品如图所示。
电路原理电路原理如图4所示。
8个按钮的一端都连接到INT1接口上,这样所有按钮就都可以具有中断功能。
SST存储芯片是串口的,使用SPI接口,因此和M8的SPI接口直接连接即可,它具有512KB大小。
基于STM32控制的万能学习型红外遥控器
设计一个万能学习型遥控器,其具体设计指标要求如下:
①用红外发射管作为系统的红外发射模块。
②用按键来切换学习型红外遥控的学习模式与非学习模式。当用户操作进入非学习模式下是,通过按下发射信号的按钮来控制红外编码信号的发射。
③当用户按下学习键,系统处于学习模式,此时将被学习的红外遥控器对准红外接收头,按下被学习遥控器的按键发射红外信号,系统完成红外编码的捕捉和记录。
④当学习型遥控器处于学习模式时,再按学习键退出学习模式,进入非学习模式状态。
⑤在非学习模式下按下红外发射键,还原红外编码并发送红外信号,实现控制其红外遥控的智能家电。
⑥在此硬件设计时,要尽力做到硬件模块简单方便、性能稳定且易于实现,促使整个系统电路简化。
⑦软件设计流程清晰,且软件程序思维清晰,要做到以最为简单的程序实现系统所需功能。
人们常常会浪费过多时间来寻找控制各种各样家用智能电器遥控器。为了解决人们同时使用众多遥控器的烦恼,于是越来越多的自学习型遥控器也就诞生了。不过现在市场上的红外遥控器,基于成本的考量,绝大部分都是采用455KHz的陶振[2]来驱动,选择以12分频系数,其载波频率约为38KHz,此设计方法也使学习型遥控器的设计变得更加简单。但是现在市面上许多常见的遥控器大多都只能控制几种产品,并不是真正实现“万能”红外遥控器[3]功能。
1.4.3方案的比较和选择
方案一,以单片机(AT89C51)为主控搭建硬件平台系统,所需外围芯片和元器件较为繁多,成本较高。实现所需功能的原理和方法也较为复杂,需有单片机产生38KHz的载波信号,使得单片机的负荷繁重,同时单片机的主板低,捕捉红外信号时由于单片机主频低,误差较大。该方案成本高,编程算法和电路搭建较为复杂,可靠性和后期的扩展性低,所以方案一不适合该设计。方案二,采用ARM架构ARM Cortex-M3的STM32系列的芯片STM32F103C8为该系统的主控,主控内部集成了丰富的资源,且功能强大,搭建后可用ARM内核芯片推出的仿真器J-Link进行在线联调,使得编程更为方便,大大降低了系统软件编程的难度,而且具有成本低、可扩展性强、功耗低、高性能[7]等特点。显而易见选用方案二对系统的后期扩展较为有益,故本设计选用方案二作为系统的设计方案。
基于AVR的通用学习型红外遥控器设计
基于A VR的通用学习型红外遥控器设计张毅(重庆交通大学,机电与汽车工程学院,重庆,400074)摘要:本文基于A VR系列单片机中的Atmel162的通用学习型红外遥控器的设计方案,用来解决生活中各种电器遥控器编码方式的不同,不能交叉使用的不便。
本方案利用单片机来测量红外编码的高低脉冲宽度,并还原相应的红外编码信号,达到学习原遥控器的功能。
本次设计的控制器可有效学习市面上95%以上的遥控器,并且添加了无线通信功能,可以添加进入智能家居系统。
最后利用Altium Designer软件进行电路设计并做出实物,验证了方案的可行性。
关键词:Atmel162;红外遥控器;Altium Designer红外遥控装置因为其结构简单,抗干扰能力强等优点被广泛的用作各种电器的遥控器。
但是伴随着电器的发展,红外遥控编码方式并没有形成统一的制式,这就造成了红外遥控装置不能相互混用这些都给用户的使用带来了很大的不便。
本系统采用价格低廉的红外接收和发射管和单片机等材料,实现对电器的控制,并且可以与主机完成互联通信,接入智能家居系统,从而代替遥控器使用。
1 通用学习型红外遥控器的工作原理整套红外遥控系统一般由编码电路(编码芯片或者单片机)及发射器、载波电路、解码电路(解码芯片或者单片机)和接收器组成。
遥控器发射遥控指令时是将一串二进制数编码后通过载波信号发射出去,而根据周期不同分别将其定义为‘0’或者‘1’。
周期为2*561us 的为‘0’,而周期为4*561us的为‘1’。
红外编码没有一个统一的标准,不同的遥控器就会有不同的编码方式。
比如电视机遥控器采用的按键编码就是由引导码,8位用户码,8位用户反码,8位操作码,8位操作反码组成;但是空调的编码就比较复杂了,不同的空调厂商的编码方式也不同,每个部分都会反应现在空调所处的状态(如:开关、风速、温度、模式、扫风等等)。
本设计设计思路就是不管红外编码方式只将红外编码的脉冲宽度进行测量,然后将高低电平的时间值储存起来,发射的时候再按照采集的时间值恢复脉冲宽度,将其原封不动的发射出去。
学习型红外线遥控器的课程设计报告+[当文网提供]
课程设计报告课程名称:单片机原理及应用设计题目:学习型红外线遥控器的设计系别:通信与控制工程系专业:电子信息工程班级:学生姓名:学号:起止日期:指导教师:教研室主任:摘要当今社会科学技术的发展与日俱增,人们的生活水平也是日益提高,为了减少人的工作量,所以对各种家用电器、电子器件的非人工控制的要求也是越来越高,针对这种情况,设计出一种集成度比较高的控制体系是必然的。
单片机的集成度很高,它具有体积小、质量轻、价格便宜、耗电少等突出特点,尤其耗电少,又可使供电电源体积小、质量轻。
本课程设计介绍了基于单片机的一种学习型万能遥控器的设计与实现,可以对各种红外线遥控器发射的信号进行识别、存储和再现等功能,从而实现对各类家电的控制。
学习型万能遥控器由单片机、红外线接收、红外线发射、显示、存储、按键和欠电压指示等部分组成。
本设计详细介绍了学习型万能遥控器的软硬件设计方法,并给出了具体的各单元电路设计、程序设计及主程序流程图。
在硬件设计中,我们选取STC89C52型号单片机为核心器件,并给出外围电路模块如红外接收模块、红外发射模块、显示模块、以及外部控制模块等组成部分的设计实现。
软件部分采用keil进行C程序设计与编译,并将编译后产生的hex文件通过STC_ISP_V479下载到单片机中,进行调试。
本学习型遥控器采用最小化应用模式设计,电路简单,尤其是通过大量不同遥控码的特征分析,在遥控码的读入时选择了最佳采样间隔,使遥控码的学习成功率大大提高。
关键词:遥控学习;红外解码;单片机控制;红外遥控目录设计要求 (1)前言 (1)1、方案论证 (1)2、基本功能模块设计与说明 (2)2.1.初始化模块 (2)2.2遥控码读入处理模块 (2)2.3遥控码发射处理模块 (3)2.4 主模块 (3)3、调试与操作说明 (4)3.1学习型红外遥控器的电路原理图的设计 (4)3.2 程序的编译及下载 (6)3.3实际电路的测试 (7)4、课程设计心得体会 (8)5、元器件及仪器设备明细 (9)6、参考文献 (10)7、致谢 (11)8、附录 (12)学习型红外遥控器的设计设计要求学习型红外线遥控器要求可以学习不同遥控器的某个按键码功能。
学习型红外线遥控器的设计-覃业辉--外校查重
密级:学号:本科生毕业设计(论文)学习型红外线遥控器的设计学院:专业:班级:学生姓名:指导老师:完成日期:学士学位论文原创性申明本人郑重申明:所呈交的论文(设计)是本人在指导老师的指导下独立进行研究,所取得的研究成果。
除了文中特别加以标注引用的内容外,本论文(设计)不包含任何其他个人或集体已经发表或撰写的成果作品。
对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式表明。
本人完全意识到本申明的法律后果由本人承担。
学位论文作者签名(手写):签字日期:年月日学位论文版权使用授权书本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。
本人授权江西科技学院可以将本论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。
(请在以上相应方框内打“√”)学位论文作者签名(手写):指导老师签名(手写):签字日期:年月日签字日期:年月日摘要红外遥控器是一种常用的家用电器遥控通信设备,具有性能稳定、结构简单、易于实现等特点,在日常生活和工业控制等方面应用十分广泛,一般遥控器使用特定解码芯片,只能识别唯一代码,无法达到多个接收端共用一个遥控器的目的。
本文论述了一个基于AT89S52单片机的学习型红外遥控器的设计与实现,该学习型遥控器硬件部分主要由单片机、发射端和接收端几部分构成,同时外加一个键盘控制电路,软件部分主要分为主程序、红外发射程序和红外接收程序的设计,本系统设计的遥控器能够无线遥控各种家用电器。
关键词:红外遥控;单片机;家电;学习;AbstractInfrared remote control is a commonly used household appliances remote communications equipment, with stable performance , simple structure , easy to implement , etc., in daily life and industrial control and other aspects of a wide range of applications , generally using a particular remote control decoder chip , can only identify a unique code , you can not reach multiple receivers share a remote control purposes.This paper discusses the design and implementation of learning IR remote control based on AT89S52 microcontroller , the learning remote hardware mainly by the microcontroller , the transmitter and receiver of several parts , plus a keyboard while the control circuit , the software part is divided into the main program design , program and infrared receiver infrared emission process , the system can be designed remote control wireless remote control of various appliances.Key Words: Infrared remote control ; SCM ; appliances ; learning ;目录第1章引言 (1)1.1 意义与目的 (1)1.2 发展现状 (1)1.3 研究内容 (2)1.4 研究目标 (2)第2章 MCU选择及系统总体设计 (3)2.1 MCU的选择及特点 (3)2.2 红外协议原理 (4)2.3红外解码原理 (4)2.4 系统方案论证和选择 (6)2.5系统的总体设计 (7)第3章系统硬件电路设计 (8)3.1 单片机最小系统设计 (8)3.2 按键部分的设计 (9)3.3 红外发射接收管模块设计 (9)3.4 硬件原理图 (10)第4章系统软件设计 (11)4.1 主程序设计 (11)4.2 红外接收程序设计 (11)4.3 红外发射程序 (12)第5章系统总体调试 (14)5.1 软件调试方法 (14)5.2 硬件调试方法 (14)5.3 常见的硬件故障 (15)第6章总结与展望 (16)6.1 总结 (16)6.2 展望 (16)参考文献 (17)致谢 (18)第1章引言1.1 意义与目的当前,随着人们的物质文化生活自动化程度逐步提高,每个家庭都有许许多多的家用电器,大多数的家用电器都有配有各自的遥控器,多数遥控器的不兼容使得我们有了很多的遥控器,这样使得我们挑选遥控器进入了纠结。
自学习型红外遥控
SW-PB
SW-PB
SW-PB
SW-PB
SW5
SW6
SW7
SW8
晶振
LCD显示
SW-PB
SW-PB
SW-PB
SW-PB
SW9
SW10
SW11
SW12
SW-PB VCC VCC JP3 1 3 5 7 24C02 REST P1_2 P1_3 2 4 6 8 SW13 R7 5.1K R8 5.1K
SW-PB
复位电路和晶振电路
• 复位电路采用的是上电复位,为了保证系统能够可靠地复位,RST端 的高电平信号必须维持足够长的时间。单片机晶振的作用是为系统提 供基本的时钟信号,晶振提供的时钟频率越高,那么单片机运行速度 就越快。
VCC
C3 X2
C1 10uF REST
+
10pF
Y1 11.0592MHZ
R9 10k
C5 X1 10pF
流程图
•主程序流程图
流程图
• 学习程序流程图
流程图
• 发射程序流程图
•感谢各位老师参加 我的论文答辩!
红外接收电路
X2 X1
P1_1
红外发送电路
C3 X2 10pF D2 LED R10 10k Y1 11.0592MHZ C5 X1 10pF P1_12 R14 10k SW1 P1_4 P1_5 P1_6 P1_7 P1_8 P1_9 P1_10 P1_11 SW2 R11 10k SW3 R12 10k SW4 VCC R13 10k
自学习型红外遥控器设计
指导老师:xxx 工学院 xx级机械设计制造及其自动化 作者:xxx
系统总体方案
外存储电路 A T 8 9 C 5 1 红外接收电路
毕业设计论文_万能遥控器
前言随着电子技术的发展,遥控技术得到了越来越广泛的应用。
遥控技术正在向各个领域渗透,其重要性日见突出。
在家用电器方面,带红外遥控的家用电器得以广泛普及.给人们的生活带来了很大的方便。
但是,在一个家庭中如果遥控器过多,则使用过程容易产生混乱,给使用者造成许多不必要的麻烦。
为了解决这个问题,我们设计一种智能型红外遥控器,利用对各种红外遥控器发射的控制信号进行识别、存储和再现。
也就是说,只需要一个智能遥控器,就可以对多个遥控器的发射信号进行学习和记忆,从而实现对多个电器的遥控。
我们设计的智能型遥控器是基于单片机51的而设计的,利用“89C51”和其外围电路,进行对信息的处理,并进行显示。
本设目录1遥控器的现状和发展2红外发射的优缺点及基本原理3智能遥控器的结构和功能4智能遥控器的硬件电路红外发射电路红外接收电路键盘电路显示电路8155的扩展2864(EEPROM)的扩展5智能遥控器的的软件电路原程序的注释各子程序的剖析5心得体会6主要集成电路7附录设计任务书随着电子技术的发展,带红外遥控的家用电器得以广泛普及.给人们的生活带来了很大的方便。
但是,在一个家庭中如果遥控器过多,则使用过程容易产生混乱,给使用者造成许多不必要的麻烦。
为了解决这个问题,可设计一种智能型红外遥控器,利用对各种红外遥控器发射的控制信号进行识别、存储和再现。
也就是说,只需要一个智能遥控器,就可以对多个遥控器的发射信号进行学习和记忆,从而实现对多个电器的遥控。
一、技术要求1. 能对所设置的内容进行存储,2. 有”学习”和”控制”两种状态,并显示3. 能对电路电源进行检测,电源电压低于一定程度发出警报4. 对于宏定义不做要求。
5. 键盘扫描采用逐行扫描6. 由于EPPROM我们只买到了8K的2864A,存储单元不够。
所以,只能先控制两个电器来表示一下。
7. 由于2864(EPPROM)的存储时间较慢,所以采用先存储到RAM里,在由RAM存到ROM 里。
学习型红外线遥控器项目设计方案
学习型红外线遥控器项目设计方案1.1本设计的研究背景和研究目的随着社会的发展各种家用电器已经进入了千家万户,各式各样、琳琅满目的家用电器,空调、电视、音响系统等传统意义上的家电早已成为普通百姓生活不可或缺的一部分,甚至连投影机、数字机顶盒,电子监控(防盗)系统等新兴电器也正迅速步入现代家庭,我们家里的遥控器越来越多,不同型号的遥控器控制不同的家电。
遥控器,想来大家并不陌生,遥控作为众多现代家电的一种基本控制方式,几乎所有的家电产品都配备了遥控器,甚至现在连电风扇,台灯这样的设备都配备了遥控器。
可是,随着家里的电器越来越多,电器产品的遥控器也越来越多,这就产生比较多的麻烦,日常生活中,很多人都会遇到随手拿错放在茶几上各种遥控器的麻烦,不仅使用起来不方便而且茶几上摆放一堆遥控器也很不好看。
设计出一种具有学习功能的并能代替各种数目繁多的遥控器的学习型红外遥控器成为一种需要。
1.2国外研究现状目前国学习型遥控器大部分采用复制遥控器红外波形的思想,也有部分采用下载存储遥控编码的学习思想。
但是由于采用专用遥控发射芯片,集成度高但成本也高。
现有自主学习型红外遥控器,其核心MCU 主要有以下几种:MCS-51 系列、Microchip PIC16 系列、Winbond W741 系列、Holtek HT48 系列以及ARM(Advanced RISC Machines)系列。
目前国外比较成熟的产品主要有:1、慧居智能电子的HJ-JYWC,它的主要特点为:触屏按键组合输入;具有红外学习功能;具有载波频率识别功能,能准确识别各种复杂的红外代码[2],如图1.2.1所示。
图 1.4 慧居智能电子HJ-JYWC2、BREMAX 公司的NRC-304 网络多功能遥控器,它的主要特点为:联机自学习、脱机自学习两种模式;具有USB 口,通过INTERNET 登陆BREMAX 公司,搜寻并下载相应型号家电的遥控器编码,兼容各种品牌和型号[3],如图 1.5 所示:图 1.5 NRC-304 网络多功能遥控器。
学习型万能红外遥控器
目录摘要错误!未定义书签。
前言错误!未定义书签。
1 概述错误!未定义书签。
1.1 设计目的和意义错误!未定义书签。
1.2学习型万能红外遥控器的发展历程错误!未定义书签。
1.3学习型万能红外遥控器的研究现状错误!未定义书签。
1.4 设计思想错误!未定义书签。
1.5 设计方案错误!未定义书签。
2 红外遥控的原理错误!未定义书签。
2.1 红外遥控系统概述错误!未定义书签。
2.2 红外遥控调制原理错误!未定义书签。
2.3 红外遥控发射原理错误!未定义书签。
2.4 红外遥控接收原理错误!未定义书签。
3系统硬件总体设计错误!未定义书签。
3.1 硬件的选取错误!未定义书签。
3.1.1 芯片资料简介错误!未定义书签。
3.1.2 AT89C2051的功能描述错误!未定义书签。
3.1.3 AT24C64的功能描述错误!未定义书签。
3.1.4 红外线发光二极管错误!未定义书签。
3.1.5 红外一体化接收头错误!未定义书签。
3.2 系统的总体设计错误!未定义书签。
3.3 单片机各引脚功能的分配错误!未定义书签。
3.4 AT89C2051单片机复位电路的设计错误!未定义书签。
3.5 AT89C2051单片机振荡电路的设计错误!未定义书签。
3.6 AT24C64存储电路的设计错误!未定义书签。
3.7 红外接受电路的设计错误!未定义书签。
3.8 红外发送电路的设计错误!未定义书签。
3.9 LED指示电路的设计错误!未定义书签。
3.10 4*4矩阵键盘的设计错误!未定义书签。
4 学习型遥控器的软件设计及其实现错误!未定义书签。
4.1系统主程序流程图错误!未定义书签。
4.2 键号判别程序设计流程错误!未定义书签。
4.3 学习子程序的设计流程错误!未定义书签。
4.4 发射子程序设计流程错误!未定义书签。
4.5 中断流程图错误!未定义书签。
4.6 I2C总线程序错误!未定义书签。
5 红外遥控的调试与仿真错误!未定义书签。
5.1 软件部分的仿真错误!未定义书签。
基于STM32万能学习型红外遥控器设计
【摘要】红外遥控技术在目前市场上众多应用领域得到了较为广泛的运用。
红外遥控技术现已广泛的应用于在家用智能化家电的领域和工业化控制方面。
本系统设计采用嵌入式主控芯片来设计万能学习型红外遥控器,采用ARM Cortex-M3内核的STM32系列的芯片为核心部分,结合红外发射、接收模块电路、信号调制电路,独立键盘构成本系统。
从红外的发射与接收两个方面详细地介绍了红外无线传输原理,红外信号的编码解析、信号调制、信号发射与接收、解调与解码的原理。
本系统实现对不同编码方式(PWM\PPM)的红外信号的捕捉,解码、再生原红外信号,载波并发送红外信号,实现自学习型红外遥控器。
本系统所需功能的实现应用到多种电子产品研发技术,其中主要包含C语言高级语言编程技术、单片机开发应用技术和电子线路板设计技术等相关电子应用技术。
综合多种设计方案考量及其各个方面的因素,最终决定采用高性能、低成本、低功耗的ARM Cortex-M3内核的嵌入式芯片为系统的核心STM32主控芯片来设计,真正实现能对各种红外遥控信号进行捕捉和再生,真正实现万能学习型红外遥控器。
【关键词】STM32;红外遥控;C语言;智能;红外解码;红外编码;Learning infrared remote controlScience and Technology Practising College Fujian Normal University Electronic Information Engineering 120352010037 Li Weixiong Tutor: Wu Yunping[Abstract]Infrared remote control technology on the market at present many application fields has been widely used.Infrared remote control technology has been widely applied in the field of intelligent household appliances and industrial control.This system design USES embedded master control chip to design the universal learning infrared remote control, USES the ARM architecture (M3 STM32 series chip as the core part of the kernel, combined with infrared emission and receiving module circuit, signal modulation circuit, keyboard constitute the system independently.From two aspects of the emission and receiving of infrared in detail introduces the principle of infrared wireless transmission, infrared signal code parsing, modulation, signal transmitting and receiving, signal demodulation and decoding principle.This system realize the different encoding (PWM \ parts per million (PPM) of infrared signal capture, decoding, regeneration of the infrared signal, the carrier and send the infrared signal, realize self learning infrared remote control.The realization of the function of this system needed to apply to a variety of electronic products research and development technology, which mainly contains the C language programming in a high-level language technology, single-chip computer application technology and electronic circuit board design techniques and related electronic application technology.Integrated a variety of design considerations and the various aspects of factors, finally decided to adopt high performance, low cost, low power consumption of the ARM architecture (M3 the kernel of the embedded chip for the system at the core of the STM32 master control chip to design, realize to capture and various kinds of infrared remote control signal regeneration, truly universal learning infrared remote control.[Key Words] STM32;Infrared remote control;c language;Infrared decoding;Infrared remote coding;目录1概述 (3)1.1设计背景 (3)1.2设计目的 (3)1.3设计要求 (3)1.3设计方案选型 (3)1.4.1方案一:采用单片机(A T89C51)设计学习型红外遥控器 (3)1.4.2方案二:用STM32F103C8嵌入式芯片其红外发射接收模块电路构成学习型红外遥控器41.4.3方案的比较和选择 (4)2系统硬件设计 (5)2.1系统的总体设计 (5)2.2 STM32F103C8芯片介绍 (5)2.3 主要元器件介绍 (7)2.3.2 红外一体化接收头VS1838B (7)2.4系统各模块介绍 (8)2.4.1电源电路 (8)2.4.2复位电路 (9)2.4.3时钟电路 (9)2.4.4下载电路 (10)2.4.5 独立键盘电路 (10)2.4.6 红外发射电路 (11)2.4.7 红外接收电路 (12)3软件部分设计 (12)3.1 Keil uVision4 集成开发环境介绍 (12)3.2软件总架构 (13)3.2.1系统主程序流程图 (13)3.2.2主程序程序代码 (14)3.2.3 红外接收模块流程图 (15)3.2.4红外接收模块程序代码 (16)3.2.5 红外发射模块流程图 (17)3.2.6红外发射模块程序代码 (17)4总结 (18)5致谢 (18)参考文献............................................................................................................................... 错误!未定义书签。
(完整word)自学习万能红外遥控模块简介 - ChinaUnix博客-专业IT技术博客
自学习万能红外遥控模块软、硬件设计红外线遥控就是利用波长为0.76~1。
5μm之间的近红外线来传送控制信号的。
红外遥控是目前家用电器中用得较多的遥控方式,在家用电器、室内近距离(小于10米)遥控中得到了广泛的应用。
但各产生的遥控器不能相互兼容。
目前市场上常见的万能遥控器只能对某几种产品进行控制,不是真正的“万能”,而且不能对新上市的产品进行控制。
所以,如何实现对种类繁多得红外家电设备进行控制是本系统必须解决得任务之一。
本模块用单片机对红外遥控器信号接收和转发的方法,由于只关心发射信号波形中的高低电平的宽度,不管其如何编码,所以能实现绝大部分红外设备的遥控。
自学习万能红外遥控模块整体框图如下:本模块主要要实现的功能为:●管理键盘和液晶,用户进行红外遥控器的学习等操作;●学习各种红外设备的编码并记录保存下来;●将学到的红外设备的编码发射出去,实现对红外设备的遥控;●与系统主机进行通讯,执行主机发送过来的命令,实现远程控制。
一.硬件设计1.红外信号的的发射发射部分的主要元件为红外发光二极管。
它实际上是一只特殊的发光二极管,由于其内部材料不同于普通发光二极管,因而在其两端施加一定电压时,它便发出的是红外线而不是可见光。
目前大量使用的红外发光二极管发出的红外线波长为940nm左右。
用遥控脉冲信号调制38kHz方波,然后将已调波放大,驱动红外发光二极管,就可以得到遥发射信号.该部分原理图如下:图中,与非门4011组成振荡电路,通过调整电阻VR3的值可调整调制频率。
SEND脚连接单片机,是信号的输入端。
有些遥控器的载频可能是40kHz,只须稍微加大发射功率仍然可用38kHz载频使其接收电路动作。
2.红外信号的接收和波形测量所有红外遥控器的输出都是用编码后串行数据对38~40kHz的方波进行脉冲幅度调制而产生的。
如果直接对已调波进行测量,由于单片机的指令周期是微秒(μs)级,而已调波的脉宽只有20多μs,会产生很大的误差。
学习型红外遥控器的设计
学习型红外遥控器的设计引言随着现代化科技的不断发展,红外遥控器普及程度越来越广,与此同时,红外遥控器的种类也越来越丰富。
学习型红外遥控器作为一种新颖的遥控器设计,其具有学习和存储多种电器设备功能的特点。
设计一种高效的学习型红外遥控器对于方便我们的日常生活、提高我们的生产效率具有非常重要的意义。
下面将从设计的角度,探讨学习型红外遥控器的原理和设计方案。
设计原理学习型红外遥控器主要通过学习一个电器设备的信号,将其编码存储在一颗存储芯片中。
当需要控制该电器时,遥控器会主动发送出这个编码,以达到控制电器的目的。
整个系统分为两部分:从遥控器发送信号和电器控制器接收信号两个部分。
首先,遥控器通过按键产生不同的编码,这些不同的编码被编码器编码后,再通过红外LED发射出去。
其次,接收部分通过红外接收管接收到发射出去的信号后,再解码还原出原来的信号信息,再发送到电器中控制器进行操作。
整个系统直接的数据传输采用红外线传输,因为红外线传输数据无线,无视遮挡,不会对设备的使用过程产生干扰。
设计方案硬件设计本次学习型红外遥控器的设计方案采用51单片机作为遥控器数据的处理中心,同时利用红外发射管和红外接收管实现红外线无线传输,将不同的遥控器编码进行传输。
其中,遥控器发送端的主要功能包括:•将键盘输入的不同编码进行编码;•将编码发送到红外发射管;•发送系统检测电路的设计。
而电器控制端的主要功能包括:•接收极近距离的红外线;•将红外信号转换成对应的电信号;•控制输出端的执行管脚进行操作。
硬件设计图硬件设计图软件设计硬件的实现上需要配合51单片机进行传输控制,因此,还需要相应的软件进行代码开发。
主要包括以下几点:•确定码库存储的方式;•接收编码的方式;•通过遥控器发送信号的方式;•接收电器的信号,并执行对应的操作。
软件代码编写要考虑到对红外信号的不同解码方法,包括NEC、SIRC等不同的传输标准。
为了方便设计和代码的开发,可以利用市场上现成的红外解码译码库程序进行开发。
智能红外遥控器
摘要在电子化的世界中,红外遥控技术广泛的应用于我们的生活。
市场上的各种家电的红外遥控系统技术成熟、成本低廉,但是,为了避免不同品牌、不同型号的设备之间产生误操作,人们在不同的设备中使用不同的传输规则或者识别码,这就使得各个型号的遥控器都只适用于各自的遥控对象,容易造成实际使用中遥控器多而杂,经常搞混的结果。
本设计要求实现一种智能学习型红外遥控器的实现方案。
本文通过研究红外编解码、红外发射接收、MCU控制、液晶显示等技术,利用单片机对遥控器的发射信号的波形进行测量,然后将测量的数据回放,由于只关心发射信号波形中的高低电平的宽度,不管其如何编码,因此做到了真正的“万能”。
本设计以单片机为主要控制中心,外围电路主要包括接收电路、发射电路、键盘电路、显示电路以及存储电路。
设计中重点及核心部分是通过软件解码来实现对红外信号的自学习,并由单片机控制将学习的信号存储及转发。
关键词:红外遥控;38KHZ载波;自学习;红外接收;红外发送目录一、系统设计 (4)1.1 任务要求 (4)1.2 总体方案介绍 (4)二、方案论证 (5)2.1 学习方式 (5)2.2 按键模块 (6)2.3 显示模块 (6)2.4 红外接收模块 (6)2.5 微控制器选择 (7)三、硬件电路设计 (8)3.1 系统硬件基本组成 (8)3.2 主要模块电路设计 (8)3.2.1键盘和显示电路设计 (8)3.2.2 红外发射电路及其编码 (9)3.2.3红外接收电路 (11)3.2.4 存储电路 (12)3.2.5 单片机控制电路 (13)四、系统软件设计 (14)4.1软件设计 (14)4.1.1主程序流程图................................................................................. 错误!未定义书签。
4.1.2外部中断0中断服务程序框图 (16)五、系统调试 (17)5.1 系统硬件调试 (17)5.1.1 元件的使用 (17)5.1.2 整板测试 (17)5.1.3 上电测试 (17)5.2系统软件调试 (18)5.2.1按键与显示模块调试 (18)5.2.2接收模块调试 (18)5.2.3发射模块调试 (18)5. 3操作步骤及方法 (18)5.4设计过程遇到的问题、原因及解决方法 (19)5.5调试小结 (19)六、性能测试 (20)6.1 测试所使用仪器 (20)6.2 测试结果 (20)6.3 结果分析 (21)七、设计感想与体会 (22)参考文献 (22)附录 (23)附录1 电路原理图 (23)附录2 电路PCB图 (23)附录3 程序清单 (24)一、系统设计1.1 任务要求本设计要求实现一种智能学习型红外遥控器的实现方案,主要内容包括:(1)研究红外遥控器的遥控方法与原理。
学习型红外遥控器的设计
学习型红外遥控器的设计学习型红外遥控器是一种能够学习其他红外遥控器的信号,并且能够模拟出相应信号的智能遥控器。
其设计主要分为硬件设计和软件设计两个方面。
硬件设计方面,需要选择合适的控制芯片、红外传感器和其他电子元器件。
可以选择一些成熟的芯片方案,如STC12C5A60S2、AT89C51等,以及高灵敏度、具有过滤功能的红外传感器。
其他电子元器件如电容、电阻等也需要选择质量稳定、工作性能优良的原件,以保证整个电路的可靠性和稳定性。
软件设计方面,需要编写控制芯片的程序,实现信号的学习和发送,以及其他功能的实现。
其主要流程如下:1. 通过红外传感器采集到信号,将采集到的信号存储在控制芯片的存储器中。
2. 通过按键操作,将存储在存储器中的信号发送出去。
3. 实现其他功能,如定时器、闹钟、亮度调节等。
为了实现信号的学习和发送,需要编写相关的程序,主要包括如下几个部分:1. 红外信号采集:采用红外传感器将红外信号转换为可读取的电信号,并将信号存储在存储器中。
2. 学习信号:将用户能够操作的其他遥控器的信号利用红外传感器采集,并通过控制芯片存储在存储器中。
3. 信号发送:通过控制芯片将存储在存储器中的信号转换为红外信号并发送出去。
4. 其他功能实现:通过编写相应的程序,实现定时器、闹钟、亮度调节等功能。
以上是学习型红外遥控器的设计流程,其中硬件设计和软件设计是相互独立的,但又息息相关。
硬件设计决定了遥控器的性能、稳定性和可靠性,而软件设计则直接决定了遥控器的功能和实际运用中的表现。
综上,学习型红外遥控器是一种智能化的遥控器,通过硬件设计和软件设计的完美结合,实现了信号的学习和发送以及其他多种功能,为人们的生活和工作带来了极大的便利和舒适。
学习型红外遥控器的设计
相应的汇编代码:使用的单片机是:STC11F08XELastKey_8bit EQU 40HNowKey_8bit EQU 41HElec_Level_8bit EQU 42HLevelDown_8bit EQU 43H ;-;FLAG_T0 BIT 00HKEY_F_VALUE1 EQU 21H ;存放标志位的空间,用于查询标志位时处理只用KEY_F_VALUE2 EQU 22H;存放标志位的空间,用于查询标志位时处理只用KEY_L_F bit 01H ;进入学习后,作为判断是否跳出学习的标志位key_machine BIT 02HFLAG_LEARNING_Y bit 03HMACHINE_NO EQU 3CHJB_F_NO EQU 44H ;用于第一个8个数据是否检测完毕;初值设为8JB_F_TOTAL EQU 45H;用于记录标志位查询的个数ADDRH_FIRST EQU 46H ;EEPROM的首地址高位ADDRL_FIRST EQU 47H ;EEPROM的首地址低位F_L_1 BIT 04HRESULT_F EQU 48H;用于存放标志位处理后的结果KEY_NUMBER EQU 49H;进入学习后,学习的键号F_LEARNING BIT 07HF_KEY2 BIT 08HF_KEY3 BIT 09HF_KEY4 BIT 0AHF_KEY5 BIT 0BHF_KEY6 BIT 0CHF_KEY7 BIT 0DHF_KEY8 BIT 0EHF_KEY9 BIT 0FHF_KEYA BIT 10HF_KEYB BIT 11HF_KEYC BIT 12HF_KEYD BIT 13HF_KEYE BIT 14HF_KEYF BIT 15Horg 0000HAJMP MAINORG 000BHAJMP TT0ORG 0030HMAIN: MOV TMOD,#01HMOV TH0,#0D8HMOV TL0,#0F0HMOV 20H,#0MOV 21H,#0MOV 22H,#0MOV KEY_NUMBER,#0MOV ADDRH_FIRST,#0MOV ADDRL_FIRST,#0MOV MACHINE_NO,#1MOV LastKey_8bit,#0FFHMOV Elec_Level_8bit,#0FFHMOV SP,#30HSETB ET0SETB EASETB TR0LCALL KEY_INTIREGULATION: LCALL GETNOWKEYLCALL UPDATE_KEY_ESTLCALL KEY_DONE; LCALL KEY_FUNCTIONLCALL DISPWAIT_10MS: JNB FLAG_T0,WAIT_10MSCLR FLAG_T0AJMP REGULATION;================================================ TT0:SETB FLAG_T0MOV TH0,#0D8HMOV TL0,#0F0HRETI;=========================当按键生效时讲对应按键的标志位置1 KEY_DONE:MOV A,LevelDown_8bitCJNE A,#00H,KEY_0LJMP LOOP_OUTKEY_0: CJNE A,#11H,KEY_1SETB KEY_MACHINEMOV LevelDown_8bit,#00HLJMP LOOP_OUTKEY_1: CJNE A,#21H,KEY_2SETB F_L_1MOV LevelDown_8bit,#00HLJMP LOOP_OUTKEY_2: CJNE A,#41H,KEY_3SETB F_KEY2MOV LevelDown_8bit,#00HLJMP LOOP_OUTKEY_3: CJNE A,#81H,KEY_4SETB F_KEY3MOV LevelDown_8bit,#00HLJMP LOOP_OUTKEY_4: CJNE A,#12H,KEY_5SETB F_KEY4MOV LevelDown_8bit,#00HLJMP LOOP_OUTKEY_5: CJNE A,#22H,KEY_6SETB F_KEY5MOV LevelDown_8bit,#00HLJMP LOOP_OUTKEY_6: CJNE A,#42H,KEY_7SETB F_KEY6MOV LevelDown_8bit,#00HLJMP LOOP_OUTKEY_7: CJNE A,#82H,KEY_8SETB F_KEY7MOV LevelDown_8bit,#00HLJMP LOOP_OUTKEY_8: CJNE A,#14H,KEY_9SETB F_KEY8MOV LevelDown_8bit,#00HLJMP LOOP_OUTKEY_9: CJNE A,#24H,KEY_ASETB F_KEY9MOV LevelDown_8bit,#00HLJMP LOOP_OUTKEY_A: CJNE A,#44H,KEY_BSETB F_KEYAMOV LevelDown_8bit,#00HLJMP LOOP_OUTKEY_B: CJNE A,#84H,KEY_CSETB F_KEYBMOV LevelDown_8bit,#00HLJMP LOOP_OUTKEY_C: CJNE A,#18H,KEY_DSETB F_KEYCMOV LevelDown_8bit,#00HLJMP LOOP_OUTKEY_D: CJNE A,#28H,KEY_ESETB F_KEYDMOV LevelDown_8bit,#00HLJMP LOOP_OUTKEY_E: CJNE A,#48H,KEY_FSETB F_KEYEMOV LevelDown_8bit,#00HLJMP LOOP_OUTKEY_F: CJNE A,#88H,LOOP_OUTSETB F_KEYFMOV LevelDown_8bit,#00HLOOP_OUT: RET;----------------------根据具体硬件获取程序不同;获取现在电平到NowKey_8bitGETNOWKEY:PUSH ACCMOV A,#0F0HMOV P1,AMOV A,P1ANL A,#0F0HMOV B,AMOV A,#0FHMOV P1,AMOV A,P1ANL A,#0FHORL A,BMOV NowKey_8bit,APOP ACCRET;-----------------------------KEY_INTI: MOV LastKey_8bit,#00HMOV NowKey_8bit,#00HMOV LevelDown_8bit,#00HRET;-----------------------------UPDATE_KEY_EST: MOV A,NowKey_8bit ;LastKey_8bit,NowKey_8bit同与XRL A,LastKey_8bitCPL AMOV B,A ;相同位存于B ;就是同或MOV A,NowKey_8bit ;更新旧键值MOV LastKey_8bit,AMOV NowKey_8bit,AMOV A,LastKey_8bitXRL A,Elec_Level_8bitANL A,B ;得到按键有效变化的按键位MOV B,A ;存储变化键位ANL A,Elec_Level_8bit ;取得变化键原值CPL AANL A,B ;取得变化键变化后值;;---------------下沿MOV A,B ;-;ANL A,Elec_Level_8bit ;-;ORL A,LevelDown_8bit ;-;MOV LevelDown_8bit,A ;-;;-------------------------MOV A,Elec_Level_8bit ;变化键位与Elec_Level_8bit异或得到按键变化后所有按键当前有效状态ANL A,BMOV NowKey_8bit,A ;NowKey_8bit作临时存储用MOV A,Elec_Level_8bitORL A,BCPL AORL A,NowKey_8bit ;NowKey_8bit作临时存储用CPL AMOV Elec_Level_8bit,ARETURN_KEY_EST: RET;==========================对按键的功能进行分配KEY_FUNCTION:PUSH ACCPUSH PSWMOV PSW,#10HJNB KEY_MACHINE, TO_LEARNINGCLR KEY_MACHINEMOV A,MACHINE_NOCJNE A,#04H,LOOP_01MOV MACHINE_NO,#01HLJMP OUT_KEY_FUNCTIONLOOP_01: INC MACHINE_NOLJMP OUT_KEY_FUNCTIONTO_LEARNING: JNB F_L_1,GOTO_EMOT_INFCLR F_L_1CPL KEY_L_F ;这里作为检测此次按键是进入学习还是退出学习;=1是进入学习jnb KEY_L_F,GOTO_EMOT_INFLCALL LEARNINGLJMP OUT_KEY_FUNCTIONGOTO_EMOT_INF:CLR EX1;此时进入发射状态,关闭外中断1,由于外中断0必须在中断1产生后才能产生,;而外中断0还用于唤醒单片机之用LCALL EMOTE_INFOUT_KEY_FUNCTION:POP PSWPOP ACCRET;==========================学习子程序LEARNING: MOV 20H,#0MOV 21H,#0MOV 22H,#0MOV LastKey_8bit,#0FFHMOV Elec_Level_8bit,#0FFHLCALL KEY_INTILCALL GETNOWKEYLCALL UPDATE_KEY_ESTLCALL KEY_DONELCALL DISPJB key_machine,KEY_MACHINE_NOUSEJNB F_L_1,KEEP_LEARNINGCLR F_L_1CPL KEY_L_F ;这里作为检测此次按键是进入学习还是退出学习;=1是进入学习JNB KEY_L_F,OUT_LEARNINGCPL KEY_L_FJNB KEY_L_F,OUT_LEARNINGLJMP KEEP_LEARNINGKEY_MACHINE_NOUSE:CLR key_machineWAIT_10MS_L: JNB FLAG_T0,WAIT_10MS_LCLR FLAG_T0AJMP LEARNINGKEEP_LEARNING:LCALL KEY_VALUE_DONE;对标志位的值进行处理,使其用于检查学习具体那一个按键;类似于按键扫描jnb FLAG_LEARNING_Y,WAIT_10MS_L;判断是否有学习按键按下,有的继续学习,;没有则退出后继续判断那个需要学习的按键clr FLAG_LEARNING_Y ;在每次判断之后,需立即清除相应的标志位LCALL ADDR_GETLCALL LEARN_BEGINLCALL RECIEVEINGLJMP WAIT_10MS_LOUT_LEARNING: CLR key_machineRET;===========================单个数码管静态显示DISP: MOV A,MACHINE_NOMOV DPTR,#T_ABMOVC A,@A+DPTRMOV P0,ARETT_AB:DB 3FH,06H,5BH,4FH,66H,6DH,7DH;========================红外发射子程序EMOTE_INF:RET;=============学习初始化LEARN_BEGIN:RET;=============接收解码RECIEVEING:AJMP $RET;============= 地址获取ADDR_GET:MOV A,MACHINE_NODEC AMOV B,#2MUL ABMOV DPTR,#T_GET_ADDRMOVC A,@A+DPTRMOV ADDRH_FIRST,AMOV ADDRL_FIRST,#00HMOV A,KEY_NUMBERMOV KEY_NUMBER,#0MOV B,#2MUL ABADD A,ADDRH_FIRSTMOV ADDRH_FIRST,ARETT_GET_ADDR:DB 00H,00H,1CH,00H,38H,00H,54H,00H ;==============对标志位的值进行处理KEY_VALUE_DONE:MOV JB_F_NO,#9MOV JB_F_TOTAL,#0KEY_VALUE_DONE1: DJNZ JB_F_NO,NEXT_JBMOV JB_F_NO,#1LJMP NEXT_6BITNEXT_JB: MOV A,JB_F_TOTALMOV DPTR,#TAB_DOINGMOVC A,@A+DPTRANL A,KEY_F_VALUE1MOV RESULT_F,Amov A,RESULT_FJZ inc_totalSETB FLAG_LEARNING_YMOV RESULT_F,#0MOV key_number,JB_F_TOTALLJMP OUT_KEY_VALUE_DONE inc_total: INC JB_F_TOTALLJMP KEY_VALUE_DONE1NEXT_6BIT: MOV A,JB_F_TOTALCJNE A,#0EH,GOING_ON;SETB FLAG_LEARNING_YLJMP OUT_KEY_VALUE_DONEGOING_ON: MOV A,JB_F_TOTALMOV DPTR,#TAB_DOINGMOVC A,@A+DPTRANL A,KEY_F_VALUE2MOV RESULT_F,AJZ INC_TOTAL2SETB FLAG_LEARNING_YMOV KEY_F_VALUE2,#0MOV RESULT_F,#0MOV KEY_NUMBER,JB_F_TOTALLJMP OUT_KEY_VALUE_DONEINC_TOTAL2:INC JB_F_TOTALLJMP KEY_VALUE_DONE1OUT_KEY_VALUE_DONE:RETTAB_DOING:DB 01H,02H,04H,08H,10H,20H,40H,80H,01H,02H,04H,08H,10H,20H,40H,80H。
红外学习型遥控器的设计
河南农业大学本科生毕业论文题目红外学习型遥控器的设计学院理学院专业班级08级信安一班学生姓名陈晨指导教师贾树恒撰写日期:2012年5月22日指导教师评语(主要评价论文的工作量、试验数据的可靠性、论文的主要内容与特点、写作水平等):论文的工作量:试验数据的可靠性:论文的主要内容与特点、写作水平:签名:2012年5月22日答辩委员会评语及论文成绩(主要评价论文的性质、难度、质量、综合训练、答辩情况、不足等。
评定论文成绩):论文的性质、难度、质量:学生的综合训练、答辩情况、不足等:论文成绩:主任委员签名:2012年5月28日红外学习型遥控器的设计陈晨摘要随着社会的发展、科技的进步以及人们生活水平的逐步提高,各种方便于生活的遥控系统开始进入了人们的生活。
传统的遥控器采用专用的遥控编码及解码集成电路,这种方法虽然制作简单、容易,但由于功能键数及功能受到特定的限制,只实用于某一专用电器产品的应用,应用范围受到限制。
而采用单片机进行遥控系统的应用设计,具有编程灵活多样、操作码个数可随便设定等优点。
本设计以单片机为核心设计一种红外学习型遥控器,可以对基于NEC红外协议的红外线遥控器发射的信号进行识别、存储和再现等功能,从而实现对各类家用电器的控制。
红外学习型遥控器由单片机、红外线接收、红外线发射、显示、存储、按键和电源等部分组成。
本设计详细介绍了红外学习型遥控器的软硬件设计方法,并给出了具体的各单元电路设计、程序设计及主程序流程图。
关键词:单片机;红外遥控;中断;学习型Design of IR Learning Remote ControlerCHEN ChenAbstractWith the development of our society and the gradual improvement of science and technology, various kinds of help remote control systems have began to enter people’s life. The traditional remote controllers adopt special remote control code and decode integrated circuits, though this kind of method is simply and easily, it is only the practical application of some certain special electric equipments because of the counted functional keys is counted and the restricted function, so the range of application is limited. But the remote controllers which adopt the microprocessors have many advantages such as flexible operating and unceremonious manipulative keys.This is to design an intelligent infrared remote focusing on single chip. It can distinguish, store and recurrence to signals that all kinds of infrared remote launched .Thereby, the control of all household electrical appliances can be realized. The intelligent infrared remote is made up of singe clip, infrared receiving, infrared launching, displaying, storing, keys, power supply, etc.This design introduced detailedly the soft and hard designing methods of intelligent infrared remote and gave the details of circuit design, procedure design and main procedure flow chart of every unit.Keywords: Single chip microcomputer; Infrared remote control; Interrupt; The learning目录1绪论 (1)1.1选题的意义 (1)1.2设计思想 (2)1.3设计重点与难点 (2)2 硬件的选取 (3)2.1单片机 (3)2.1.1简介 (3)2.1.2主要功能特性 (3)2.1.3引脚介绍 (4)2.1.4STC89C52RC单片机的工作模式 (6)2.1.5定时器/计数器 (6)2.2电源L7805稳压器概述 (8)2.3存储器 (9)2.3.1AT24C02串行E2PROM的概述 (9)2.3.2AT24C02串行E2PROM的特性 (9)2.4红外接收头 (10)2.4.1NB0038的概述 (10)2.4.2NB0038的特性 (10)3 系统组成设计 (11)4 各单元电路设计 (12)4.1单片机最小系统 (12)4.1.1复位电路 (12)4.1.2CPU时钟电路 (12)4.1.3管脚应用 (13)4.2键盘电路 (13)4.2.1键盘与单片机的接口 (13)4.2.2键连击现象的克服和处理 (14)4.3红外发射电路 (14)4.4红外接收电路 (15)4.4.1红外接收原理 (15)4.5存储器电路 (17)4.5.124C02引脚说明 (17)4.5.2单片机与24C02的接口 (17)4.6指示灯电路 (17)4.7电源电路 (18)5 程序设计 (19)5.1主程序流程图 (19)5.2键号判别程序设计 (20)5.3红外接收程序设计 (21)5.4红外发射程序设计 (22)6 程序源代码 (23)6.1按键扫描源码见附录A (23)6.2I2C总线程序 (23)6.2.1位传输 (23)6.2.2数据传输的字节格式 (23)6.2.3I2C数据传输协议 (23)6.3红外接收源码见附录B (24)6.4红外发射源码见附录C (24)7 系统调试 (25)7.1软件调试 (25)7.2硬件调试 (26)8 调试中遇到的问题和解决方法 (29)8.1硬件部分 (29)8.1.1单片机的选取 (29)8.1.2功能切换键的设置 (29)8.1.3AT24C02的焊接 (29)8.2软件部分 (29)8.2.1红外发射部分 (29)8.2.2中断部分 (29)8.2.3定时器0模式部分 (30)结论 (31)参考文献 (32)附录A (33)附录B (34)附录C (36)附录D (38)附录E (39)致谢 (40)1绪论1.1选题的意义上世纪八十年代初,日本率先在电视产品中使用了红外遥控技术,使用集成发射芯片来实现遥控码的发射,如东芝TC9012,飞利浦SAA3010 等,它的主要特点是:遥控器内预置固定编码,一只遥控器只能控制单一型号的电器。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
目 录第1章绪论 (1)1.1 选题的目的意义 (1)1.2 红外学习研究现状 (2)1.3 本文研究内容 (3)第2章红外遥控学习方案设计 (5)2.1 设计目标及要求 (5)2.2 红外遥控方案设计 (6)第3章红外遥控解码学习 (10)3.1 基本原理 (10)3.1.1 红外接收 (10)3.1.2 ISP技术 (10)3.2 红外接收解码装置设计 (11)3.2.1 RS232串口红外接收板 (11)3.2.2 带液晶显示的红外接收板 (12)3.2.3 制作遥控矩阵表 (13)3.3 装置性能检测 (15)3.3.1 红外干扰测试 (15)3.3.2 红外解码测试 (17)第4章红外遥控编码还原 (19)4.1 基本原理 (19)4.1.1 红外发射 (19)4.1.2 红外编码 (19)4.1.3 声卡采样 (22)4.2 红外编码发射装置设计 (23)4.3 装置性能检测 (25)4.3.1 红外编码还原测试 (25)4.3.2 红外发射距离测试 (27)第5章万能学习型红外遥控器实现 (28)5.1 基本原理 (28)5.1.1 触屏校准 (28)5.1.2 彩屏显示 (30)5.2 万能学习型遥控器实现 (31)5.2.1 16位RGB图片压缩 (31)5.2.2 遥控仿真面板制作 (33)5.2.3 红外编码还原实现: (34)5.3 系统性能检测 (36)第六章总结展望 (38)6.1 总结 (38)6.2 展望 (39)参考文献 (40)第1章绪论1.1 选题的目的意义上世纪八十年代初,日本率先在电视产品中使用了红外遥控技术,使用集成发射芯片来实现遥控码的发射,如东芝TC9012,飞利浦SAA3010等,它的主要特点是:遥控器内预置固定编码,一只遥控器只能控制单一型号的电器[1]。
如图1.1所示:图1.1 遥控单一种类电器的遥控器随着电子技术的发展,家用电器越来越普遍,人们希望以一只遥控器遥控所有家用电器,多用遥控器产生了。
它的主要特点是: 遥控器内预置多套编码,可供用户选择,如图1.2所示:图1.2 可遥控多种家用电器的遥控器如今,随着嵌入式的广泛应用,部分厂商推出了具备红外学习的遥控器,它的主要特点是:遥控器内置一个动态编码库,具备红外学习功能,可由用户自主录入编码,如图1.3所示:图1.3 具备学习功能的遥控器通过对具备红外学习功能的遥控器进行市场调查,本文发现:国内红外遥控编码学习技术虽比较成熟,但产品化程度较低,市场推广不够,主要原因在于设计者对用户需求的调查不够全面,以致产品不够实用,性价比较低。
从用户操作方便实用的角度出发,本文自主设计具备红外学习、彩屏虚拟遥控界面的万能学习型红外遥控器,借此促进红外遥控学习技术在国内市场的产品化推广。
1.2 红外学习研究现状现有自主学习型红外遥控器,其核心MCU主要有以下几种:MCS-51系列、Microchip PIC16系列、Winbond W741系列、Holtek HT48系列以及ARM(Advanced RISC Machines)系列。
目前国内外比较成熟的产品主要有:1、上海慧居智能电子的HJ-JYWC,它的主要特点为:触屏按键组合输入;具有红外学习功能;具有载波频率识别功能,能准确识别各种复杂的红外代码[2],如图1.4所示:图1.4 上海慧居智能电子HJ-JYWC2、BREMAX公司的NRC-304网络多功能遥控器,它的主要特点为:联机自学习、脱机自学习两种模式;具有USB口,通过INTERNET登陆BREMAX公司网站,搜寻并下载相应型号家电的遥控器编码,兼容各种品牌和型号[3],如图1.5所示:图1.5 NRC-304网络多功能遥控器3、Sunwave公司的SRC—1600,它的主要特点为:具有巨集设定功能,单一按键巨集设定可记忆多达60个指令;具备红外学习功能,具有USB接口,可预设遥控编码和升级系统[4],如图1.6所示:图1.6 SRC—16004、罗技Harmony 1100,它的主要特点为:黑色铝合金外壳,3.5英寸的触屏;用户可以根据具体情况添加或者删除屏幕上的功能键;设备能通过USB连机,获取罗技在线数据库配置文件,如图1.7所示:图1.7 罗技1100以上产品对于对于电视、音响等使用专用的遥控芯片的家电遥控器(内置NEC、飞利浦、东芝、或夏普等芯片),学习比较容易,但类似空调的红外设备(同一按键编码与该按键按下次数和系统状态相关),学习效果欠佳,为此本文设计采用电脑辅助解码提高红外学习的准确度。
1.3 本文研究内容本文设计的万能学习型红外遥控器要求在外观和功能上替代现有遥控器,涉及到红外编解码、红外发射接收、MCU控制、触屏显示、串口通信等技术,需要完成的研究内容主要包括:1、红外编码协议的学习2、单片机红外解码的软硬件实现3、电脑红外解码辅助分析4、单片机控制液晶屏显示字符图像5、单片机控制触屏操作6、单片机与PC串口通信。
对照上述研究内容,本文的章节安排如下:第1章:绪论,简要介绍红外遥控器的发展,说明选题的目的和意义;通过产品介绍当前国内外关于红外学习技术的研究现状。
第2章:学习型遥控器方案设计,介绍了系统设计需要完成的功能指标和技术指标,给出了系统设计的方案以及主要器件的选型。
第3章:红外遥控解码学习,简要介绍了红外接收和单片机中断控制的原理,设计了两种红外接收解码装置,完成了红外解码学习的功能。
第4章:红外遥控编码还原,简要介绍了红外发射、编码协议和声卡采样的原理,设计了基于STC89C52RC的红外编码发射装置,完成了红外编码还原的功能。
第5章:万能学习型红外遥控器实现,简要介绍了触屏校正、彩屏显示的原理, 综合第二章、第三章的设计,新增了触屏显示操作功能,制作了万能学习型红外遥控器。
第6章:结论,总结了本文的工作,指出了不足。
第2章红外遥控学习方案设计2.1 设计目标及要求本文设计的万能学习型红外遥控器要求能够实现红外编码学习和还原,其功能指标如表2.1所示:表2.1 功能指标表功能指标 重要程度1 红外编解码 ★★★★★★2 红外发射接收 ★★★★★3 遥控编码表制作★★★★4 彩屏显示 ★★★5 按键触屏操作 ★★6 串口通信 ★表2.1列举了六个主要功能指标,其中红外编解码、红外发射接受、彩屏显示、按键操作均是从实用角度考虑设置的,遥控编码表和串口通信是从红外学习角度设计的。
在系统功能实现的基础上,系统性能的优异需要通过设计指标来衡量,具体如表2.2所示:表2.2 设计指标表设计指标 预期1 解码类型 RC-5协议2 解码准确率 >95%3 红外发射距离 >8米4 载波发射频率 38KHZ±1KHz5 编码还原误差 1ms/T6 触屏偏移量 <8象素7 彩屏颜色种类 >8种8 虚拟按键数目 >36个表2.2列举了八个方面的设计指标,其中有硬件选型决定的有彩屏颜色种类,其余均由软件编程决定。
2.2 红外遥控方案设计基于功能,系统设计为三个单元:1、遥控编码表制作单元;2、遥控编码表实现单元;3、遥控编码表检测单元。
三个单元属于递进关系,如图2.1所示:图2.1 三大功能单元关系示意图1、遥控编码表制作遥控编码表制作分为外观提取和编码提取两个部分,该单元设计如图2.2所示:图2.2 遥控编码表制作单元结构图对照图2.2,外观提取通过摄像头采集图像,通过PC处理,分离出按键图标;编码提取通过红外接收头接收,送至单片机解码,对于较为复杂的编码,也可以通过PC 辅助分析波形,进行解码。
最终制作的遥控编码表包括:1、遥控器按键外观信息;2、遥控编码格式;3、按键遥控代码表。
2、遥控编码表实现遥控编码表实现分为外观和功能两个部分该单元设计如图2.3所示:图2.3 遥控编码表实现单元结构图对照图 2.3,外观虚拟采用触屏液晶,还原原有遥控器按键图像;功能模拟采用微处理器,通过程序控制发射红外信号。
3、遥控编码表检测遥控编码表检测分为基于内容和基于功能的两种方法,该单元的设计如图 2.4所示:图2.4 遥控编码表检测单元结构图对照图2.4,从设计角度考虑,可采用基于内容的检测方法,解析红外编码,检测结果以字符型显示编码格式;从用户的角度考虑,可采用基于功能的检测方法,采用现有设备(如电视、空调)直接接收红外信号,检测设备是否正常工作,具有一定的容错量。
为配合硬件实现功能设计,系统实现和调试分三个制作的进行,即:1、基础制作:红外接收解码装置,2、中级制作:红外编码发射装置,3、高级制作:万能学习型遥控器,如图2.5所示:图2.5 系统功能硬件实现将以上设计集中到一起,模块化处理,如表2.3所示:表2.3 系统模块功能定义模块 功能说明1 IR_RECIVEandSEND 红外发射接收模块2 74LS20_LED 发光二极管驱动模块(高低电平均可指示)3 MCU_POWER 单片机供电模块(MAX:50ma)4 LCM_POWER 彩屏(带触摸)供电模块(MAX:60ma)5 WAVE2PC 电脑声卡信号采集模块6 LCM176220 LCM 真彩屏带触摸7 MCU0_IR 单片机0 红外编码发射模块8 MCU1_LCM 单片机1 遥控操作模块(LCM 模块的显示和触屏、键盘操作)9 MCU2_PC 单片机2 遥控电脑模块(主解码验证,配合软件串口遥控pc)10 IR_KEY 功能键盘(含上下左右和确定键共五个)其中主要器材选型如表2.4所示:表2.4 主要器材选型表器件 实物图单片机:AT89S52(实际制作以STC89C52RC代替,STC89C52RC与AT89S52引脚兼容)仿真器:RZ51开发板仿真芯片:SST89E516RD触屏:2.0inch 176*220LCD驱动芯片:R61503U触屏芯片:ET2046红外接收头:SM0038第3章红外遥控解码学习如方案设计所述,制作红外接收解码装置,该装置至少具有面向用户和设计者的两种检测方法,能够完成采用RC-5编码协议遥控器(SAA3010)的红外接收和解码,要求基于用户的检测方法简单直观,基于设计者的检测能准确显示解码数据格式。
3.1 基本原理3.1.1 红外接收接收部分的红外接收管是一种光敏二极管。
最近几年不论是业余制作还是正式产品,大多都采用成品红外接收头。
成品红外接收头的封装大致有两种,如图 3.1所示:图3.1 常用红外一体化红外接收头成品红外接收头均有三只引脚,即VDD(5V)、GND和OUT。
当红外接收头接收到38KHZ红外载波引脚OUT为低电平,否则为高电平(5V),供单片机查询。
红外遥控常用的载波频率为38kHz,它是由专用编码芯片的晶振(一般455kHz)12分频得到的。