基于AT89C51的红外线家电遥控设计.docx

上传人:b****8 文档编号:23584590 上传时间:2023-05-18 格式:DOCX 页数:34 大小:188.83KB
下载 相关 举报
基于AT89C51的红外线家电遥控设计.docx_第1页
第1页 / 共34页
基于AT89C51的红外线家电遥控设计.docx_第2页
第2页 / 共34页
基于AT89C51的红外线家电遥控设计.docx_第3页
第3页 / 共34页
基于AT89C51的红外线家电遥控设计.docx_第4页
第4页 / 共34页
基于AT89C51的红外线家电遥控设计.docx_第5页
第5页 / 共34页
点击查看更多>>
下载资源
资源描述

基于AT89C51的红外线家电遥控设计.docx

《基于AT89C51的红外线家电遥控设计.docx》由会员分享,可在线阅读,更多相关《基于AT89C51的红外线家电遥控设计.docx(34页珍藏版)》请在冰豆网上搜索。

基于AT89C51的红外线家电遥控设计.docx

基于AT89C51的红外线家电遥控设计

 

哈尔滨学院本科毕业论文(设计)

 

题目:

基于AT89C51的红外线家电遥控设计

 

院(系):

理工学院

专业:

电子信息工程

年级:

2006级

姓名:

学号:

指导教师:

职称:

 

2010年6月19日

摘要

如今,利用红外遥控传输较小的数据量来控制电器设备的应用已经非常广泛,对各种红外遥控器发出来的红外编码进行采集和处理就成了众人非常关心和急需解决的问题。

仔细分析了多种遥控器所发红外编码的特点及其规律,详细地阐述了利用单片机系统对家用电器遥控器发出来的红外编码进行学习、存储、传输和再生的原理,来实现以红外线为传送信息媒介的短距离无线遥控控制电路,具有准确度高、速度快的特点,本设计广泛应用于工业、医疗、家用电器等设备的开启和关闭控制。

在了解了其发射的编码脉冲信号波形后,设计了基于单片机AT89C51的红外遥控器解码器,对解码器硬件和相应软件进行分析并给出程序流程图,给出多功能遥控系统框图,详细地说明其硬件组成原理和各个部分的功能,并给出了部分程序流程图。

本设计以单片机为核心设计一种智能型红外线遥控器,可以对各种红外线遥控器发射的信号进行识别、存贮和再现等功能,从而实现对各类家电的控制。

关键词:

红外遥控器;单片机;编码;解码器;信号

 

Abstract

Today,theapplication,usinginfraredtelecontroltotransmitafewdatatocontrolelectricequipment,issopopularized.Theproblem,pickingandprocessingtheinfraredcodewhichsentbythevarioustelecontroller,beingwatchedoutandsolvedeagerlybymanypeople.Weanalyzedcarefullythecharacteristicanditslawoftheinfraredcodewhichsentbythekindsoftelecontroller.Theprinciple,usingthesinglechipsystemtolearn,store,transmitandrestoretheinfraredcodewhichsentbythetelecontrollerofelectricappliance,isalsodetailedlyexpoundedinthispaper.Byguidingoftheprinciple,whichtaketheinfraredasthepass-alongmessagemediumshortdistancewirelessremotecontrolcircuit,whichhastheaccuracytobehigh,thespeedquickcharacteristic.Thisdesignwidelyappliesinequipmentandsoonindustry,medicalservice,domesticelectricappliancesopeningwiththeclosurecontrol.

Afterthecodepulsesignalwaveshapethatinfraredremotecontrolleremitsisknown,thedecoderofinfraredremotecontrollerbasedonsinglechipmicrocomputerAT89C51isdesigned,thedecoderhardwareandappropriatesoftwareareanalysedandtheprogramprocessdiagramsaregiven.Thepaperputsforwardframediagramofmultifunctionremotecontrolsystemanddetailedthecomposeofhardwareprincipleandfunctionofeachpart,andgivespartofprogramfludiagrams.Thisistodesignanintelligentinfraredremotefocusingonsinglechip.Itcandistinguish,storeandrecurrencetosignalsthatallkindsofinfraredremotelaunched.Thereby,thecontrolofallhouseholdelectricalappliancescanberealized.

Keywords:

infraredremotecontroller;singlechipmicrocomputer;codedecoder;signal

 

前言

随着社会的发展各种家用电器已经进入了千家万户,各式各样、琳琅满目的家用电器,空调、电视、音响系统等传统意义上的家电早已成为普通百姓生活不可或缺的一部分,甚至连投影机、数字机顶盒,电子监控(防盗)系统等新兴电器也正迅速步入现代家庭,我们家里的遥控器越来越多,不同型号的遥控器控制不同的家电。

遥控器,想来大家并不陌生,遥控作为众多现代家电的一种基本控制方式,几乎所有的家电产品都配备了遥控器,甚至现在连电风扇,台灯这样的设备都配备了遥控器。

可是,随着家里的电器越来越多,电器产品的遥控器也越来越多,这就产生比较多的麻烦,日常生活中,很多人都会遇到随手拿错放在茶几上各种遥控器的麻烦,不仅使用起来不方便而且茶几上摆放一堆遥控器也很不好看。

本设计就是设计一种遥控器,可以让我们通过一个通用的遥控器可以统一控制多个家电的开关,这样就让对家电的控制简单化了。

但是不同企业使用的遥控器原理各有不同,大多数的家用电器都有各自不同的遥控器,为了解决这个问题,本设计探讨一个了遥控器的设计方案:

该遥控器可以通过控制继电器而控制家电的开关,从而拥有对多台电器的遥控功能,即省时、又省力,又节约资源,从而使人们免除同时面对众多遥控器的烦恼。

 本设计硬件部分是利用控制电路控制继电器的开合,从而控制家电的开关的简单的目的,本设计只用了两组继电器,只能控制两台家电,而实际中我们还可以加入更多的继电器,达到控制更多家电的目的。

从遥控器的控制原理来说,其通过红外发出的信号通常是一种经过特定编码的红外信号,习惯称之为遥控器编码,不同厂家的遥控器所采用的码型都是不一样的,以免互相冲突,而这个代码也是公开的,我们只要能模拟各种遥控信号编码,就能实现对相应电器的遥控功能。

本设计主要是利用东芝牌遥控器编码方式发射红外控制信号,接收电路使用一体化红外接收模块接收红外信号,经过滤除载波后将红外信号发到单片机内,而译码方式按照东芝遥控器编码方式进行解码,译出遥控器所按的按键,然后输出动作控制继电器开关,从而达到用软件驱动硬件,达到控制电器开关的目的。

第一章总体设计原理分析

1.1红外线遥控器工作原理

1.1.1红外线介绍

红外线是一种电磁波,具有与无线电波及可见光一样的本质。

人的眼睛能看到的可见光按波长从长到短排列,依次为红、橙、黄、绿、青、蓝、紫。

其中红光的波长范围为0.62~0.76μm;紫光的波长范围为0.38~0.46μm。

比紫光波长还短的光叫紫外线,比红光波长还长的光叫红外线。

红外线的波长在0.76~100μm之间,位于无线电波与可见光之间。

红外线遥控就是利用波长为0.76~1.5μm之间的近红外线来传送控制信号的。

由于红外线遥控装置具有体积小、功耗低、功能强、成本低等特点,因而,继彩电、录像机之后,在录音机、音响设备、空调机以及玩具等其它小型电器装置上也纷纷采用红外线遥控。

工业设备中,在高压、辐射、有毒气体、粉尘等环境下,采用红外线遥控不仅完全可靠而且能有效地隔离电气干扰。

此外红外线通信还具有保密性强,信息容量大,结构简单,既可以是室内使用,也可以在野外使用,由于它具有良好的方向性,适用于国防边界哨所与哨所在之间的保密通信,但在野外使用时易受气候的影响[1]。

1.1.2红外线遥控原理介绍

红外线遥控器是以红外线发光LED,发射波长940nm的红外线不可见光,来传送信号。

整个遥控器系统分为发射端及接收端两部分,发射端经过红外线发射LED送出红外线控制信号,这些信号经过红外线接收模块接收端接收进来,并对其控制信号做译码而做相对的动作输出完成遥控的功能。

红外通信由来已久,但是进入90年代,随着科学技术的不断进步和地球空间技术的发展,使人们对红外线技术的研究越来越深入,应用范围更广泛,尤其是在红外遥感技术和红外通信技术领域里,数字锁相技术和传感器技术的巨大进步,大大加速了这个进程,目前无线产品在商业销售中的使用已相当普遍,但大多存在着很大的局限性,电路繁杂,计算难度大且多为模拟电路,抗干扰能力差,准确度底,电路的维护调试很不方便。

越来越多的远距离控制和数据通信系统引入了不可见的红外线作为传输媒介进行通信,组成了无线红外遥控通信系统,此方法以其成本底、精度高、保密性强、技术性能稳定的特点而受到广大用户和专业人士的欢迎。

常用的红外遥控系统一般分发射和接收两个部分。

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

目前大量使用的红外发光二极管发出的红外线波长为940nm左右,外形与普通φ5发光二极管相同,只是颜色不同,红外发光二极管一般有黑色、深蓝、透明三种颜色。

接收部分的红外接收管是一种光敏二极管,只对红外光线有敏感作用,在实际应用中要给红外接收二极管加反向偏压,它才能正常工作,亦即红外接收二极管在电路中应用时是反向运用,这样才能获得较高的灵敏度。

红外接收二极管一般有圆形和方形两种,由于红外发光二极管的发射功率一般都较小(100mW左右),所以红外接收二极管接收到的信号比较微弱,因此就要增加高增益放大电路。

 

图1-1红外线发射器的工作方块图

红外线发射器的工作流程如图1-1所示,当按下某一按键后,遥控器上的控制芯片便进行编码产生一组句柄,结合载波电路的载波信号(为38kHz)而成为合成信号,经过放大器提升功率而推动红外线发射二极管,将红外线信号发射出去,所要发射的句柄必须加上载波才能使信号传送的距离加长,一般遥控器的有效距离为10m。

图1-2红外线接收的工作方块图

红外线接收的工作方块图如图1-2所示,其主要控制组件为红外线接收模块,其内部含有高频的滤波电路,专门用来滤除红外线合成信号的载波信号(38kHz)而送出发射器的控制信号。

当红外线合成信号进入红外线接收模块,在其输出端便可以得到原先的数字控制编码,只要经过单片机译码程序进行译码,便可以得知按下那一按键,而作出相应的控制处理,完成红外线遥控的动作。

由于每家厂商设计出来的遥控器一定不一样,即使是使用相同的控制芯片,也会做特殊的编码设计,以避免遥控器间互相的干扰。

在本设计中将以东芝牌电视遥控器为例子来做实验说明,这款遥控器使用国内遥控器最常用的编码芯片PT2221或是兼容芯片。

其中的编码数据包含厂商固定编码及按键编码,厂商固定编码为避免与其他家厂商重复,而按键编码则是遥控器上的各个按键编码。

例如按下遥控器的1键,则会发送出以下的4字节出去:

40BF01HED

其中“40BF”为厂商固定编码,“01HED”则为1键按键编码,厂商编码只要是东芝牌电视遥控器就是固定的,各个按键编码则依按键不同而不一样。

各个位编码方式是以波宽信号来调变,低电平0.8ms加上高电平0.4ms则编码为“0”,低电平0.8ms加上高电平1.6ms则编码为“1”。

当按下遥控器上的某一按键则会产生特定的一组编码,结合38kHz载波信号发射出去,加上载波信号可以增加发射距离。

1.2红外家电遥控器译码原理

遥控电路使用89C51单片机作控制,通过红外线接收模块接收信号,因为接收模块有自动滤除载波功能,所以红外线接收模块输出的信号就是遥控器所产生的编码,通过电路传到单片机内,单片机识别出遥控器的按键,作相应的动作。

红外线接收模块是一种光敏二极管及滤波器组成,光敏二极管只对红外光线有敏感作用,在实际应用中要给红外接收二极管加反向偏压,它才能正常工作,亦即红外接收二极管在电路中应用时是反向运用,这样才能获得较高的灵敏度。

红外接收二极管一般有圆形和方形两种,由于红外发光二极管的发射功率一般都较小(100mW左右),所以红外接收二极管接收到的信号比较微弱,因此就要增加高增益放大电路。

因此在红外线发射端红外线信号加载在一个38kHz载波上发射出去,这样即增加了信号强度,也增强了信号的传输距离,使用起来更加方便。

红外线发射器使用东芝牌红外线遥控器,遥控器发出编码,红外接收模块接收信号,并传回单片机内进行解码。

使用的控制软件包含完整的东芝牌电视红外遥控器解码,使用单片机汇编语言进行译码。

因为东芝遥控器是使用的4字节(32位)编码信号,所以译码程序取出4字节(32位)编码信号。

遥控器接收信号方式如图1-3所示,然后进行译码动作流程图。

图1-3电路译码流程

本设计采用的是用继电器连接家电的电源,通过继电器控制家电的开关,而继电器的控制是受单片机的电平输出来控制的,当单片机通过红外线接收模块收到红外线信号时,通过译码程序识别出遥控器所按得键,通过设定好的程序,确定单片机是输出高电平或低平,从而使继电器作出相应的动作。

在单片机的汇编语言中,我们将各个按键用汇编语言指定代码,例如,将1键编号为01H,2键编号为02H,这个编码是单片机用来识别遥控器所做的动作。

当遥控器译出所按键时,单片机使继电器做相应的动作,达到控制目的。

本设计中,设定了1234四个按键编码程序,当按下1键和2键时单片机控制继电器做出相应的动作,每一个按键对应不同的继电器。

例如按一下1键继电器闭合,蜂鸣器发出哗的一声,指示灯闪烁一下,再按一下1键继电器打开,蜂鸣器发出哗的一声,指示灯闪烁。

而按下3键和4键时,只有指示灯和蜂鸣器有动作,继电器没有动作,所以3键和4键只是测试按键。

第二章电路的硬件设计

2.1硬件控制电路介绍

本设计的红外线信号发射器使用东芝牌红外线遥控器,遥控器发出红外信号编码,编码加载在38kHz载波上发射出去,红外接收模块接收信号并滤除载波,并传回单片机内进行解码。

使用的控制软件包含完整的东芝牌电视红外遥控器解码,使用单片机汇编语言进行译码。

因为东芝遥控器是使用的4字节(32位)编码信号,所以译码程序取出4字节(32位)编码信号。

使用89C51单片机作控制,通过红外线接收模块接收信号,因为接收模块有自动滤除载波功能,所以红外线接收模块输出的信号就是遥控器所产生的编码,通过电路传到单片机内,单片机识别出遥控器的按键,作相应的动作。

完整的控制电路如图2-1所示。

图2-1控制电路

由总电路图可已看出,当电路通电后电源指示灯亮起,有红外线信号时,红外线接收模块接收红外信号经过滤除载波之后,通过单片机INT0脚传回单片机内,经单片机程序译

码比较,识别出遥控器所按的键,再控制继电器和蜂鸣器做相应动作。

工作指示灯为状态指示灯,当红外线信号出现时,工作指示灯LED会亮起作指示,信号收集完毕后,LED会熄灭。

当单片机接收到红外接收模块传回的信号,按程序译出遥控器所做的动作,会由

T1脚或

脚发出对继电器的控制信号,通过继电器的开关控制家电产品电源的开启或关闭。

 

图2-2AT89C51引脚图

电路的核心芯片是一个AT89C51单片机,主要作用包括译码,控制电路等功能。

它是由多种集成电路组合而成,从而达到不同的功能。

AT89C51单片机是ATMAL公司89系列单片机的一种8位Flash单片机。

它最大特点是片内含有Flash存储器,用途十分广泛,特别是在生产便携式商品,手提式仪器等方面,有着十分广泛的应用[2],AT89C51外部引脚如图2-2所示。

AT89C51单片机内部主要有以下部件:

8031CPU、振荡电路、总线控制部件、中断控制部件、片内Flash存储器、片内RAM、并行I/O接口、定时器和串行I/O接口。

AT89C51是89系列单片机的标准型,它是与MSC-51系列单片机兼容的。

在内部含有4KB或8KB可重复编程的Flash存储器,可进行1000次擦写操作。

全静态工作为0-24MHz,有3级程序锁存器,内部含有128-256字节的RAM,有32条可编程I/O口线,2-3个16位定时/计数器,6-8个中断源,通用的串行接口,低电压空闲及电源下降方式。

单片机内部组成框图如图2-3所示。

图2-3AT89C51单片机的内部结构图

XTAL1和XTAL2分别为反向放大器的输入和输出。

该反向放大器可以配置为片内振荡器。

石晶振荡和陶瓷振荡均可采用。

如采用外部时钟源驱动器件,XTAL2应不接。

有余输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度。

AT89C51单片机内部由CPU、4KB的FPEROM,128B的RAM,两个16位的定时/计数器T0和T1,4个8位的I/O端P0、P1、P2、P3等组成。

单片机内部最核心的部分是CPU。

CPU主要功能是产生各种控制信号,控制存储器、输入/输出端口的数据传输、数据的算术运算、逻辑运算以及位操作处理等,CPU按其功能可分为运算器和控制器两部分。

控制器由程序计数器PC、指令储存器、指令译码器、实时控制与条件转移逻辑电路等组成。

它的功能是对来自存储器中的指令进行译码,通过实时控制电路,在规定的时刻发出各种操作所需的内部和外部的控制信号,使各部分协调工作,完成指令所规定的操作。

运算器由算术逻辑器部件ALU、累加器ACC、暂存器、程序状态字寄存器PSW,BCD码运算调整电路等组成[3]。

2.2控制电路分析

本设计分为硬件设计和软件设计,这两者相互结合,不可分离。

从时间上看,硬件设计的绝大部分工作量是在最初阶段,到后期往往还要做一些修改。

只要技术准备充分,硬件设计的大返工是比较少的,软件设计的任务贯彻始终,到中后期基本上都是软件设计任务,随着集成电路技术的飞速发展,各种功能很强的芯片不断出现,使硬件电路的集成度越来越高,硬件设计的工作量在整个项目中的所占的比重逐渐下降。

但是硬件是每个产品的基础,只有硬件电路设计合理后才能进行之后的设计,所以遥控器的控制电路设计非常重要。

红外线遥控器控制电路分为以下几个单元:

(1)复位电路

(2)时钟电路

(3)红外线接收模块电路

(4)电源电路

(5)工作指示灯电路

(6)继电器电路

(7)蜂鸣器电路

下面将分析控制电路的各个主要电路单元。

2.2.1复位电路

单片机的复位都是靠外部电路来实现的。

在时钟电路工作后,只要在单片机的复位(RST)脚上出现24个时钟振荡脉冲(也就是2个机器周期)以上的高电平,单片机便实现初始化状态复位。

由按键S13以及电解电容C5、电阻R5构成按键及上电复位电路。

由于单片机是高电平复位,所以当按键S13按下时候,单片机的9脚RET管脚处于高电平,此时单片机处于复位状态。

当上电后,由于电容的缓慢充电,单片机的9脚电压逐步由高向低转化,经过一段时间后,单片机的9脚处于稳定的低电平状态,此时单片机上电复位完毕,系统程序从0000H开始执行。

使CPU进入初始状态,从0000H地址开始执行程序的过程叫系统复位。

从实现系统复位的方法来看,系统复位可分为硬件复位和软件复位。

硬件复位必须通过CPU外部的硬件电路给CPU的RESET端加上足够时间的高电位才能实现。

上电复位,人工按钮复位和硬件看门狗复位均为硬件复位。

硬件复位后,各专用寄存器的状态均被初始化,且对片内通用寄存器的内容没有影响。

但是,硬件复位还能自动清除中断激活标志,使中断系统能够正常工作,这样一个事实却容易为不少编码人员所忽视。

软件复位就是用一系列指令来模拟硬件复位功能,最后通过转移指令使程序从0000H地址开始执行。

对各专用寄存器的复位操作是容易的,也没有必要完全模拟,可根据实际需要去主程序初始化过程中完成。

值得注意的是,在设计当中使用到了硬件复位和软件复位两种功能,由上面的硬件复位后的各状态可知寄存器及存储器的值都恢复到了初始值,而前面的功能介绍中提到了倒计时时间的记忆功能,该功能的实现的前提条件就是不能对单片机进行硬件复位,所以设定了软复位功能。

软复位实际上就是当程序执行完毕之后,将程序指针通过一条跳转指令让它跳转到程序执行的起始地址。

传统的复位方法有阻容上电复位和按键电平复位,如图2-4所示,本设计采用按键手动复位电路,它们实际上利用RC充放电原理实现的复位电路,从外部给RST脚2个机器周期以上的高电平。

在实际应用系统中,为了保证复位电路可靠地工作,常常将RC电路接斯密特电路后再接入单片机的复位端和外围电路复位端。

这样就特别适用于应用现场干扰大、电压波动大的工作环境,并且当系统有多个复位端时,也能够保证可靠的同步复位[4]。

图2-4复位电路

当AT89C51的RST引脚到高电平时,单片机就会复位。

按下按纽S13,将高电平接到RST端,从而复位。

复位后,单片机就从0000H地址开始执行程序。

P0~P3四个并行接口全为高电平,其他寄存器全部清零,只有SBUF寄存器状态不确定。

2.2.2时钟电路

时钟电路是计算机的心脏,它控制着计算机的工作节奏。

CPU就是通过复杂的时序电路完成不同的指令功能的。

MCS-51的时钟信号可以由两种方式产生:

一种是内部方式,利用芯片内部的振荡电路,产生时钟信号;另一种为外部方式,时钟信号由外部引入。

图2-5时钟电路

MCS-51单片机有HMOS型和CHMOS型,它们的时钟电路有一定区别。

内部时钟电路,利用AT89C51内部一个高增益的反向放大器,把一个晶振体和两个电容器组成的自激振荡电路接于XTAL1(19脚)和XTAL2(18脚)之间。

这样,振荡器发出的脉冲直接送入内部时钟电路。

晶振体可以是石英晶体或陶瓷结构,振荡频率可任选,一般频率在1.2~12MHz。

对于石英晶体振荡器,电容C3,C4在20pF左右,对于陶瓷振荡器,C3,C4约20pF左右。

内部时钟电路如图2-5所示,MCS-51的内部工作时钟也可以由外部振荡器提供,这时,对HMOS型芯片,外部振荡器的信号接至XTAL2,即内部时钟发生器的输出端,而内部反相放大器的输人端XTAL1应接地.在CHMOS电路中,因内部时钟发生器的信号取自反相放大器的输入端(即与非门的一个输入端),故采用外部时钟源时,接线方式与HMOS型的有所不同:

外部信号接至XTALI,XTAL2不用。

对外部振荡器的信号没有特殊的要求,一般为0.5—12MHz的方波,方波的波形应尽量规范即上升沿、下降沿尽可能垂直。

本设计时钟电路使用的是一个11.0592MHz的晶振,所以单片机的一个机器周期是1.085μs,由此可算出单片机执行程序时在计算延时子程序时间隔的时

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 小学教育 > 其它课程

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1