10、学习型红外遥控器的设计

合集下载

学习型红外遥控器

学习型红外遥控器

目录摘要 (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载波信号,以软件代替了硬件,节约了资源。

1mjt-学习型遥控器的设计及实现

1mjt-学习型遥控器的设计及实现

学习型遥控器的设计及实现本文介绍了一种基于EU_IR_IC专用红外线学习芯片的学习型遥控器,并对其工作原理及软、硬件的设计和实现方法进行了详细的阐述。

关键词:学习型遥控器;红外遥控;宽频载波;自动识别。

引言远程控制技术日渐流行,远程控制家用电器成为一种需求。

特别是一些特定场所的电器的远程控制如移动/电信/联通的基站的空调实现远程管理,可以节约大量的人力成本。

还有象学校教室的电视的集中管理都需要远程来控制。

而现有的家用电器通常都是红外接口。

要把远程信号转成红外信号才可能控制现有的家用电器。

本文介绍了一种基于专用红外芯片的学习型遥控器,以EU_IR_IC专用红外芯片为核心,通过测量并记录红外遥控信号,再生遥控信号来实现学习型遥控器。

与现在流行的一些方案区别,可适应27K-75K的不同载波频率。

各种制式可学习现有市面99.9%的遥控信号。

EU_IR_IC专用红外学习型遥控芯片介绍EU_IR_IC专用红外学习型遥控芯片,是重庆易用科技公司开发的一款专用红外学习型遥控芯片。

主要特点如下:适应性强:可学习27K-75K的不同载波频率红外信号。

能学习市场99.9%的遥控器信号使用方便: 全双工UART用户接口,波特率可设。

指令简单:只需二条指令即可控制。

宽电压:3V-5.5V。

电路简单:外接元件少。

引脚及封装图如下:学习型遥控器的硬件设计及实现设计原理图如上图所示EU_IR_IC的16脚接一只三极管推动红外发送.接收信号接EU_IR_IC的14脚红外学习接收电路。

EU_IR_IC的27/28脚接24Cxx的EEPROM。

根据按键的多少决定每个按键用32B的空间。

用户的MCU通过UART串口连接。

学习型遥控器的软件设计及实现用户单片机通过UART与EU_IR_IC通信。

默波特率是9600bps,8位数据位,一个停止位。

一共二条指令Sxxx,学习指令:学习一个按键并记录到xxx位置,xxx为000-999的数字.Fxxx发送指令,将xxx的红外指令发送出去, xxx为000-999的数字.。

学习型遥控器

学习型遥控器

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大小。

低成本学习型红外遥控器的设计

低成本学习型红外遥控器的设计

低压电器(2009№22)现代建筑电气篇・智能家居・高恭娴(1961—),女,高级工程师,副教授,从事电力电子产品设计工作。

低成本学习型红外遥控器的设计高恭娴(南京信息职业技术学院,江苏南京 210016)摘 要:提出了一种用于智能家居的低成本学习型遥控器解决方案。

利用被控设备自备的红外接收器,无需内置任何被控设备的红外控制指令集,采用脉宽测量与模仿可完全实现自动学习的功能。

同时还对测量数据进行了编码压缩,用软件模拟38kHz 载波信号的发送,节省了数据存储空间和设计成本。

结果表明,该设计价格低廉,使用方便,完全具备自学习功能,可以代替各种遥控器实现智能家居遥控器一体化的要求。

关键词:红外遥控;载频;编码状态转换;自学习功能中图分类号:TP274.2 文献标识码:B 文章编号:100125531(2009)2220024203D esi gn of Self 2L earn i n g I nfrared Con troller W ith L ow CostGAO Gongxian(Nanjing College of I nf or mati on Technol ogy,Nanjing 210016,China ) Abstract:A s oluti on of self 2learning infrared contr oller for intelligent household with l ow costwas put for ward .It made use of infrared receivers that was put inside contr olled device without any built 2in infrared instructi on set of contr olled device,and use pulse width measurement and i m itati on t o realize self 2learning functi on comp letely .A t the same ti m e,the measured data was encoded and comp ressed,and s oft w are was used t o si m ulate the send of 38kHz carrier signal which save the data st orage and the design cost .Results showed that the infrared contr oller had l ow cost,easily use and self 2learning functi on,s o it could rep lace any kind of remote contr ol t o realize the integra 2ti on of intelligent household and re mote contr ol .Key words:i n frared re m ote con trol ;carr i er frequency;cod i n g conversi on st a te chart ;self 2study func 2ti on0 引 言智能家居的实现改变了人们的生活方式。

课程设计-学习型红外遥控器的设计.

课程设计-学习型红外遥控器的设计.

河南大学物理与电子学院学习型红外遥控器的设计河南大学物理与电子学院电子开放实验室目录1 设计要求及原理 (1)2 方案论证与对比 (2)2.1 方案一简易红外遥控电路 (2)2.2 方案二利用STC68C52单片机控制电路 (2)2.3 方案对比与选择 (3)3 遥控器硬件与程序设计 (3)3.1 遥控器硬件结构组成 (3)3.2 系统硬件电路设计 (4)3.3 初始化程序 (4)3.4遥控器读入程序处理 (5)3.5 遥控码发送处理程序 (6)3.6主程序 (6)3.7 程序延时 (6)4 系统功能调试及整体指标分析 (6)4.1 程序调试 (6)4.2 整体指标分析 (7)5 详细仪器清单 (9)6总结、思考与致谢 (9)附录1:单键学习型红外遥控器原理图(proteus仿真): (10)附录2:单片机C源程序: (11)学习型红外遥控器设计1 设计要求及原理利用单片机作为控制核心,要求可以学习不同遥控器的某个按件功能。

使用时先用原遥控器对着学习器按一下某操作键,学习器就可实现原遥控器中该键的遥控功能。

具体要求如下:基本部分:(1)最大学习码长:206位。

(2) 学习码识别范围:起始位为15us~983ms,编码位为15us~3.825ms。

(3) 读码误差:±15us。

扩展部分:学习型红外遥控器在按下K键待绿色指示灯亮后,用遥控器对着红外接收头按下某个功能键,当绿灯灭说明学习完毕,再按发射键就可以进行遥控操作。

当红外遥控器的某个按键按下时,发射出一组串行二进制遥控编码脉冲。

该脉冲由引导码、系统码、功能码和反码组成,通过设置这些编码以及码长便可区分不同的红外遥控器。

红外接收器负责红外信号的接收和放大并解调出TTL电平信号送至微处理器进行处理,微处理器通过比较和识别接收来的红外遥控编码便可执行相应的遥控功能[1]。

本系统的设计思想是不考虑红外编码方式,仅利用单片机AT89C52对多个红外遥控编码的脉冲宽度进行测量,并原封不动地把发射信号中高、低电平的时间宽度记忆至扩展存储区的指定地址。

一种通用学习型红外遥控器设计与实现

一种通用学习型红外遥控器设计与实现

应用技术18一种通用学习型红外遥控器设计与实现王永华1 周卫2 詹宜巨袁从贵1(1.广东工业大学自动化学院 2.广东省科学院自动化中心)摘要:介绍了一种通用学习型红外遥控装置的设计与实现方法,给出了原理图及程序框图,此装置在多媒体中央控制器中使用,获得了令人满意的效果。

关键词:红外;遥控;单片机1引言红外遥控是目前常用的一种通信和遥控方法。

红外遥控装置具有体积小、功耗低、功能强、成本低等特点,因而其广泛应用于各种家电产品、金融和商用设施以及工业设备中。

但是各种产品的遥控并不能互相兼容。

本文介绍一种利用单片机设计通用自学习型红外遥控的方法,可以实现对多种产品红外线遥控。

本装置采用了最小化模式设计,电路简单,可靠性高。

此技术应用于我们开发的多媒体中央控制器产品中,获得了令人满意的效果。

该方案可以还可应用于自学习万能遥控器和智能家庭集中控制器等设备。

2 红外遥控原理一般的红外遥控系统由红外遥控信号发射器、红外遥控信号接收器、微处理器和外围电路构成的。

当遥控器的某个按键按下,其内部的信号发射器产生遥控编码脉冲,由红外发射管串行输出,遥控接收模块(型号1838)完成对遥控信号的接收、放大、检波、整形、解调出遥控编码脉冲。

遥控编码脉冲是一组串行二进制编码,对于一般的红外遥控系统,此串行输入到微控制器,由其内部完成遥控指令解码,并执行相应的遥控功能。

3 一般红外遥控信号编码脉冲的波形红外遥控器发射的遥控编码脉冲由前导码、系统码、功能码、功能码的反码组成,如图1所示。

前导码是一个遥控码的起始部分,由一个高电平和一个低电平组成,作为接受数据的准备脉冲。

这些编码是经38 kHz的载波脉宽调制后发射出去。

图1通过分析大量不同类型的红外遥控码波形,遥控码的数据帧间歇宽度均为10ms以上,前导码的高电平均为5ms以上,通常为9ms左右。

编码位在10us 和5ms之间,在本设计中,只考虑遥控器发射信号的高低电平宽度,不考虑其编码方式,以简化设计。

学习型红外线遥控器的设计-覃业辉--外校查重

学习型红外线遥控器的设计-覃业辉--外校查重

密级:学号:本科生毕业设计(论文)学习型红外线遥控器的设计学院:专业:班级:学生姓名:指导老师:完成日期:学士学位论文原创性申明本人郑重申明:所呈交的论文(设计)是本人在指导老师的指导下独立进行研究,所取得的研究成果。

除了文中特别加以标注引用的内容外,本论文(设计)不包含任何其他个人或集体已经发表或撰写的成果作品。

对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式表明。

本人完全意识到本申明的法律后果由本人承担。

学位论文作者签名(手写):签字日期:年月日学位论文版权使用授权书本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。

本人授权江西科技学院可以将本论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。

(请在以上相应方框内打“√”)学位论文作者签名(手写):指导老师签名(手写):签字日期:年月日签字日期:年月日摘要红外遥控器是一种常用的家用电器遥控通信设备,具有性能稳定、结构简单、易于实现等特点,在日常生活和工业控制等方面应用十分广泛,一般遥控器使用特定解码芯片,只能识别唯一代码,无法达到多个接收端共用一个遥控器的目的。

本文论述了一个基于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 意义与目的当前,随着人们的物质文化生活自动化程度逐步提高,每个家庭都有许许多多的家用电器,大多数的家用电器都有配有各自的遥控器,多数遥控器的不兼容使得我们有了很多的遥控器,这样使得我们挑选遥控器进入了纠结。

学习型红外遥控器的设计

学习型红外遥控器的设计
l an n f n t n e t r s l h w h t t e o r s in e r i g u ci .T s e u t s o t a h c mp e so meh d t smp i t e o i g o h e c d d i fr ain, a e u t n f o s t o o i l y h c d n f t e n o e n o f m t o rd c i o o
范 围+ H 。 - k z 2
1 红 外 遥 控 码 型 分 析
通 过 对 市 面 上 比 较 普 遍 的 几 十 种 遥 控 器 的码 型 结 构 进 行 研 究 分 析 发 现 , 空 调 生 产 厂 家 对 其 遥 控 器 的 收 各 发 信 号 的 脉 冲 编 码 、 型 和 码 流 没 有 统 一 的 标 准 , 在 码 存
De in f s l- e r i g n r r d r mo e o to lr sg o ef la n n i fa e e t c n r l e
L B n, I i GAO Go g n Xin a
(aj gC l g fIfr ai ehooy N nig2 0 3 ,hn ) N ni ol eo nom t n T cnlg , aj 10 6 C ia n e o n
出 现 的位 置 不 固 定 。 对 这 些 灵 活 多 变 的 帧 格 式 , 难 区 很 分各 种脉 冲流 的含义 。
() 型 多 样 , 图 1所 示 。 2码 如
() a
() b
图 1 红 外 编 码 码 型 图
( ) 波 频 率误
so a e pa e t a r p a e ai t o e oe o r 1 tr g s c .I c n e lc v rey fr m t c nto .

学习型红外线遥控器项目设计方案

学习型红外线遥控器项目设计方案

学习型红外线遥控器项目设计方案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 0的形式进 行存储 ,随后 和 经过调制产生 3 KH 载波 , 8 z 还原并发射 红外线信号 , 从而达到控制多种 家 用 电器 的功 能 。文 中给 出 了红 外 线 接 收 发 射 以及 存 储 的 基本 原 理及
接 收及存储功能。首先一体化红外接收头可 以完成对其它遥控器发 出 的红外信 号的接收并对其进 行解调 、 形 、 整 放大 , 然后把信 号送入单片 机 A 8 S2中, T95 单片机定时采集一体化红外接 收头发 出的红外线信号 , 根据高低电平形成一系列 0 1 , 二进制码 ,并 以 8位为单位存放到存储 器 A 2 C 6以及指定键盘 的数据 区 , T4 1 从而完成对一个键 的学习。如果 再 学 习其 它 键 的 功 能 ,方 法 相 同 。 在 控 制 状 态 下 ,单 片 机 对 存 储 器
223键 盘 单 元 ..
本 设 计 因为 遥 控 按 键 较 多 的原 因 , 用 行 列 式 键 盘 。 采 键 盘 识 别 采 用 行 扫 描 法 ( 行 扫 描 查 询 法 )这 是 一 种 最 常用 的 按 逐 , 键 识 别 方 法 , 按 键 识 别 过 程 如下 : 其 将全部行线 P. O2~P . 低 电平 , 后 检 测 列 线 的 状 态 。 要 有 一 O4置 然 只 列 的电平为低 , 则表示键盘中有键按下 , 而且闭合的键位于低电平线与 3根行线相交叉的 3 个按键之 中。若所有列线 均为高 电平 , 则无按键按

学习型红外遥控器的设计

学习型红外遥控器的设计

学习型红外遥控器的设计引言随着现代化科技的不断发展,红外遥控器普及程度越来越广,与此同时,红外遥控器的种类也越来越丰富。

学习型红外遥控器作为一种新颖的遥控器设计,其具有学习和存储多种电器设备功能的特点。

设计一种高效的学习型红外遥控器对于方便我们的日常生活、提高我们的生产效率具有非常重要的意义。

下面将从设计的角度,探讨学习型红外遥控器的原理和设计方案。

设计原理学习型红外遥控器主要通过学习一个电器设备的信号,将其编码存储在一颗存储芯片中。

当需要控制该电器时,遥控器会主动发送出这个编码,以达到控制电器的目的。

整个系统分为两部分:从遥控器发送信号和电器控制器接收信号两个部分。

首先,遥控器通过按键产生不同的编码,这些不同的编码被编码器编码后,再通过红外LED发射出去。

其次,接收部分通过红外接收管接收到发射出去的信号后,再解码还原出原来的信号信息,再发送到电器中控制器进行操作。

整个系统直接的数据传输采用红外线传输,因为红外线传输数据无线,无视遮挡,不会对设备的使用过程产生干扰。

设计方案硬件设计本次学习型红外遥控器的设计方案采用51单片机作为遥控器数据的处理中心,同时利用红外发射管和红外接收管实现红外线无线传输,将不同的遥控器编码进行传输。

其中,遥控器发送端的主要功能包括:•将键盘输入的不同编码进行编码;•将编码发送到红外发射管;•发送系统检测电路的设计。

而电器控制端的主要功能包括:•接收极近距离的红外线;•将红外信号转换成对应的电信号;•控制输出端的执行管脚进行操作。

硬件设计图硬件设计图软件设计硬件的实现上需要配合51单片机进行传输控制,因此,还需要相应的软件进行代码开发。

主要包括以下几点:•确定码库存储的方式;•接收编码的方式;•通过遥控器发送信号的方式;•接收电器的信号,并执行对应的操作。

软件代码编写要考虑到对红外信号的不同解码方法,包括NEC、SIRC等不同的传输标准。

为了方便设计和代码的开发,可以利用市场上现成的红外解码译码库程序进行开发。

红外学习遥控器的设计与实现

红外学习遥控器的设计与实现
\ 技术在线 \
1 0 . 3 9 6 9 / j .i s s n . 1 6 7 1 — 4 8 9 X . 2 0 1 3 . 1 8 . 0 5 4
红外 学 习 遥控器 的设计 与实现
陈彦 霖
广 东文理职业 学院 广 东廉 江 5 2 4 4 0 0
摘 要 设 计 一个具 有 学 习功能 的红外遥 控 器 ,该 遥控 器适 用于码 分制 的红 外遥控 设备 。 它通过对 大量不 同遥 控
按键 , 即 可 实 现对 电器 进 行 遥 控 。
所 有 的红 外遥控 器 的输 出都是 用编 码 后 的串行 数据 对 3 8~ 4 0 k H z的方波进行脉冲幅度调制而产生 的。如果直接对 已调波进行测量,其脉 宽只有 2 O多微秒 ,由于单片机的指令 周期 是微秒级,就会产生很大 的误差。因此 ,需加上 一些简 单 的外 围电路 ,先要对 己调波进行解调 ,对解 调后的波形进 行测量 。用 C X 2 0 1 0 6可 以完成对 己调波 的解 调,原理图如 图 2所示 。将 C X 2 0 1 0 6 解调 出的遥控编码脉冲直接连入 A T 8 9 C 5 1 单片机 的丽 和面 脚。
Abs tr a ct T hi S pa p er de s i g ne d a n i nf r a r e d re mot e co nt r o1 1 e r wi t h l e a r ni n g f u nc t i o n. Th e r e mo t e c ont r ol l e r i s s ui t a bl e f or t h e d e vi c e co d e — di vi S i o n s y st o m o f i n f r ar e d r e mot e c o nt r ol l e r . I t i S c ha r a c t e ri z e d b y a l ar g e nu mb e r o f d i f f e r e n t r e m ot e c e nt r e1 c o d e , a n d i t s e l ec t s t h e o pt i m m s u a m p l i n g f r e q u e n c y w he n r e a di n g i nt o t h e r e m ot e c o n t r ol c od e , t h u s g r e a t l y i m p r o v e s t he l e a r ni n g S UC CC S S r a t e .

学习型红外遥控器的设计

学习型红外遥控器的设计

学习型红外遥控器的设计学习型红外遥控器是一种能够学习其他红外遥控器的信号,并且能够模拟出相应信号的智能遥控器。

其设计主要分为硬件设计和软件设计两个方面。

硬件设计方面,需要选择合适的控制芯片、红外传感器和其他电子元器件。

可以选择一些成熟的芯片方案,如STC12C5A60S2、AT89C51等,以及高灵敏度、具有过滤功能的红外传感器。

其他电子元器件如电容、电阻等也需要选择质量稳定、工作性能优良的原件,以保证整个电路的可靠性和稳定性。

软件设计方面,需要编写控制芯片的程序,实现信号的学习和发送,以及其他功能的实现。

其主要流程如下:1. 通过红外传感器采集到信号,将采集到的信号存储在控制芯片的存储器中。

2. 通过按键操作,将存储在存储器中的信号发送出去。

3. 实现其他功能,如定时器、闹钟、亮度调节等。

为了实现信号的学习和发送,需要编写相关的程序,主要包括如下几个部分:1. 红外信号采集:采用红外传感器将红外信号转换为可读取的电信号,并将信号存储在存储器中。

2. 学习信号:将用户能够操作的其他遥控器的信号利用红外传感器采集,并通过控制芯片存储在存储器中。

3. 信号发送:通过控制芯片将存储在存储器中的信号转换为红外信号并发送出去。

4. 其他功能实现:通过编写相应的程序,实现定时器、闹钟、亮度调节等功能。

以上是学习型红外遥控器的设计流程,其中硬件设计和软件设计是相互独立的,但又息息相关。

硬件设计决定了遥控器的性能、稳定性和可靠性,而软件设计则直接决定了遥控器的功能和实际运用中的表现。

综上,学习型红外遥控器是一种智能化的遥控器,通过硬件设计和软件设计的完美结合,实现了信号的学习和发送以及其他多种功能,为人们的生活和工作带来了极大的便利和舒适。

学习型红外遥控器的设计与实现

学习型红外遥控器的设计与实现

现代家用电器大多具有红外遥控功能。

随着家用电器品种的增多,遥控器也越来越多,不断在不同遥控器之间切换使得用户感到非常不便,于是出现了学习型遥控器,通过学习型遥控器能同时控制多种被控设备。

作者采用一体化红外线接收器HS0038B设计并实现了一款学习型红外遥控器,本文给出了学习型红外遥控器的设计原理及关键问题的解决方法。

1设计原理红外遥控器的核心元器件是编码芯片,将需要实现的操作指令例如电视选台、快进等事先编码,设备接收后解码再控制有关部件执行相应的动作。

编码是通过载波输出的,即所有的脉冲信号均调制在载波上,载波频率通常为38kHz。

在发送端,载波利用电信号驱动红外发光二极管,将电信号变成光信号发射出去,发射的是红外光,波长范围在840nm到960nm之间。

在接收端,通过光电二极管将红外光信号转换成电信号,经放大、整形、解调等步骤,最后还原成原来的脉冲编码信号,并根据遥控指令完成相应的动作。

学习型红外遥控器通过记录各种不同类型的遥控器的编码波形,将其存储下来并与某个按键关联,从而实现“学习”功能,这样作不必关心编码的细节,通用性大大提高。

如图1所示,学习型红外遥控器从功能上分为三个部分:红外信号的解调接收,脉冲编码的采样存储,脉冲编码的调制发送。

图1学习型红外遥控器的功能模块图1.1红外信号的接收红外接收器把接收到的红外信号先经光电二极管转换成电信号,再对电信号进行解调,恢复为带有一定功能指令码的脉冲编码。

本设计中,采用了一体化红外线接收器HS0038B来接收红外信号,解调成脉冲编码输出。

红外接收器输出的是脉冲编码,也就是遥控指令。

如果知道了遥控器的编码协议,学习的过程就很简单,只要增加一个解码模块,按照编码协议对编码信号进行解码即可。

但是遥控器发出的编码信号变化多样,市场上成百上千的编码方式并存,并没有一个统一的国际标准,只有各芯片厂商事实上的标准,使得模拟并替换各种原厂遥控器成为难点。

而且客户码,命令码也是由不同厂商自行规定的,这也给解码带来了极大的不便。

学习型万能遥控器的设计与实现

学习型万能遥控器的设计与实现

学习型万能遥控器的设计与实现摘要随着万能遥控器家用电器的出现和推广,曾经给我们生活带来方便的红外遥控器反而显得无用武之地。

一方面,数字电视机顶盒、DVD、电视机、音响、空调等家用电器都是自带遥控器,操纵这些需要使用多种遥控器,这给使用者带来了许多不便之处。

另外一方面,红外遥控信号因为需要直视空间、并且要受短短几米距离的限制,而导致很多场合无法适用。

学习型万能遥控器却能够把各种电器集中控制,克服了红外遥控器只能识别唯一设备的局限性,从而拓宽了应用范围,方便了我们的生活。

学习型万能遥控器主要功能包括红外信号转发、克服对直视空间控制的依赖以及克服接收距离短的缺点。

红外信号学习,可以把多个红外信号学习在一个遥控器上,有效避免频繁更换遥控器的尴尬情况,当然学习功能也兼有转发功能的特点。

关键词:红外遥控万能遥控器红外学习信号中继Learn to type a function-orienteduniversal remote design and implementation ofABSTRACTWith the infrared remote control of household appliances has increased, would have to bring convenience to our lives instead of the infrared remote control to give us trouble. Digital TV set-top boxes, DVD, TV, stereo, air conditioning, due to various equipment comes with remote control, manipulation of these devices may use a variety of remote control, a lot of inconvenience to the user. On the other hand, infrared remote control signal because of the need open heart space, and subject to just a few meters away from the restrictions, and lead can not be applied on many occasions. The design allows centralized control of various electrical energy to overcome the remote control device to operate only against the limitations and broaden the scope of application, to facilitate our lives. Design of the main functions of the transmitted IR signal can overcome the need to look into space, the disadvantage of receiving a short distance; infrared signal learning, can learn in a number of infrared remote control signals, and effectively avoid the embarrassment of frequent replacement of the remote control, of course learning function is also the characteristics of both forwarding.Key words: infrared remote control universal remote control IR learning signal relay目录摘要 (I)ABSTRACT (II)1 绪论 (1)2 概述 (2)2.1遥控技术的种类 (2)2.2红外遥控技术的研究现状和成果。

学习型红外遥控器的设计

学习型红外遥控器的设计

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

目录1 设计要求及原理 (1)2 方案论证与对比 (2)2.1 方案一简易红外遥控电路 (2)2.2 方案二利用STC68C52单片机控制电路 (2)2.3 方案对比与选择 (3)3 遥控器硬件与程序设计 (3)3.1 遥控器硬件结构组成 (3)3.2 系统硬件电路设计 (4)3.3 初始化程序 (4)3.4遥控器读入程序处理 (5)3.5 遥控码发送处理程序 (6)3.6主程序 (6)3.7 程序延时 (6)4 系统功能调试及整体指标分析 (6)4.1程序调试 (6)4.2整体指标分析 (7)5 详细仪器清单 (9)6总结、思考与致谢 (9)附录1:单键学习型红外遥控器原理图(proteus仿真): (11)附录2:单片机C源程序: (12)学习型红外遥控器设计1 设计要求及原理利用单片机作为控制核心,要求可以学习不同遥控器的某个按件功能。

使用时先用原遥控器对着学习器按一下某操作键,学习器就可实现原遥控器中该键的遥控功能。

具体要求如下:基本部分:(1)最大学习码长:206位。

(2) 学习码识别范围:起始位为15us~983ms,编码位为15us~3.825ms。

(3) 读码误差:±15us。

扩展部分:学习型红外遥控器在按下K键待绿色指示灯亮后,用遥控器对着红外接收头按下某个功能键,当绿灯灭说明学习完毕,再按发射键就可以进行遥控操作。

当红外遥控器的某个按键按下时,发射出一组串行二进制遥控编码脉冲。

该脉冲由引导码、系统码、功能码和反码组成,通过设置这些编码以及码长便可区分不同的红外遥控器。

红外接收器负责红外信号的接收和放大并解调出TTL电平信号送至微处理器进行处理,微处理器通过比较和识别接收来的红外遥控编码便可执行相应的遥控功能[1]。

本系统的设计思想是不考虑红外编码方式,仅利用单片机AT89C52对多个红外遥控编码的脉冲宽度进行测量,并原封不动地把发射信号中高、低电平的时间宽度记忆至扩展存储区的指定地址。

当要发射红外信号时,从扩展存储区中还原出相应的红外遥控编码,并调制到40KHz的载波信号上,最后,通过三极管放大电路驱动红外发光二极管发射红外信号,达到学习和发射的目的,从而实现一个遥控器控制多种红外遥控设备。

2 方案论证与对比2.1方案一 简易红外遥控电路在不需要多路控制的应用场合下,可以使用由常规电路组成的单通道红外遥控电路[1]。

这中遥控电路不需要使用较贵的专用便译码器,因此成本较低。

图 1方案一系统方框图考虑到本方案电路是简单的单通道控制器,可直接产生一个控制功能的震荡频率,再通过红外发光二极管发射出去。

当红外接收头接收到控制频率时,由一个电路对其进行产生相应的控制功能。

2.2方案二 利用STC89C52单片机控制电路用单片机制作一个红外遥控器,并可通过程序控制记忆按键功能,达到学习记忆功能。

图 2 方案二系统方框图当按下遥控器按钮时,单片机产生相应的控制脉冲,由红外发光二极管发射出去。

当红外就收器接收到控制脉冲时,经单片机处理由显示设备显示出当前受控电器的序号,并判断是否对某一功能进行的操作。

2.3方案对比与选择以上方案:方案一未采用单片机,功能过于单一,仅能对一路电器进行简单遥控;方案二不仅可以用控制按键实现对电器的控制,而且可记忆学习按键功能,达到复制的功能,方便使用,且成本设计用STC89C52也比较便宜实用。

显然本设计采用方案二作为设计蓝本。

3遥控器硬件与程序设计3.1遥控器硬件结构组成为了实现遥控码的记录还原功能,系统应具有红外线的接收解码、红外线的调制发射、操作按键和功能控制单元。

由于功能定位学习一个遥控按键的遥控的功能,因此决定采用STC89C52RC单片机作为控制器。

STC89C52RC单片机中具有256字节的内存单元,可存储遥控码脉宽的数据。

遥控码的脉宽数据可以用红外线接收解码后送单片机读入,发射时由单片机产生40kHz红外调制信号送红外线发管发射。

学习型红外遥控器由红外接收电路、单片机控制器、红外发送电路、E2PROM 存储器、操作键盘及LED遥控指示灯构成,如图2所示。

单片机STC89C52构成红外遥控的处理器,其数据存储器RAM(258B)用来存储学习过程中编码信号的脉冲宽度和编码。

(1)红外发射电路[5]:40 kHz方波直接由单片机模拟产生,经过三极管放大后,驱动红外发光二极管(注意:40 kHz载波不能用STC89C52定时器产生,因为40 kHz载波信号的周期只有26 μs,考虑到有载波时的占空比为1/3,即定时器的最小中断时间间隔只有8 μs,在执行中断时中断处理过程(如保护现场等)实际运行时间根据中断点的不同需要的时间也不同,有时会大于8 μs,这样不能保证40 kHz信号的稳定性),在软件处理过程中应用延时程序模仿40 kHz 的红外载波信号。

(2)红外接收头:在与单片机连接时,将接收来的红外遥控信号反相,其正向信号接外部中断0,反相信号接外部中断1。

通过记录2个中断间的间隔时间来测量红外遥控信号的高低电平的脉宽值。

(3)外接E PROM存储器:用于存放学习到的控制命令的编码和高低电平信号的脉宽值。

(4)按键盘:启动一个学习过程。

(5)LED指示灯:用于显示遥控器的工作状态。

3.2 系统硬件电路设计【附录1】为该学习型遥控器的原理图,其中:P1.0口接遥控码发射按键;P1.6口用作状态指示,绿灯亮代表学习状态,绿灯灭代表码已读入。

P1.7口用于指示控制键的操作,闪烁时代表遥控码正在发射之中,在学习状态,绿灯灭代表码已读入。

第9脚为单片机的复位脚,采用简单的RC上电复位电路,第12脚为中断输入口,用于工作方式的转换控制,当INTO脚为低电平时,系统进入学习状态。

第14脚用于红外线接收头的输出信号输入,第15脚作为遥控码的输出口,用于输出40KHz的遥控码。

第18、19脚接12MHZ晶振。

由于采用最小化应用系统,控制线PSEN(片外取指控制)、ALE(地址锁存控制)不用,EA(片外存储器选择)接高电平,使低8K的E2PROM地址(0000H-1FFFH)指向片内。

3.3初始化程序内容包括P0、P1、P3端口置位,P2口清零,清08H—6EH共103个工作寄存器,设置堆栈基址(70H),设置计数器计数模式、控制字,开外中断允许等等。

3.4遥控器读入程序处理完成遥控码起始位的识别、脉宽计数功能,完成遥控码编码位的宽度计数功能,完成结束位的认别功能(流程图见图3)。

本程序模块在编程设计中非常重要,通过大量的不同种类的遥控码波形实验测试分析,遥控码的帧间歇位宽度均在10 ms以上,起始位码宽度在100μs—20ms之间,编码位在100μs—5ms之间,为确保所有遥控器学习的成功,采用以下设计方法:寻找起始位方法:用16位DPTR计数器对高电平进行宽度计数,计数采样周期为21μs,当高电平结束时,如高8位计数器为非零,则说明高电平宽度超过5.35ms(255×21μs),紧接来的低电平码就是起始位,否则重新开始。

图 3 遥控码读入处理程序流程图图4 主程序流程图读起始位方法[3]:采用16位DPTR对低电平进行宽度计数(最大可读宽度为1.376s),当高电平跳变时结束计数,并将DPTR的高8位、低8分别存入R 4,R5寄存器。

读遥控编码的方法:采用DPTR低8位计数器对码(高电平或低电平)进行宽度计数,电平跳变时结束计数,并将值存入规定的地址,在高电平码计数时,如DPTR高8位计数器为非零(宽度大于5.35ms),则判定为结束帧间隔位,在相应存储单元写入数据#OOH作为结束标志。

3.5遥控码发送处理程序利用计数器计数中断功能,实现40KHz载波的发送,利用接收时接收的低电平位时间控制载波的发送时间。

3.6主程序主程序在上电初始化后进行端口按键扫描,当确认有键按下时将编码发出去(见图3流程图)。

3.7程序延时主要用于读键时消抖。

时间约为1ms。

4 系统功能调试及整体指标分析4.1 程序调试调试学习状态和发射状态下计数器的循环间隙时间是C程序中较为重要的内容,在汇编语言下可以精确地算出循环时间,这样在C编程时能在E磁盘目录下产生1个REMOTE.ASM的汇编源程序[4],在汇编程序清单中可以精确地算出循环时间,这样才能保证读入时的脉宽与发射时的脉宽一样,另外,也可以通过示波器观察比对原遥控器解码波形及学习器产生的波形,结合调试循环延时的间隔达到精确还原脉宽的目的。

4.2 整体指标分析学习型遥控器的设计性能及实现与其软件设计编写具有密切的关系,在设计中采用内部定时器对信号高低电平计时的方法来采集数据并保存。

当系统识别到起始码的低电平时,系统启动内部定时器对输入低电平计时,当起始码的低电平结束时保存定时器此时的值,记录下起始码的低电平信号脉冲宽度值;然后依次保存采集到的编码信号脉冲宽度值,如果采集到编码信号位数大于设定值M(程序中设定值),就认为编码采集已经结束,即学习子程序结束。

在软件设计过程中,使用了2个外部中断和2个内部定时器,外部中断0启动定时器0停止定时器1计数并保存定时器1的数据,外部中断1启动定时器1停止定时器0计数并保存定时器0的数据,用定时器0记录红外解调信号的高电平时长。

用定时器1记录红外解调信号的低电平时长,本文采用12 MHz晶振,1个机器周期是1 μs,计数器采用16位计数器。

如果在外部中断0和外部中断1之间不发生内部定时器中断,可以记录的最大时间间隔为65.5 ms;如果在外部中断0和外部中断1之间发生内部定时器中断则可以记录的最大时间间隔是n ×65.5 ms,其中n为中断次数。

其值保存在设定的数据存储器中,然后写入到外部E2PROM存储器中。

发射过程再从外部的E2PROM存储器读出,通过用软件模仿40 kHz载波信号发送编码信息。

在设计过程中研究发现:尽管遥控器存在帧格式多样、码型多样、编码长短不同、发送方式不同等问题,但对于某一个独立的遥控器还是有规律可依的。

在系统设计方案时,选择通用性好的就能解决这个问题。

例如测得一款遥控器的1个命令码如下:低电平(有红外发送载波)信号码时长数据是:0x7368 0x0578 0x0577 0x0563 0x0555 0x0584 0x0564 0x0545 0x0572 0x0554……高电平(无红外发送载波)信号码时长数据是:0x0578 0x1377 0x0563 0x0555 0x1384 0x0564 0x0545 0x1382 0x0554 0x01345……尽管码型有帧头、系统码、操作码、同步码、帧间隔码、帧尾,但不论是低电平(有红外发送载波)信号码时长或是高电平(无红外发送载波)信号码时长其结构都相对简单。

相关文档
最新文档