红外遥控开关
摘要
遥控技术是对受控对象进行远距离控制和监测的技术。它是利用自动控制技术,通信技术和计算机技术而形成的一门综合性技术。一般都是指对远距离的受控对象的单一的或两种极限动作进行控制的技术,在人们的生产生活中具有广泛的应用空间。根据控制方式的不同,一般分红外遥控、声控和无线遥控,俗称“三遥”。 伴随着人们的物质文化生活水平日益提高,各种各样的家用电器走进了千家万户,其中,大多数的家用电器都有各自不同的遥控器,人们常常为了控制某台电器而到处寻找其对应的遥控器,这样,就给人们的生活带来了很多不便。而红外线遥控则是目前最广泛的一种通信和遥控手段。由于红外线遥控器具有体积小、功耗低、功能强、成本低等特点。因此,彩电、录像机、音响设备、空调、玩具、门铃以及遥控汽车路牌等其它小型装置上也纷纷采用红外线遥控。
本系统采用单片机AT89S51作为本设计的核心元件,利用红外线遥控发射、接收的工作原理以及单片机外部中断的原理而设计的一款遥控开关。当一体化红外接收器接收到红外遥控信号后,将光信号转变成电信号,经放大、解调、滤波后,将原编码信号送入单片机AT89S51中进行信号识别、解码,然后进行相应的处理,达到控制电器的目的。
关键词:遥控技术 单片机 红外 编码 解码
1
桂林航天工业高等专科学校毕业设计(论文)
Abstract
Remote control technology is controlled objects of remote control and monitoring technology. It is the use of automatic control technology, the communication technology and computer technology, in the form of a comprehensive technology. Generally refers to the distant controlled object's single or two extreme action control technology, in the people's production and life have extensive application space. According to the control mode of different, generally share out bonus, sonic and the remote wireless remote control, commonly known as the \"three control\". With people's material and cultural life level enhances increasingly, all kinds of household appliances into the innumberable families, among them, most of the household appliances are all of different remote, people often in order to control a station appliances and looking for its corresponding remote, so, give people's life has brought much inconvenience. And infrared remote control is the most extensive a communications and remote control method. Due to the infrared remote control with small size, low power consumption, the function is strong and low costs. Therefore, TVS, VCRS, audio equipment, air conditioning, toys, the doorbell and other small car signpost remote device are adopting infrared remote control.
The system USES AT89S51 single-chip microcomputer as the core components, this design using infrared remote control transmitting and receiving the working principle and the principle of microcontroller external interruption designed one of remote control switch. When integration infrared receiver receive infrared remote control signal after, will change into electrical signals, light signals through enlargement, demodulation, filtering, will the original coding signal into SCM in AT89S51 signal recognition, decoding, then carries on the corresponding processing, achieve the purpose of control electric appliance.
key words: Control technology SCM Infrared code decode
2
桂林航天工业高等专科学校毕业设计(论文)
目 录
第一章 系统介绍和设计原理 ……………………………………………4
1.1引言 …………………………………………………………………4 1.2遥控器 ………………………………………………………………5 1.3系统结构及原理 ……………………………………………………6 1.4系统框图 ……………………………………………………………6 1.5系统设计思想…………………………………………………………6 1.6器件选择 ……………………………………………………………7 1.7遥控距离的影响因素…………………………………………………7
第二章 系统硬件设计
2.1有关知识的介绍 ………………………………………………………………8
2.1.1单片机AT89S51的知识介绍 ………………………………………8 2.1.2红外线及器件的基本知识 ………………………………………12 第三章 系统软件设计
3.1红外遥控发射器及其编码 ………………………………………………14 3.2 红外发射及编码原理图 …………………………………………15 3.3红外编码按键图 ………………………………………………14 3.4红外解码原理图 ………………………………………………18 3.5接收器及解码 …………………………………………………………18
第四章 程序流程图 ………………………………………………………………19 第五章 程序清单…………………………………………………………………20
小结 ………………………………………………………………………23 参考文献 ………………………………………………………………24
3
桂林航天工业高等专科学校毕业设计(论文)
第一章 系统介绍和设计原理
1.1引言
随着电子科技的发展,遥控技术的出现,目前市场上出现了越来越多的红外线遥控家电设备;逐步提高了人们的生活水平。基于此,本设计中涉及电子产品技术领域,特指一种使用方便的红外线遥控灯光控制器开关。采用这种方式让使用者在使用过程中更加方便快捷,并且本实用性可根据实际情况对使用装置进行有效性调节。该红外线遥控控制器,包括:利用红外线发射的遥控器为主体,以及相应的接收器,其中在遥控器主体上设置有若干控制按键,遥控器主体包括控制芯片、发射器、电源,其特征在于:遥控器主体上共设置4个控制按键,所述发射器的一端连接于控制芯片的一引脚,其另一端与三极管集电极连接,三极管的基极接入控制芯片,三个控制按键一端分别接入控制芯片,其另一端接入所述三极管的发射极,电源的两极分别与发射器及三极管发射极连接。例如:人们坐在家中手执遥控器便可以方便快捷地将电视机、照明灯、电脑等家用电器打开;做到足不出户便可以开启私家车等。本文设计了一款由单片机AT89S51编程实现的遥控开关,这款遥控开关具有遥控开启和关闭多种家用电器的功能。红外线遥控是目前使用最广泛的一种通信和遥控手段。由于红外线遥控装置具有体积小、功耗低、功能强、成本低等特点,因而,继彩电、录像机之后,在录音机、音响设备、空调机以及玩具等其它小型电器装置上也纷纷采用红外线遥控。工业设备中,在高压、辐射、有毒气体、粉尘等环境下,采用红外线遥控,由于红外线在频谱上居于可见光之外,具有光波的直线传播特性,不易产生相互间的干扰,是很好的信息传输媒体,且能有效地隔离电气电磁等干扰,取得很好遥控效果。
1.2遥控器
1.2.1遥控器简介
遥控器是一种用来远控机械的装置。现代的遥控器,主要是由集成电路电板和用来产生不同讯息的按钮所组成。最早用来控制电视的遥控器是美国一家叫Zenith的电器公司(这家公司现在被LG收购了),在1950年代发展出来的。 一开始是有线的。1955年,该公司发展出一种被称为“Flashmatic”的无线遥控装置。但这种装置没办法分辨光束是否是从遥控器而来,而且也必需对准才可以控制。1956年罗伯.爱德勒(Robert Adler)开发出称为“Zenith Space Command”的遥控器,这也是第一个现代的无线遥控装置,他是利用超声波来调频道和音量,每个按键发出的频率不一样,但这种装置也可能会被一般的超声波所干扰,而且有些人及动物(如狗)听的到遥控器发出的声音。1980年代,发送和接收红外线的半导体装置开发出来时,就慢慢取代了超声波控制装置。即使其他的无线传输方式(如蓝牙)持续被开发出来,这种科技直到现在还持续广泛被使用。
4
桂林航天工业高等专科学校毕业设计(论文)
1.2.2遥控器组成
(1)CPU采用AT89C2051单片机为主控芯片;
(2)发射部分包括键盘矩阵、编码调制、LED红外发送器。使用AT89C2051芯片将按键信号调制在38KHz的载波信号通过三极管的放大后发射出去。
1.3 系统结构及原理
红外遥控主要由形成遥控信号的微处理器芯片、晶体振荡器、放大晶体管、红外发光二极管以及键盘矩阵组成。其工作原理如下,发射电路是采用红外发光二极管来发出经过调制的红外光波;红外接收电路由红外接收二极管、三极管或硅光电池组成,它们将红外发射器发射红外光转换为相应的电信号,再送后置放大器。通用红外遥控系统由发射和接收两大部分组成,应用编/解码专用集成电路芯片来进行控制操作. 发射部分的主要元件为红外发光二极管。它实际上是一只特殊的发光二极管,由于其内部材料不同于普通发光二极管,因而在其两端施加一定电压时,它便发出的是红外线而不是可见光。 目前大量使用的红外发光二极管发出的红外线波长为940nm左右,外形与普通发光二极管相同,只是颜色不同。红外发光二极管一般有黑色、深蓝、透明三种颜色。 判断红外发光二极管好坏的办法与判断普通二极管一样:用万用表电阻挡量一下红外发光二极管的正、反向电阻即可。红外发光二极管的发光效率要用专门的仪器才能精确测定,而业余条件下只能用拉距法来粗略判定。 接收部分的红外接收管是一种光敏二极管。 在实际应用中要给红外接收二极管加反向偏压,它才能正常工作,亦即红外接收二极管在电路中应用时是反向运用,这样才能获得较高的灵敏度。
红外接收头均有三只引脚,即电源正(VDD)、电源负(GND)和数据输出(VO或OUT)。红外接收头的引脚排列因型号不同而不尽相同,可参考厂家的使用说明。成品红外接收头的优点是不需要复杂的调试和外壳屏蔽,使用起来如同一只三极管,非常方便。但在使用时注意成品红外接收头的载波频率.红外遥控常用的载波频率为38kHz,这是由发射端所使用的455kHz陶振来决定的。在发射端要对晶振进行整数分频,分频系数一般取12,所以455kHz÷12≈37.9 kHz≈38kHz。也有一些遥控系统采用36kHz、40kHz、56kHz等,一般由发射端晶振的振荡频率来决定。
5
桂林航天工业高等专科学校毕业设计(论文)
如图1.2所示。发射部分包括键盘矩阵、编码调制、LED红外发送器;接收部分包括光、电转换放大器、解调、解码电路。
矩阵 键盘 编码调制 LED
(a)红外遥控发射框图
光/电放大
解调 解码电路
图1.2 (b) 红外遥控接收框图
1.4 系统框图
遥控开关是在通用红外遥控系统的基础上加以改进实现的。其实质就是将红外遥控接收部分采用单片机 AT89S51 来控制。图1.3所示为遥控开关的系统构成框图。
彩 色 电 视 机 遥 控 器 遥控接收头 A T 8 9 S 5 1 晶振 执行器 电器插座 复位 受控电器
图1.3 遥控开关系统框图
1.5 系统设计思想
本系统采用单片机 AT89S51 作为本设计的核心元件,利用红外线遥控发射、接收的工作原理以及单片机外部中断的原理而设计的一款遥控开关。红外遥控发射器是利用红外线作载体传送信息的,发射部分包括键盘矩阵、编码调制、LED红外发送器;接收部分包括光、电转换放大器、解调、解码电路。
6
桂林航天工业高等专科学校毕业设计(论文)
1.6 器件选择
本系统在设计过程中主要选取了以下一些器件: 单片机:AT89S51;
遥控发射器:采用LC7461专用芯片; 红外遥控接收器; 继电器;
显示器件:发光二极管; PNP型三极管; 蜂鸣器。
1.7遥控距离的影响因素
(1)、发射功率。发射功率大则距离远,但耗电大,容易产生干扰;
(2)、接收灵敏度。接收器的接收灵敏度提高,遥控距离增大,但容易受干扰造成误动或失控;
(3)、天线。采用直线型天线,并且相互平行,遥控距离远,但占据空间大,在使用中把天线拉长、拉直可增加遥控距离;
(4)、高度。天线越高,遥控距离越远,但受客观条件限制;
(5)、障碍物。目前使用的无线遥控器使用国家规定的UHF频段,其传播特性和光近似,直线传播,绕射较小,发射器和接收器之间如有墙壁阻挡将大大打折遥控距离,如果是钢筋混泥土的墙壁,由于导体对电波的吸收作用,影响更甚。
7
桂林航天工业高等专科学校毕业设计(论文)
第二章 系统硬件设计
2.1 相关知识的介绍
2.1.1 单片机AT89S51的知识介绍 2.1.1.1 单片机及其发展应用
单片机是微型计算机的一个重要分支。它使计算机从海量数值计算进入智能控制领域,并由此开创了工业控制的新局面。从此,计算机技术在两个重要的领域——通用计算机领域和微控制器领域比翼齐飞,并逐渐融入人们的日常生活。
单片机也被称为微控制器(Microcontroller),是因为它最早被用在工业控制领域。单片机由芯片内仅有CPU的专用处理器发展而来。最早的设计理念是通过将大量外围设备和CPU集成在一个芯片中,使计算机系统更小,更容易集成进复杂的而对体积要求严格的控制设备当中。
单片机是一种集成在电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的计算机系统。将运算器、控制器、存储器和各种输入/输出接口等计算机的主要部件集成在一块芯片上,就能得到一个单芯片的微型计算机。它虽然只是一个芯片,但在组成和功能上已经具有了计算机系统的特点,因此称之为单片微型计算机(Single-Chip Microcomputer),简称单片机。由于单片机的设计通常是面向控制、嵌入对象体系中的,有别于通阳的微型计算机,因此又称为微控制器(Micro-Controller)、嵌入式微控制器(Embedded-Micr-Controller)。
用作单片机系统的输入.则解决了常规矩阵键盘线路板过大、布线复杂、占用I/O口过多的弊病。而且通过使用遥控器,操作时可实现人与设备的分离,从而更加方便使用。
2.1.1.2 单片机主要特性及内部结构
AT89S 系列单片机有AT89S51~AT89S53和AT89S8252等四种类型,其芯片内部结构基本相同,进部分的电路模块功能略有不同。AT89S51是这个系列的基本类型,它将通用CPU和在线可编程Flash存储器集成在一个芯片上,形成功能强大、使用灵活和具有较高性能价格比的单片微机。其主要特性及功能如下:
● 8为CPU;
● 内含 8KB Flash 程序存储器,可在线编程,擦写周期可达1000次;
8
桂林航天工业高等专科学校毕业设计(论文)
● 内含128字节的RAM;
● 4个8位并行I/O接口,共32根线; ● 2个16位可编程定时/计数器;
● 具有6个中断源,5个中断矢量,2级中断优先级的中断结构系统; ● 全双工UART串行通信口;
● 具有片内集成看门狗定时器(Watchdog Timer); ● 26个特殊功能寄存器;
● 具有两个数据指针 DPTR0和 DPTR1; ● 具有在线可编程功能ISP端口; ● 具有断电标志POF;
● 具有掉电状态下的中断恢复模式; ● 具有低功耗节电运行模式;
● 振荡器和时钟电路稳定,工作主频为0~33MHZ; ● 电源电压范围为DC4.0~5.5V。 ● 灵活的ISP编程(字或字节模式)
2.1.1.3 单片机的引脚排列及功能 一、AT89S51单片机引脚介绍
AT89S51有PDIP、PLCC、TQFP三种封装方式,其中最常见的就是采用40Pin封装的双列直接PDIP封装,外形结构如图2.1.1.3。
芯片共有40个引脚,引脚的排列顺序为从靠芯片的缺口(见右图)左边那列引脚逆时针数起,依次为1、2、3、4。。。40,其中芯片的1脚顶上有个凹点(见右图)。在单片机的40个引脚中,电源引脚2根,外接晶体振荡器引脚2根,控制引脚4根以及4组8位可编程I/O引脚32根。
9
桂林航天工业高等专科学校毕业设计(论文)
图2.1.1.3 单片机的引脚排列
1、主电源引脚(2根)
VCC(Pin40):电源输入,接+5V电源 GND(Pin20):接地线 2、外接晶振引脚(2根)
XTAL1(Pin19):片内振荡电路的输入端 XTAL2(Pin18):片内振荡电路的输出端
使用内部振荡电路时,用来接石英晶体和电容;使用外部时钟时,用来输入时钟脉冲。
3、控制引脚(4根)RST/VPP(Pin9):复位信号输入端。AT89S51接能电源后,在时钟电路作用下,该脚上出现两个机器周期以上的高电平,使内部复位。第二功能是VPD,即备用电源输入端。当主电源Vcc发生故障,降低到低电平规定值时,VPD将为RAM提供备用电源,发保证存储在RAM中的信号不丢失。
ALE/PROG(Pin30):地址锁存允许信号, 在访问片外丰储器时,若ALE为有效高电平,则P0口输出地址低8位,可以用ALE信号作外部地址锁存信号。公式(2—1)fALE=1/6fOSC ,也可作系统中其它芯片的时钟源。第二功能~PROG是对EPROM编程时的编程脉冲输入端。
PSEN(Pin29):外部存储器读选通信号, 低电平有效。
10
桂林航天工业高等专科学校毕业设计(论文)
EA/VPP(Pin31):程序存储器的内部和外部程序存储器选择线,接低电平从外部程序存储器读指令,如果接高电平则从内部程序存储器读指令。~EA=0时访问外部ROM 0000H—FFFFH;~EA=1时,地址0000H—0FFFH空间访问内部ROM,地址1000H—FFFFH空间访问外部ROM。
4、可编程输入/输出引脚(32根)
AT89S51单片机有4组8位的可编程I/O口,分别位P0、P1、P2、P3口,每个口有8位(8根引脚),共32根。每一根引脚都可以编程,比如用来控制电机、交通灯、霓虹灯等,开发产品时就是利用这些可编程引脚来实现我们想要的功能,尽情发挥你的想象力吧,实现你想要的:)强大无比。。。
PO口(Pin39~Pin32):8位双向I/O口线,既可作地址/数据总线口用,也可作普通I/O口用。名称为P0.0~P0.7
P1口(Pin1~Pin8):8位准双向通用I/O口线,名称为P1.0~P1.7
P2口(Pin21~Pin28):8位准双向I/O口线,既可作地址总线口输出地址高8位,也可作普通I/O口用。名称为P2.0~P2.7
P3口(Pin10~Pin17):8位准双向I/O口线,多用途口,既可作普通I/O口,也可按每位定义的第二功能操作。名称为P3.0~P3.7
上面就是AT89S51单片机引脚的简单介绍,其它51系列家族的单片机8031、8051、89C51等引脚和89S51兼容,只是个别引脚功能定义不同。 二、AT89C2051单片机引脚介绍
AT89C2051为20引脚小型封装,2K内部程序存储器,15个可编程I/O口线,没有P0口和P2口的16根I/O线,内部集成了一个模拟比较器。AT89C2051单片机的引脚排列如下图所示。
芯片共有20个引脚,引脚的排列顺序为从靠芯片的缺口(见上图)左边那列引脚逆时针数起,依次为1、2、3。。。20,在单片机的20个引脚中,电源引脚2根,外接晶体振荡器引脚2根,复位引脚1根以及P1、P3口可编程I/O引脚15根。
11
桂林航天工业高等专科学校毕业设计(论文)
1、主电源引脚(2根)
VCC(Pin20):电源输入,接+5V电源 GND(Pin10):接地线 2、外接晶振引脚(2根)
XTAL1(Pin5):片内振荡电路的输入端 XTAL2(Pin4):片内振荡电路的输出端 3、控制引脚(1根)
RST/VPP(Pin1):复位引脚,引脚上出现2个机器周期的高电平将使单片机复位。 4、可编程输入/输出引脚(15根)
P1口: 8位准双向I/O口线,P1.0~P1.7 ,共8根 P3口: 8位准双向I/O口线,P3.0~P3.5、P3.7,共7根
我们同时发现:标准51单片机有32根可编程I/O口线,89C2051精简掉P0、P2口16根I/O线后,应该还有16根I/O口线,现在只有15根,另一根跑那里去了呢?!前面讲到AT89C2051内部集成了一个模拟比较器,正是因为集成了模拟比较器把另一根引线占用了,比较器的输出端占用了一个I/O口,它就是P3.6口,引脚P3.6没有接出来的,所以少一根I/O口线。在编程时,P3.6就只能用来读比较器的状态了,不能象其它I/O口一样用来驱动外部指示灯等设备了,不过模拟比较器很实用的,在开发中就可以省去外加比较器的麻烦,右图为比较器的原理。
2.1.2 红外线及器件的基本知识 2.1.2.1 什么是红外线?
红外线遥控器在家用电器和工业控制系统中已得到广泛应用,了解他们的工作原理和性能、进一步自制红外遥控系统,也并非难事。 1.红外线的特点:
太阳光线大致可分为可见光及不可见光。红外线是太阳光线中众多不可见光线中的一种,可见光经三棱镜后会折射出(若按波长排列,依次从短到长)紫、蓝、青、绿、黄、橙、红颜色的光线(光谱)。由德国科学家霍胥尔于1800年发现,红光外侧的光线,在光谱中波长自0.76至400微米的一段被称为红外光,又称红外线。
红外线属于电磁波的范畴,是一种具有强热作用的放射线。红外线的波长范围很宽,人们将不同波长范围的红外线分为近红外、中红外和远红外区域,相对应波长的电磁波称为近红外线、中红外线及远红外线。
红外线是一种光波,它的波长比无线电波短,比可见光长。肉眼看不到红外线,任何物体都发射着红外线。热物体的红外线辐射比冷物体强。
红外线的特点是不干扰其他电器设备工作,也不会影响周边环境。电路调
12
桂林航天工业高等专科学校毕业设计(论文)
试简单,若对发射信号进行编码,可实现多路红外遥控功能。 2.1.2.2 红外线的划分
根据使用者的要求不同,红外线划分范围很不相同。 把能通过大气的三个波段划分为: 近红外波段 1~3微米 中红外波段 3~5微米 远红外波段 8~14微米 根据红外光谱划分为: 近红外波段 1~3微米 中红外波段 3~40微米 远红外波段 40~1000微米 医学领域中常常如此划分: 近红外区 0.76~3微米 中红外区 3~30微米 远红外区 30~1000微米
医用红外线可分为两类:近红外线与远红外线。近红外线或称短波红外线,波长0.76~1.5微米,穿入人体组织较深,约5~10毫米;远红外线或称长波红外线,波长1.5~400微米,多被表层皮肤吸收,穿透组织深度小于2毫米。(但在实际应用中通常把2.5微波以上的红外线通称为远红外线。)
13
桂林航天工业高等专科学校毕业设计(论文)
第三章 系统软件设计
3.1 红外遥控发射器及其编码
遥控发射器专用芯片很多,根据编码格式可以分成两大类,这里我们以运用比较广泛,解码比较容易的一类来加以说明,现以日本SANYO公司的的LC7461 组成发射电路为例说明编码原理。当发射器按键按下后,即有遥控码发出,所按的键不同遥控编码也不同。这种遥控码具有以下特征:
遥控器发射的信号由一串O和1的二进制代码组成.不同的芯片对0和1的编码有所不同。通常有曼彻斯特编码和脉冲宽度编码。采用脉宽调制的串行码,以脉宽为0.565ms、间隔0.56ms、周期为1.125ms 的组合表示二进制的“0”;以脉宽为0.565ms、间隔1.685ms、周期为2.25ms 的组合表示二进制的“1”。在编写解码程序时.通过判断脉冲的宽度,即可得到0或1。上述“0”和“1”组成的42 位二进制码经38kHz 的载频进行二次调制以提高发射效率,达到降低电源功耗的目的。然后再通过红外发射二极管产生红外线向空间发射,如图3.1.1所示
图 3.1.1
LC7461 产生的遥控编码是连续的42 位二进制码组,其中前26 位为用户识别码,能区别不同的红外遥控设备,防止不同机种遥控码互相干扰。后16 位为8 位的操作码和8 位的操作反码用于核对数据是否接收准确,如图3.1.2所示。
图3.1.2
当遥控器上任意一个按键按下超过36ms 时,LC7461 芯片的振荡器使芯片激活,将发射一个特定的同步码头,对于接收端而言就是一个9ms 的低电平,和一个4.5ms 的高电平,这个同步码头可以使程序知道从这个同步码头以后可以开始接收数据。具体发射的时序,以及“0”和“1”的定义如下图3.1.3、3.1.4所示,注意这里是指编码之后发射,而在接收程序里面,0 和1 的定义是相反的。
14
桂林航天工业高等专科学校毕业设计(论文)
图3.1.3
图3.1.4
3.2 红外发射及编码原理图
红外遥控如果不做编解码的话,那么它的抗干扰性能会极低的,如果是用作遥控是肯定不行的,长距的切断式传感也不行,只有像鼠标里那种可以这样用。红外发射管的参数大约为2V结电压,35mA,和普通LED一样,需要恒流驱动,一般驱动的时候就是一个三极管比如9013来驱动的,使用基极串电阻接控制信号,集电极和正极间接红外发射管,发射极接地,如果担心超过电流限制,发射管上要串限流电阻。
红外遥控接收可采用较早的红外接收二极管加专用的红外处理电路的方法。较好的接收方法是用一体化红外接收头,它将红外接收二极管、放大、解调、整形等电路做在一起,只有三个引脚.分别是+5V电源、地、信号输出。红外接收头的信号输出接单片机的INTO或INTl脚.典型电路如图3.2.1所示.图中增加了一只PNP型三极管对输出信号进行放大。
图3.2.1
15
桂林航天工业高等专科学校毕业设计(论文)
红外遥控发射器包括键盘、指令编码器和红外发光二极管 LED 等部分组成。当按下键盘的不同按键时,通过编码器产生与之相对应的特定的二进制脉冲码信号。将此二进制脉冲信号先调制在 38KHZ 的载波上,经过放大后,激发红外发光二极管 LED 转变成以波长940nm的红外线光传播出去。红外发射原理图如下图3.2.2所示。
图3.2.2 红外发射原理图
3.3 红外编码按键图
当我们按下遥控器的按键时,遥控器将发出如图2的一串二进制代码,我们称它为一帧数据。根据各部分的功能。可将它们分为5部分,分别为引导码、地址码、地址码、数据码、数据反码。遥控器发射代码时.均是低位在前。高位在后。由图2分析可以得到.引导码高电平为4.5ms,低电平为4.5ms。当接收到此码时.表示一帧数据的开始。单片机可以准备接收下面的数据。地址码由8位二进制组成,共256种.图中地址码重发了一次。主要是加强遥控器的可靠性.如果两次地址码不相同.则说明本帧数据有错.应丢弃。不同的设备可以拥有不同的地址码.因此。同种编码的遥控器只要设置地址码不同,也不会相互干扰。图中的地址码为十六进制的0EH(注意低位在前)。在同一个遥控器中.所有按键发出的地址码都是相同的。数据码为8位,可编码256种状态,代表实际所按下的键。数据反码是数据码的各位求反,通过比较数据码与数据反码.可判断接收到的数据是否正确。如果数据码与数据反码之间的关系不
16
桂林航天工业高等专科学校毕业设计(论文)
满足相反的关系.则本次遥控接收有误.数据应丢弃。在同一个遥控器上.所有按键的数据码均不相同。在图2中,数据码为十六进制的0CH,数据反码为十六进制的0F3H(注意低位在前).两者之和应为0FFH。
本次所用的是普通的遥控编码器这种遥控器的编码方式符合上面的描述规律,而且价格低膜换成你需要的字符,这为开发产品提供了便利。这是按照红外遥控器按键的实际位廉,有32 个按键,按键外形比较统一,如果用于批量开发,可以把遥控器上贴置给出的32 个按键的键值(16 进制)。如图3.3所示:
图 3.3 红外编码按键图
17
桂林航天工业高等专科学校毕业设计(论文)
3.4 红外解码原理图
红外解码原理图如图3.5所示。
图3.5 红外解码原理图
3.5 接收器及解码
LT0038是塑封一体化红外线接收器,它是一种集红外线接收、放大、整形于一体的集成电路,不需要任何外接元件,就能完成从红外线接收到输出与TTL电平信号兼容的所有工作,没有红外遥控信号时为高电平,收到红外信号时为低电平,而体积和普通的塑封三极管大小一样,它适合于各种红外线遥控和红外线数据传输。接收器对外只有3 个引脚:Out、GND、Vcc 与单片机接口非常方便,如图3.6 所示。
图 3.6 红外线接收器
① GND 连接系统的地线(0V); ② Vcc 连接系统的电源正极(+5V); ③脉冲信号输出接,直接接单片机的IO 口
18
桂林航天工业高等专科学校毕业设计(论文)
第四章 程序流程图
开始 初始化处理 接收到遥控信号指令 遥控信号指令解码 是按键指令 按键处理1键到4键 数据存储
19
桂林航天工业高等专科学校毕业设计(论文)
第五章 程序清单
红外编码子程序
ORG 0000H
AJMP MAIN;转入主程序
ORG 0003H ;外部中断P3.2脚INT0入口地址 AJMP INT ;转入外部中断服务子程序(解码程序) ;以下为主程序进行CPU中断方式设置
MAIN: SETB EA ;打开CPU总中断请求
SETB IT0 ;设定INT0的触发方式为脉冲负边沿触发 SETB EX0 ;打开INT0中断请求
;以下为进入P3.2脚外部中断子程序,也就是解码程序
INT: CLR EA ;暂时关闭CPU的所有中断请求
MOV R6,#10
SB: ACALL YS1;调用882微秒延时子程序
JB P3.2,EXIT;延时882微秒后判断P3.2脚是否出现高电平如果有就退出解
码程序
DJNZ R6, SB;重复10次,目的是检测在8820微秒内如果出现高电平就退
出解码程序
;以上完成对遥控信号的9000微秒的初始低电平信号的识别。
JNB P3.2, $ ;等待高电平避开9毫秒低电平引导脉冲 ACALL YS2 ;延时4.74毫秒避开4.5毫秒的结果码 MOV R7,#26;忽略前26位系统识别码
JJJJA: JNB P3.2,$;等待地址码第一位的高电平信号
LCALL YS1;高电平开始后用882微秒的时间尺去判断信号此时的高低电平
状态
MOV C,P3.2;将P3.2引脚此时的电平状态0或1存入C中 JNC UUUA;如果为0就跳转到UUUA
LCALL YS3;检测到高电平1的话延时1毫秒等待脉冲高电平结束
UUUA: DJNZ R7,JJJJA
MOV R1,#1AH ;设定1AH为起始RAM区
MOV R2,#2;接收从1AH到1BH的2个内存,用于存放操作码和操作反码
PP: MOV R3,#8;每组数据为8位
JJJJ: JNB P3.2,$;等待地址码第一位的高电平信号
LCALL YS1;高电平开始后用882微秒的时间尺去判断信号此时的高低电平
状态
20
桂林航天工业高等专科学校毕业设计(论文)
MOV C,P3.2;将P3.2引脚此时的电平状态0或1存入C中 JNC UUU;如果为0就跳转到UUU
LCALL YS3;检测到高电平1的话延时1毫秒等待脉冲高电平结束
UUU: MOV A,@R1;将R1中地址的给A
RRC A;将C中的值0或1移入A中的最低位 MOV @R1,A;将A中的数暂时存放在R1数值的内存中 DJNZ R3,JJJJ;接收满8位换一个内存 INC R1;对R1中的值加1,换下一个RAM
DJNZ R2,PP ;接收完8位数据码和8位数据反码,存放在1AH/1BH中 MOV A,1AH
CPL A;对1AH取反后和1BH比较
CJNE A,1BH,EXIT;如果不等表示接收数据发生错误,放弃 CALL display
CLR P3.3;蜂鸣器鸣响-嘀嘀嘀-的声音,表示解码成功 LCALL YS2 LCALL YS2 LCALL YS2
SETB P3.3;蜂鸣器停止
EXIT: SETB EA ;允许中断
RETI ;退出解码子程序
display:
MOV A,1AH 按键扫描 CJNE A,#11H,dsl MOV 1CH,#08H
JMP quit
ds1:
CJNE A,#12H,ds2
MOV 1CH,#04H JMP quit ds2:
CJNE A,#13H,ds3
MOV 1CH,#02H JMP quit ds3:
CINE A,#14H,ds4 MOV 1CH,#01H JMP quit
21
桂林航天工业高等专科学校毕业设计(论文)
quit: MOV A,1CH;将数据进行存储
MOV P2,A;将数值通过P2口显示出来 YS1:
MOV R4,#20 ;延时子程序1,精确延时882微秒
D1: MOV R5,#20
DJNZ R5,$ DJNZ R4,D1 RET
YS2:
MOV R4,#10 ;延时子程序2,精确延时4740微秒
D2: MOV R5,#235
DJNZ R5,$ DJNZ R4,D2 RET
YS3:
MOV R4,#2;延时程序3,精确延时1000微秒
D3: MOV R5,#248
DJNZ R5,$ DJNZ R4,D3 RET END
22
桂林航天工业高等专科学校毕业设计(论文)
小结
这是一个磨练意志的过程。从课题的选择开始,到硬件和软件系统的设计,这其中经历了很多困难,但是更重要的是在这个过程中我得到了很大的锻炼。首先,谢谢我们的导师罗文军老师对我们这次毕业设计的精心指导与帮助。更感谢老师的真诚的关爱和鼓励。
单片机是一门应用性和实践性很强的学科,我们很多人都想学习单片机, 但学习单片机要有一定的基础,电子技术方面要有数字电路和模拟电路等方面的理论基础,特别是数字电路;编程语言要求汇编语言或C语言。汇编语言属于低级语言,编程效率低,但是较C语言具有目标代码简短,占用 内存少,执行速度快等优点,更重要的是能使初学者尽快熟悉单片机的内部结构,并能对其进行精确的控制。学习它首先应看书,对单片机引脚、内部结构、寄存器和原理有一定地了解 和感观认识,它的是怎样工作的,能干些什么?写一个最简单的,让它运行起来,先培养一下自己的感觉,知道写程序是怎么一回事,无论写大程序还是小程序,要做的工序不会差多少,总得建个项目,再配置一下项目,然后建个程序,加入项目中,再写代码、编译、生成HEX,刷进单片机中、运行。经过多次调试,认真思考,多方面验证程序。
通过本次对可改写的红外遥控开关的设计与调试,学会了红外遥控编码和解码的基本原理。在调试过程中,对于红外解码程序所需要的延时时间要非常精确,所以在进入解码时,我们选择外部中断,还有延时子程序要符合编码原则,计算要严格按照要求,否则就无法进入正确的解码。此次用到的寄存器比较多,要合理分配好,有些是不能重复使用的就不可以重复使用,因为这样有可能会出现乱码,整个程序分配的地址单元也要考虑还,有些子程序不能放得太远,会导致无法跳回,有时候理论上是可以的,当实际用起来是不能实现,子程序的嵌套也不能太多,
远的话,在编译的时候会给提示无法跳转,就要进行修改。每编写一个程序都要不断的仿真和调试过程,不可能一下子就可以的,特别是要跟前面的程序合并时,所以要有耐心和保持清醒的头脑。虽然这次的设计有达到了预期的要求,还有很多需要改进的地方,比如在显示模块,遥控模块都需要改进,但在今后的时间,我会继续努力去完善。本次的设计让我更进一步了解和学习了单片机系统的开发,对我即将步入社会有了一个新的开始。
在本文的撰写过程中,导师罗文军老师给予了悉心的指导和关心,使我克服了众多困难终于完成了毕业设计的撰写工作。导师渊博的知识、严谨求实的治学态度及敬业精神,给我留下了深刻的印象,并将在我今后的人生道路上产生深远的影响,在此论文完成之际,谨向导师致以崇高的敬意和衷心的感谢!
23
桂林航天工业高等专科学校毕业设计(论文)
参考文献
[1] 李全利等.单片机原理及应用技术.高等教育出版社.2004. [2] 李朝青等.无线发送/接收IC芯片及其数据通信技术选编(1).北京
航空航天大学出版.1999.
[3] 彭为等.单片机典型系统设计实例精讲.电子工业出版社.2006. [4] 楼然苗等. 李光飞.51系列单片机设计实例[M].北京:北京航空航天
大学出版社,2003
24
因篇幅问题不能全部显示,请点此查看更多更全内容