万能红外遥控器设计

合集下载

家电课程设计 红外多功能遥控器

家电课程设计   红外多功能遥控器

家电原理及检测课程设计现代家电通用红外遥控器学院:机械与电子工程学院专业:电子信息工程专业班级:10306101学号:1030610101姓名:易绍江指导老师:谢勇勤2013年1月1 日目录一、课程设计题目 (1)二、课题设计目的及意义 (1)三、红外线遥控器工作原理 (1)四、遥控器硬件设计思路 (1)1、MCU控制模块 (2)2、红外发射电路及其编码 (3)(1)红外发射电路 (3)(2)红外遥控编码 (5)3、遥控器红外接收模块 (6)4、遥控器存储电路 (7)5、显示模块及键盘模块 (9)(1)键盘电路 (9)(2)显示电路 (10)五、遥控器软件设计 (12)1、软件流程图 (12)2 、程序代码 (13)3 、程序执行说明 (18)六、心得体会 (19)一、课程设计题目现代家电通用遥控设备二、课题设计目的及意义随着社会的发展,空调器在家庭中已经十分普及,与此同时,和空调器相伴的空调遥控器的品种和产量不断提高。

但是一旦遥控器损坏,由于各个厂家遥控器生产的标准不同,所以不能互换,万一原来品牌不易购买,则会使得此台家用电器瘫痪。

所以利用单片机设计一个通用的空调遥控器,只要这种遥控器的技术能够掌握,则其他任何家电的遥控器都能设计。

红外遥控具有独立性、物理特性与可见光相似性、无穿透障碍物的能力及较强的隐蔽性等特点。

遥控器都采用红外线技术,只是不同的厂家对遥控器的各个开关的编码不相同,但是每个厂家都提供有自己产品的红外遥控的编码,所以就可以利用单片机技术,将各个厂家的编码都存储到程序中,通过逐一的发射来选择哪一组编码适合这台家用电器,找到之后将这组编码确定,就完成了遥控器的设置。

本课题的目的就是实现一个遥控器控制多台设备,来解决市场上普通遥控器不兼容的问题,这将给人们的生活带来极大的便捷。

系统电路主要包括接收电路、发射电路、键盘电路、显示电路以及存储电路。

三、红外线遥控器工作原理红外线 LED发光波长在940nm 左右为不可见光,是以GaAs组成的二极体装置,当它被加上顺向偏压时,就能发出红外光,其顺向电压约为1.2V, 顺向电流最大值一般可达50mA, 有的甚至可达150mA, 其所工作的顺向电流愈大,所发出之红外线愈强。

红外遥控开关的制作方法

红外遥控开关的制作方法

红外遥控开关的制作方法红外遥控开关是一种方便实用的电子设备,可以用来控制灯光、电视、空调等家电设备的开关。

今天我们将介绍10条关于红外遥控开关的制作方法,并详细描述每种方法的步骤和材料。

1. 可编程红外遥控开关制作方法这种制作方法需要使用一个可编程芯片,例如AT89S52芯片,以及一些基本电子元件。

这种方法的优点是能够对红外遥控信号进行编程,使得开关变得更加智能化。

步骤:1. 连接AT89S52芯片和基本电子元件,例如电容和电阻。

2. 下载具有红外信号解码功能的程序到芯片中。

3. 制作一个红外发射模块,并将其连接到芯片上。

4. 输入你想要编程的红外遥控信号,并将其保存在芯片中。

5. 通过程序对这些信号进行处理,以制作智能红外遥控开关。

2. 简单红外遥控开关制作方法这种制作方法基于一个比较简单的电路,只需要较少的电子元件,适合初学者制作。

步骤:1. 使用NE555定时器芯片、红外遥控解码器和一些电容和电阻组成电路。

2. 制作电路板,将芯片和电子元件进行焊接,并安装红外发射模块。

3. 制作一个红外遥控器,通过它对电路进行遥控。

3. 光敏红外遥控开关制作方法这种制作方法基于一个光敏电阻,利用它的特性来控制红外遥控开关。

这种方法的优点是简单易用,价格便宜。

步骤:1. 制作出一个光敏电阻,并将其放入一个黑色的管子中。

2. 连接红外接收模块,并用热缩管将其封装起来。

3. 将一些电阻和电容连接到电路板上,用它来控制光敏电阻输入的信号。

4. 制作一个红外遥控器,向电路板发送控制信号。

4. CD4017红外遥控开关制作方法这种制作方法基于一个CD4017集成电路,利用它的内部逻辑来控制红外遥控开关。

这种方法的优点是实现方便,性能稳定。

步骤:1. 连接CD4017集成电路、电容、电阻和LED灯,制作出一个电路板。

2. 连接红外接收模块和CD4017集成电路,以接收红外信号并对其进行处理。

3. 制作一个红外遥控器,并用它来控制CD4017电路板。

红外多功能遥控开关的设计

红外多功能遥控开关的设计

天津工业大学毕业论文基于单片机的多功能红外遥控开关的设计The Design of the Infrared-controller Based on SCM学生姓名张龙学院理学院专业光信息科学与技术指导教师黄金栋职称讲师2014年 6 月摘要随着科学技术的发展,单一遥控器(即一个遥控器只能控制一种类型的家电设备)已经不能满足用户要求和市场需求,且价格昂贵,并对材料造成了浪费,而且操作起来比较麻烦。

光电遥控多功能开关控制设备的种类多种多样,应用起来也比较简单,而且辐射较小,不会对人体健康产生较大危害,能与其他电器各行其道。

又因为红外线波长较长,所以不同的家用电器不会相互作用。

它的电路也比较便易,只要连接没有错误,便可以进行工作。

解码编码相对于其他设备也比较简易。

本次设计采用的是红外线遥控,利用红外线对不同的电器进行开关控制,采用把编码格式进行不同编码,产生不同频率脉冲,控制不同电器设备。

故达到开关控制的目的。

硬件部分主要包括发射电路、接收电路、单片机。

硬件部分主要包括发射电路程序编写、接收电路程序编写、实现开关功能的程序编写。

显示部分用显示器显示不同数字代表不同的电器,按下遥控开关不同数字产生不同频率的编码,通过电路,显示器上会显示不同的数字从而达到研究目的。

关键字:光电技术;遥控电路;发射电路;接收电路;单片机;显示器AbstractWith the development of science and technology, a single remote control has been unable to meet user requirements and market demand . And expensive , and the resulting waste materials , and operate more trouble. Photoelectric switches can control multifunction remote control different types of devices, and easy to operate, and does not affect the surrounding environment , do not interfere with other electrical equipment. Because it can not penetrate walls , so the appliances can be used in different rooms of the universal remote control without causing mutual interference ; circuit debugging as simple as pressing a given circuit connections are correct , generally without any debugging can be put to work ; codec easy, multichannel remote control . This design uses an infrared remote control , using infrared for different electrical switch control , the use of remote control codes different encoding formats to produce pulses of different frequencies to achieve the principle of control of different appliances , so as to achieve the purpose of the switch control . The hardware includes transmitter, receiver circuit, micro-controller . The hardware includes a transmitting circuit programming, the receiver circuit programming, switching function of programming. The show is part display different numbers represent different appliances, remote control switch is pressed to generate different frequencies in different digital coding , through the circuit , will be displayed on the display different figures so as to achieve the purpose of research . Keywords : Optical Technology ; remote control circuit ; transmitter circuit ;receiving circuit ; SCM ; monitor目录第一章绪论 (1)1.1前言 (1)1.2红外遥控技术的研究和成果 (2)1.3 多功能红外遥控器国内外现状和发展趋势 (3)1.4 本设计的方案和比较 (4)1.4.1 设计目的 (4)1.4.2遥控技术的种类 (4)第二章红外遥控控制原理 (6)2.1 红外遥控发射装置原理 (6)2.2 红外遥控接收装置原理 (6)2.3 行列式键盘的工作原理 (7)2.4 编码解码原理 (8)第三章红外遥控器的硬件系统设计 (9)3.1器件的介绍与选择 (9)3.1.1显示器的选择 (9)3.1.2按键方式选择 (9)3.1.3 单片机的选择(AT89C51) (9)3.2电路的设计 (10)3.2.1发射电路的设计 (10)3.2.2接收电路的设计 (12)第四章红外遥控器的软件系统设计 (13)4.1 遥控发射部分 (13)4.2 遥控接收部分 (15)第五章设计调试 (17)5.1 调试前不加电源的检查 (17)5.2 静态检测与调试 (17)5.3 动态检测与调试 (17)5.4 调试注意事项 (17)第六章结论 (18)参考文献 (20)附录 (19)谢辞 (39)第一章绪论1.1前言众所周知,当今世界最具潜力、最具发展力而且又被人们广泛应用的技术毫无疑问是光电技术。

基于单片机的多功能红外遥控器设计

基于单片机的多功能红外遥控器设计

基于单片机的多功能红外遥控器设计随着科技的发展,物联网的概念逐渐成为现实。

在这个信息化的时代,人们对于便捷的智能化设备也有了更高的需求。

尤其是对于红外遥控器,人们希望能够实现更多的功能,从而使得操作更加简单方便。

因此,设计一款基于单片机的多功能红外遥控器就显得尤为重要和必要。

首先,我们需要了解红外遥控器的原理。

它通过红外线控制电器的开关,现在已广泛应用于电视机、空调、DVD等家用电器的控制。

多功能遥控器是指可以控制多种电器,而基于单片机的多功能红外遥控器就可以实现更加多样化的功能。

在设计之初,需要考虑到多种电器的控制方案。

通常我们会选择采用通用的红外码库,也就是红外码与电器的对应关系表。

在程序中,会将不同的红外遥控码存入代码中,通过单片机MOSI口发送给红外发射器。

接收到红外信号的电器即可进行开关控制等操作。

而在实现多功能的控制方案中,则需要涉及到多个模块的开发和整合,例如LED的控制、语音模块和蓝牙模块等,使得我们的遥控器可以通过多种方式进行控制。

另外,在设计中常常会遇到红外码与设备的不匹配问题。

通常我们可以通过原始的遥控器保存红外命令来进行二次生成,或者私人定制生成红外码,从而保证不同品牌、不同型号的电器可以匹配使用。

这种方式也方便用户进行二次开发,实现更加个性化的控制方式。

最后,在红外遥控器的设计过程中,还需要考虑安全性和便携性。

在遥控器的物理设计上,需要考虑人体工学和抗摔性能,使得我们的遥控器可以更加舒适和耐用。

此外,为了保证遥控器的安全性,通常会添加密码保护功能,限制非法使用。

以上就是基于单片机的多功能红外遥控器的设计原理和要点,通过运用单片机技术和物联网技术相结合,我们可以实现更加丰富多彩的遥控器功能,使得人们的生活变得更加智能和便捷。

一种结合前端服务器的万能手机红外遥控器的设计方案

一种结合前端服务器的万能手机红外遥控器的设计方案

98《有线电视技术》 2017年第11期 总第335期1 引言随着人民群众生活水平的提高,家庭中的家用电器越来越多,使得家里的红外遥控器也越来越多,机顶盒、电视机、空调、电风扇等,每个家庭通常都会拥有多个遥控器。

遥控器的遗失、不易寻找以及不同种类遥控器电池的配备都给日常生活带来众多不便。

同时,随着智能手机的普及以及功能的日趋强大,为扩展智能手机的应用提供了必要的条件。

本文提出一种结合前端服务器的手机万能红外遥控器,可作为家庭家用电器的万能遥控设备。

通过定制的手机客户端下载遥控编码的方式,达成一个手机遥控器(手机)替换家里所有电器红外遥控器的目标,即实现对空调、电视机、机顶盒等家用电器的遥控。

2 设计方案结合前端服务器的手机万能红外遥控器设计包括:系统架构、手机APP、终端硬件、后台管理系统与服务器等几个方面。

2.1 系统架构结合前端服务器的手机万能红外遥控器总体系统架构,如图1所示,包括广电内网服务器、外网遥控代码服务器、后台管理系统与手机终端等部分。

外网代码服务器用于存放家用电器的红外遥控编码,广电内网服务器上的后台管理系统则完成对手机万能红外遥控器的用户管理与信息统计。

终端手机用户需下载并安装手机万能红外遥控器APP,具体而言,应先向广电内网服务器的后台管理系统提出下载红外遥控编码的申请,等待后台管理系统审核并认证终端用户,当认证成功后,手机APP 可在外网代码服务器下载红外遥控编码。

当终端用户下载红外遥控编码后,可使用手机自带或外接的红外发射头,通过相应的电器遥控界面,即可实现对家用电器的遥控。

2.2 手机APP作为手机万能红外遥控器操作界面的手机APP,可提供用户注册与登录、按电器类型与品牌下载遥控器编码、遥控器按键匹配、按使用场景对遥控器进行分类和选择、手机遥控器基本设置等功能。

通过内部集成的标准红外驱动及标准音频口驱动,手机APP 可支持手机自带红外发射头与通过音频接口连接的手机外接红外发射头的驱动。

红外遥控器设计(方案)

红外遥控器设计(方案)
红外遥控的特点是不影响周边环境的、不干扰其他电器设备。由于其无法穿透墙壁,故不同房间的家用电器可使用通用的遥控器而不会产生相互干扰;电路调试简单,只要按给定电路连接无误,一般不需任何调试即可投入工作;编解码容易,可进行多路遥控。
由于各生产厂家生产了大量红外遥控专用集成电路,需要时按图索骥即可。因此,现在红外遥控在加用电器、室内近距离(小于10米)遥控中得到了广泛的应用。
接收部分的红外接收管是一种光敏二极管。在实际应用中要给红外接收二极管加反向偏压,它才能正常工作,亦即红外接收二极管在电路中应用时是反向运用,这样才能获得较高的灵敏度。红外发光二极管一般有圆形和方形两种。
由于红外发光二极管的发射功率一般都较小(100mW左右),所以红外接收二极管接收到的信号比较微弱,因此就要增加高增益放大电路。前些年常用Μpc1373H、CX20106A等红外接收专用放大集成电路。最近几年不论是业余制作还是正式产品,大多都采用成品红外接收头。成品红外接收头的封装大致有两种:一种采用铁皮屏蔽;一种是塑料封装。均有三只引脚,即电源正(VDD)、电源负(GND)和数据输出(VO或OUT)。红外接收头的引脚排列因型号不同而不尽相同,可参考厂家的使用说明。成品红外接收头的优点是不需要复杂的调试和外壳屏蔽,使用起来如同一只三极管,非常方便。但在使用时注意成品红外接收头的载波频率。红外遥控常用的载波频率为38kHz这是由发射端所使用的455kHz晶振来决定的。在发射端要对晶振进行整数分频,分频系数一般取12,所以455kHz÷12≈37.9kHz≈38kHz。也有一些遥控系统采用36 kHz、40 kHz、56 kHz等,一般由发射端晶振的振荡频率来决定。
M50462AP的23脚外接元件组成了红外线驱动放大发射电路,它主要是由驱动管和红外发射二极管组成的,当23脚有指令码信输出时,该信号经驱动管VT放大后,加至红外发射二极管VD1上,遥控指令则以红外线的形式发射出去。

基于STM32万能学习型红外遥控器设计

基于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技术博客

(完整word)自学习万能红外遥控模块简介 - ChinaUnix博客-专业IT技术博客

自学习万能红外遥控模块软、硬件设计红外线遥控就是利用波长为0.76~1。

5μm之间的近红外线来传送控制信号的。

红外遥控是目前家用电器中用得较多的遥控方式,在家用电器、室内近距离(小于10米)遥控中得到了广泛的应用。

但各产生的遥控器不能相互兼容。

目前市场上常见的万能遥控器只能对某几种产品进行控制,不是真正的“万能”,而且不能对新上市的产品进行控制。

所以,如何实现对种类繁多得红外家电设备进行控制是本系统必须解决得任务之一。

本模块用单片机对红外遥控器信号接收和转发的方法,由于只关心发射信号波形中的高低电平的宽度,不管其如何编码,所以能实现绝大部分红外设备的遥控。

自学习万能红外遥控模块整体框图如下:本模块主要要实现的功能为:●管理键盘和液晶,用户进行红外遥控器的学习等操作;●学习各种红外设备的编码并记录保存下来;●将学到的红外设备的编码发射出去,实现对红外设备的遥控;●与系统主机进行通讯,执行主机发送过来的命令,实现远程控制。

一.硬件设计1.红外信号的的发射发射部分的主要元件为红外发光二极管。

它实际上是一只特殊的发光二极管,由于其内部材料不同于普通发光二极管,因而在其两端施加一定电压时,它便发出的是红外线而不是可见光。

目前大量使用的红外发光二极管发出的红外线波长为940nm左右。

用遥控脉冲信号调制38kHz方波,然后将已调波放大,驱动红外发光二极管,就可以得到遥发射信号.该部分原理图如下:图中,与非门4011组成振荡电路,通过调整电阻VR3的值可调整调制频率。

SEND脚连接单片机,是信号的输入端。

有些遥控器的载频可能是40kHz,只须稍微加大发射功率仍然可用38kHz载频使其接收电路动作。

2.红外信号的接收和波形测量所有红外遥控器的输出都是用编码后串行数据对38~40kHz的方波进行脉冲幅度调制而产生的。

如果直接对已调波进行测量,由于单片机的指令周期是微秒(μs)级,而已调波的脉宽只有20多μs,会产生很大的误差。

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

课程设计报告课程名称:单片机原理及应用课程设计设计题目:万能红外线遥控器的设计系别:通信与控制工程系专业:电子信息工程班级:09级1班学生姓名:学号:09409146 09409147起止日期:2011年12月19日~ 2011年12月30日指导教师:谭周文田汉平教研室主任:侯海良摘要本设计详细介绍了学习型万能遥控器的软硬件设计方法,并给出了具体的各单元电路设计、程序设计及主程序流程图。

在硬件设计中,我们选取STC89C52型号单片机为核心器件,并给出外围电路模块如红外接收模块、红外发射模块、显示模块、以及外部控制模块等组成部分的设计实现。

软件部分采用keil进行C程序设计与编译,并将编译后产生的hex文件通过STC_ISP_V479下载到单片机中,进行调试。

本学习型遥控器采用最小化应用模式设计,电路简单,尤其是通过大量不同遥控码的特征分析,在遥控码的读入时选择了最佳采样间隔,使遥控码的学习成功率大大提高。

关键词:遥控学习;红外解码;单片机控制;红外遥控目录设计要求错误!未定义书签。

前言错误!未定义书签。

1方案论证错误!未定义书签。

方案错误!未定义书签。

方案二错误!未定义书签。

方案对比与选择错误!未定义书签。

2基本功能模块设计与说明错误!未定义书签。

初始化模块错误!未定义书签。

遥控码读入处理模块错误!未定义书签。

遥控码发射处理模块错误!未定义书签。

主模块错误!未定义书签。

3调试与操作说明错误!未定义书签。

学习型红外遥控器的仿真电路原理图的设计错误!未定义书签。

程序的编译及下载错误!未定义书签。

实际电路的测试错误!未定义书签。

4课程设计心得体会错误!未定义书签。

5元器件及仪器设备明细错误!未定义书签。

6参考文献错误!未定义书签。

7致谢错误!未定义书签。

8附录错误!未定义书签。

学习型红外遥控器的设计设计要求学习型红外线遥控器要求可以学习不同遥控器的某个按键码功能。

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

前言本课程设计是一个基于单片机的学习型红外遥控器,能够学习不同遥控器的某个按键功能。

利用单片机STC89C52对多个红外遥控编码的脉冲宽度进行测量,并原封不动地把发射信号中高、低电平的时间宽度记忆至扩展存储区的指定地址。

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

1方案论证方案目前,市场上一般设备系统均采用专用的遥控器编码及解码集成电路,具有制作简单、间隔低廉等特点,但由功能键数及功能受到特定的限制,只适合于某一专用电器产品的应用,应用范围受到限制。

而采用单片机进行遥控系统的应用设计,具有编程灵活多样,操作码个数可随意设定等优点。

为了实现遥控码的记录还原功能,系统应具有红外线的接收解码、红外线调制发射、操作按键和功能控制功能等单元。

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

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

遥控码的脉宽数据可用红外线接收器解码后送单片机读入,发射时有单片机产生40kHZ红外调制信号送红外发射管发射.单键学习型红外遥控器的实现方案框图如图1所示。

图1 单键学习型红外遥控器系统框图方案二方案二的系统由STC89C52为核心,扩展4KB的EEPROM用来存储遥控信号,系统采用12MHZ晶振,选用AT24LC32它可在线电擦除和电写入的存储器,其容量为4KB。

遥控器的结构框图如图2所示。

图2 学习型红外遥控器系统框图方案对比与选择方案二采用EEPROM来存储遥控信号,这样需要扩展存储器。

而方案一不需要扩展存储器,直接利用STC89C52中的ROM。

同时,方案二必定会增加成本,同时电路较复杂。

综上所述,所以选择方案一来设计红外遥控器。

2基本功能模块设计与说明初始化模块初始化模块的主要任务时清存放脉宽数据单元,关闭学习及发射指示灯,关闭遥控输出口,将定时器T1设为8位自动重装模式,设置中断。

遥控码读入处理模块遥控码的学习处理程序主要是将原遥控器发出的脉冲码宽依次存入内存单元,存放规则为偶数地址(0、2、4、6等)存放高电平脉宽数据,奇数地址(1、3、5等)存放低电平脉宽数据。

定义文件中划了206个单元用于存放脉宽数据,符合常用遥控器的最大码长要求。

遥控码读入程序流程图如图2所示。

本程序在编程设计中非常重要,通过大量的、不同的遥控码波形进行实验测试分析,遥控码的帧间歇位宽度均在10ms以上,起始码宽度在100us~20ms之间,编码位在100us~之间。

为确保所有遥控器学习的成功,可采用以下程序实现方法。

读起始位方法:由于起始位的码宽范围较大,因此计数单元采用单独的2字节,计数周期约为15us,这样按65536*15us算,最大可存起始位脉宽为983ms。

当输入为高电平时,停止起始位计数,进入高电平计数。

读遥控码的方法:采用1字节计数单元对(高电平或低电平)进行宽度计数,电平跳变时结束计数,并将数据存入规定的地址。

在高电平码计数时,当计数值大于255时(宽度大于),则判定为结束帧间隔位,在相应存储单元写入数据0x00作为结束标志。

遥控码发射处理模块遥控码发射程序将原存于内存单元的脉冲数据还原成40KHZ方波,利用定时/计数器T1中断功能产生40KHZ载波,调制波从脚送出。

利用原读入时的低电平持续时间控制产生40KHZ方波的时间,而原读入时为高电平的脉宽数据将作为停发40KHZ方波的持续时间控制。

遥控码发射处理程序图如图5所示电路原理图的设计图3所示为该学习机遥控器的电路原理图,单片机使用STC89C52。

其中:口接遥控器发射按键;口用作状态指示,绿灯亮代表学习状态,绿灯灭代表码已读入;口用作指示遥控键的操作,闪烁代表遥控码正在发射之中;第9脚为单片机的复位脚,采用RC上电复位电路;第12脚为单片机中断输入口,用于工作方式的转换控制,当INT0脚为低电平时,系统进入学习状态;第14脚用于红外线接收解码器的输出信号输入第15脚作为遥控码红外调制信号的输出口,输出40KHZ的方波脉冲;第18、19脚接12M晶振。

由于采用最小化应用系统,因此控制线PSEN(片外取指控制)、ALE(地址锁存控制)不用,EA(片外存储器选择)接高电平,使用片内程序存储器。

红外线接收器使用市场上用于电视机的三端一体化红外接收解调器,三极管可用9013系列,红外线发射二极管也用普通遥控器中使用的器件。

图3 单键遥控码学习控制器电路原理图程序流程图主程序在完成上电初始化后进行按键查询,当确认有键按下时将编码发出去。

主程序流程图6所示图 4 遥控码读入程序流程图图 5 遥控码发射处理程序图图6 主程序流程图3调试与操作说明程序的编译及下载1、创建工程并选择AT89C52型号芯片。

2、新建文件。

3、编写源程序并编译,如图7所示。

图7 学习型遥控器的程序编译图4、打开STC-ISP下载软件,选择STC89C52RC型号的芯片,选择串口1并导入编译生成的hex文件。

5、将单片机与计算机的串口相连,并将程序下载至单片机,如图7所示。

图8 学习型红外遥控器程序下载图实际电路的测试程序下载进单片机后,打开单片机开发板上电源接口开关以及P1口电源切换开关,按下中断0控制键,待绿色的流水灯亮后,将电视遥控器对准单片机开发板上的红外接收头按下某个按键,当绿灯熄灭时,此时代表学习完成了,然后关闭P1口电源切换开关按下单片机开发板上的发射键对电视机进行遥控操作。

测试可知,本次设计的学习型遥控器完全符合要求,达到了预期目的。

4课程设计心得体会本次课程设计的基于单片机学习型红外遥控器,在keil软件上进行了进行C程序的设计、编译,并将输出的的hex文件通过STC_ISP_V479下载到单片机中,最后在单片机开发板上进行调试,测试硬件电路功能。

经过实践验证,本设计是正确的。

测试中,我们选取了电视机的遥控器作为学习对象,通过学习遥控器上某个键的功能,能实现单片机对电视机的控制。

达到预期目的,设计完全成功。

本文给出的设计思想也适用于其他基于单片机的系统设计。

我们这次课程设计是通过小组的讨论与实验所完成的,在进行过程中碰到了一些困难。

首先,本次设计是采用keil与STC_ISP_V479软件来完成的。

因此对于这两种软件的使用也提出了一定的要求。

其次,由于在设计遥控码的码宽时,参数设置不够恰当,导致单片机无法成功对遥控器的按键功能进行学习。

再次,在硬件电路功能测试过程中,由于实际的单片机开发板的电路连接与本课程设计的硬件电路不完全一致,导致无法进行调试。

通过修改信号输入输出端口,并结合实际的单片机开发板硬件连接进行外部控制,最终成功实现了学习型遥控器的学习功能。

通过这次实验我们感觉到动手能力及思维方式得到很大的加强。

在这次课程设计中,我们学会了怎样去根据课题的要求运用学过的知识去设计电路和调试电路。

从中我们发现了实践的重要性,在以后的学习中我们要加强理论与实际的结合。

而且这次实验也体现了团队合作的重要性与探索精神的必要性。

5元器件及仪器设备明细表1 元器件及仪器设备明细表6参考文献[1] 舒经文. 最新彩电机芯及其遥控系统的原理与维修[M]. 北京: 电子工业出版社, 1993[2] 李华. MCS-51系列单片机实用接口技术[M]. 北京: 航天航空大学出版社,1999[3] 麦山.基于单片机的协议红外遥控系统.电子技术[M]: 1998[4] 何立民.MCS-51系列单片机应用系统设计,系统配置与接口技术[M].北京:航空航天大学出版社,1995[5] 刘宁生周哨山.脉冲与数字电路[M].北京:中国广播电视出版社,1995[6] 康光华,陈大钦. 电子技术基础(模拟部分)[M].高等教育出版社..第四版[7]李建华. 实用遥控器原理与制作[M].北京: 人民邮电出版社,19967致谢本次课程设计主要由我们两人共同完成,其间当然老师也同样是付出了大量的时间和精力来帮助我们。

不论结果怎样,我们都会欣然接受,因为我们努力过了。

同时我们也要衷心地感谢我们所有的老师,以及帮助我们的同学,要是没你们的帮助我们是不能这么好的完成这次课程设计的。

8附录/*********************************************************************///// 学习型遥控器// 使用keil c51/*********************************************************************///使用AT89C52单片机,12MHZ晶振,#include <>#include <> //_nop_();延时函数用#define uchar unsigned char#define uint unsigned intsbit studylamp=P1^7; //学习状态指示灯sbit lamp=P1^2; //发射指示灯sbit studykey=P3^2; //学习键(中断口)sbit remotein=P1^1; //遥控信号输入口sbit remoteout=P1^0; // 遥控输出口sbit txkey=P3^3 ; //发射键//uint i,j,m=255,n,k,s,t;uchar idata remotedata[206];//存肪冲宽度数据用uint head,tou; //存起始位用uint remdata;/////*********1毫秒延时程序**********/delay1ms(uint t){for(i=0;i<t;i++)for(j=0;j<120;j++);return -1;}///***********初始化函数**********/ clearmen(){studylamp=1; //关学习灯lamp=1; //关发射指示remoteout=1; //关遥控输出remotein=1; //for(i=0;i<206;i++) //清内存{remotedata[i]=0x00;}IE=0x00;IP=0x01;TMOD=0x22; //8位自动重装模式PCON=0X00;TH1=0xf3; //38KHZ初值TL1=0xf3;IT0=1;EX0=1; //外中断允许EA=1; //开总中断EX1=0;return -1;}/**********键功能函数************/ keywork(){if(txkey==0){//while(txkey==0);remoteout=0;n=0;delay1ms(1); //先发送低电平ET1=1;TR1=1; //发送引导码高电平for(i=(head-55);i>0;i--){;}ET1=0;TR1=0;remoteout=0; //发起始码低电平for(i=tou;i>0;i--){_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop _();_nop_();}while(1){remoteout=1;ET1=1;TR1=1; //发高电平for(i=remotedata[n];i>0;i--){;}ET1=0;TR1=0;n++; remoteout=0;if(remotedata[n]==0x00){delay1ms(10);break;}//for(i=remotedata[n];i>0;i--){_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_n op_();_nop_();}n++;}}return -1;}///***********主函数***************/main(){n=0;head=0;tou=0;remdata=0x00;clearmen(); //初始化while(1){keywork(); //按键扫描}}///*********40KHZ发生器***********///定时中断T1void time_intt1(void) interrupt 3{remoteout=~remoteout;}/////***********学习函数***********///外中断0void intt0(void) interrupt 0{while(studykey==0); //等待键释放下降沿触发EA=0;for(i=0;i<206;i++) //清内存{remotedata[i]=0x00;}head=0;tou=0;studylamp=0;lamp=1;n=0;remdata=0x00;while(remotein==1) ; //等待遥控码输入while(remotein==0){_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_ nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();head++;}//接收引导码while(remotein==1){_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_ nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();tou++;}//接收起始码while(1){ while(remotein==0){_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_(); _nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();remdata++;}remotedata[n]=remdata;n++;remdata=0x00;while(remotein==0); //确定接收完while(remotein==1){_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_ nop_();_nop_();_nop_();_nop_();_nop_();_nop_();_nop_();remdata++;}if(remdata>m) //高电平>5毫{remotedata[n]=0x00;EX0=1;EA=1;goto end;}remotedata[n]=remdata;n++; //存高电平脉while(remotein==1); //确定接收完remdata=0x00; //脉宽计数器清}end: lamp=0;studylamp=1;}////*********************结束//**************************//。

相关文档
最新文档