基于单片机的红外遥控系统设计 单片机与电子技术等专业学位论文.docx
- 文档编号:18212178
- 上传时间:2023-08-13
- 格式:DOCX
- 页数:49
- 大小:919.39KB
基于单片机的红外遥控系统设计 单片机与电子技术等专业学位论文.docx
《基于单片机的红外遥控系统设计 单片机与电子技术等专业学位论文.docx》由会员分享,可在线阅读,更多相关《基于单片机的红外遥控系统设计 单片机与电子技术等专业学位论文.docx(49页珍藏版)》请在冰点文库上搜索。
基于单片机的红外遥控系统设计单片机与电子技术等专业学位论文
基于单片机的红外遥控系统设计
摘 要
随着科技的发展以及人们生活水平的提高,各种遥控设备慢慢渗透到人们生活的方方面面,这些遥控设备极大的方便了人们的生活。
传统的遥控器采用专用的编码和解码的集成电路芯片,这种电路虽然制作简单,但是用于其键数功能受到限制,只能用于某一特定的电器设备,因而其应用范围受到很大限制。
而采用单片机进行设计的遥控系统,具有编程灵活多样、操作码个数可以随意设定等优点。
本设计采用AT89C52作为主控芯片,负责红外数据的解码和执行遥控操作;红外信号采用市场上现有的遥控器产生,它使用的编码芯片是HS6221,采用NEC编码方式;一体化红外接收头HS0038负责红外信号的接收和反向、放大等初步处理;为了更直观的观察红外遥控效果,本系统还增加了数码管来显示接收到的红外数据;使用28BYJ48型步进电机作为红外信号的最终操控的对象,利用遥控器发射不同的数值,实现对步进电机转速的控制。
关键词:
单片机;AT89C52;红外遥控;步进电机
Microcontroller-basedInfraredRemoteControlSystemDesign
ABSTRACT
Withthedevelopmentofscienceandtechnologyaswellasimprovementoflivingstandards,avarietyofremotecontrolequipmentslowlypenetratedintoeveryaspectofpeople'slives,theseremotecontroldevices,greatconveniencetopeople'slives.Traditionalremotecontrolwithadedicatedencodinganddecodingintegratedcircuitchip,thiscircuit,althoughtheproductionissimple,butforanumberofkeycapabilitiesmaybelimited,whichcanonlybeusedforaparticularelectricalequipment,andthusitsscopeofapplicationhasbeengreatlyrestrictions.Usingtheremotecontrolsystemofthesingle-chipdesign,withaflexibleprogramming,andoperationcodenumbercanbeset,etc.
ThisdesignusesAT89C52asthemainchip,decodingandexecutionofremoteoperationresponsiblefortheinfrareddata;infraredsignalusingtheremotecontrolavailableonthemarketthathadbeenproduced,itusestheencodingchipHS6221thatusingNECencoding;integratedinfraredreceiverheadHS0038responsiblefortheinitialprocessingoftheinfraredsignalreceiverandreverseamplification;moreintuitiveobservationofinfraredremotecontroleffect,thesystemalsoaddsadigitalcontroltodisplaythereceivedinfrareddata;28BYJ48steppermotoristhefinalmanipulationoftheinfraredsignalobject,usingtheremotecontroltolaunchdifferentvaluesofthesteppermotorspeedcontrol.
KeyWords:
MCU;AT89C52;Infraredremotecontrol;Steppermotor
目 录
第一章 绪论
1.1红外遥控系统的简介
红外遥控是利用红外技术实现两点间的近距离保密通信和信息转发。
它一般由红外发射和接收系统两部分组成。
发射系统对一个红外辐射源进行调制后发射红外信号,而接收系统用光学装置和红外探测器进行接收,这两部分就构成红外遥控通信系统。
1.2红外遥控技术的发展
红外通信由来已久,但是进入90年代,这一通信技术又有新的发展,应用范围更加广泛。
遥控器是一种用于远端控制机械的装置。
现代的遥控器,主要是由专用集成电路板和用来产生不同信息的按钮所组成。
1995年,一个由部件、计算机系统、外围设备和电信厂商组成的大型集团——红外数据协会(IrDA)就红外通信的一套标准达成一致。
现在约有120家以上的厂商支持红外通信标准。
其中的许多厂商已推出符合红外通信标准并支持Windows95的产品。
此外,红外数据协会开发的这种新的无线通信标准还得到PC机产业的有力支持[1]。
此外,红外通信的连通性已用在大多数新的便携式笔记本中,并成为一种最具成本效益和便于使用的无线通信技术而问鼎市场。
1.3红外遥控技术的特点
由于红外遥控装置具有体积小、功耗低、成本低、编码/解码容易等诸多优点,因而在很多家用电器中得到广泛的应用。
工业控制方面,在高压、辐射、有毒气体、粉尘等环境下采用红外遥控不仅安全可靠,而且可以有效地隔离电气干扰。
保密性强,息容量大,结构简单等特点,使红外通信技术既可以是室内使用,也可以在野外使用,由于它具有良好的方向性,所以适用于国防边界哨所与哨所在之间的保密通信,故国外军事通信机构历来重视这一技术的开发和应用。
这一技术在军事隐蔽通信,特别是军事机密机构、边海防的端对端通信中将发挥出重要的作用。
红外遥控器是一种非常容易买到且价格便宜的产品种类很多,但它们都是配合某种特定电子产品的,如各种电视机、VCD、空调器等。
1.4红外遥控技术的发展前景
目前,符合红外通信标准要求的个人数字数据助理设备、笔记本计算机和打印机已推向市场,然而红外通信技术的潜力将通过个人通信系统(PCS)和全球移动通信系统(GSM)网络的建立而充分显示出来。
红外通信标准有可能使大量的主流计算机技术和产品遭淘汰,包括历史悠久的调制解调器。
预计,执行红外通信标准即可将所有的局域网(LAN)的数据率提高到10Mb/s。
红外通信标准规定的发射功率很低,因此它自然是以电池为工作电源的标准。
目前,惠普移动计算分公司正在开发内置式端口,所有拥有支持红外通信标准的笔记本计算机和手持式计算机的用户,可以把计算机放在电话机的旁边,遂行高速呼叫,可连通本地的因特网。
由于电话机、手持式计算机和红外通信连接全都是数字式的,故不需要调制解调器[2]。
红外通信标准的广泛兼容性可为PC设计师和终端用户提供多种供选择的无电缆连接方式,如掌上计算机、笔记本计算机、个人数字助理设备和桌面计算机之间的文件交换;在计算机装置之间传送数据以及控制电视、盒式录像机和其它设备等近距离传输领域有很大的发展空间和更广阔的前景。
1.5课题的意义
目前市场上一般设备系统均采用专用的遥控编码及解码集成电路,具有制作简单等特点,但由于这些芯片价格较贵,功能键数及功能受到特定的限制,且相互之间采用的遥控编码格式互不兼容,所以各机型的遥控器通常只能针对各自的遥控对象而无法通用,只适用于某一专用电器产品的应用,应用范围受到限制。
采用单片机进行遥控系统的应用设计,具有硬件接口简单方便,编程灵活多样,操作码个数可随意设定等优点。
本设计目的就在于介绍软件解码研究的一般方法和红外遥控器进行二次开发的应用技术。
第二章 单片机的工作原理
2.1AT89C52的简介
AT89C52是一个低电压,高性能CMOS8位单片机,片内含8kbytes的可反复擦写的Flash只读程序存储器和256bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器和Flash存储单元,AT89C52单片机在电子行业中有着广泛的应用[2]。
2.2AT89C52的功能特性
AT89C52提供以下标准功能:
8字节FLASH闪速存储器,256字竹内部RAM,32个I/O口线,3个16位定时/计数器,一个6向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。
同时,AT89C52可降至OHz的静态逻辑操作,并支持两种软件可选的节电上作模式。
空闲方式停止CPU的工作,但允许RAM,定时/计数器.串行通信口及中断系统继续工作。
掉电方式保存RAM中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位。
2.3AT89C52的引脚功能
AT89C52为8位通用微处理器,采用工业标准的C51内核,在内部功能及管脚排布上与通用的8xc52相同,其主要用于会聚调整时的功能控制。
功能包括对会聚主IC内部寄存器、数据RAM及外部接口等功能部件的初始化,会聚调整控制,会聚测试图控制,红外遥控信号IR的接收解码及与主板CPU通信等[3]。
如图2.1,AT89C52的主要管脚有:
XTAL1(19脚)和XTAL2(18脚)为振荡器输入输出端口,外接12MHz晶振。
RST/Vpd(9脚)为复位输入端口,外接电阻电容组成的复位电路。
VCC(40脚)和VSS(20脚)为供电端口,分别接+5V电源的正负端。
P0~P3为可编程通用I/O脚,其功能用途由软件定义,在本设计中,P0端口(32~39脚)被定义为N1功能控制端口,分别与N1的相应功能管脚相连接,13脚定义为IR输入端,10脚和11脚定义为I2C总线控制端口,分别连接N1的SDAS(18脚)和SCLS(19脚)端口,12脚、27脚及28脚定义为握手信号功能端口,连接主板CPU的相应功能端,用于当前制式的检测及会聚调整状态进入的控制功能。
P0口:
P0口是一组8位漏极开路型双向I/O口,也即地址/数据总线复用口。
作为输出口用时,每位能吸收电流的方式驱动8个TTL逻辑门电路,对端口P0写“1”时,可作为高阻抗输入端用。
在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低8位)和数据总线复用,在访问期间激活内部上拉电阻。
在Flash编程时,P0口接收指令字节,而在程序校验时,输出指令字节,校验时,要求外接上拉电阻。
P1口:
P1是一个带内部上拉电阻的8位双向I/O口,P1的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。
对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。
作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。
与AT89C51不同之处是,P1.0和P1.1还可分别作为定时/计数器2的外部计数输入(P1.0/T2)和输入(P1.1/T2EX),Flash编程和程序校验期间,P1接收低8位地址。
P2口:
P2是一个带有内部上拉电阻的8位双向I/O口,P2的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。
对端口P2写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口,作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。
在访问外部程序存储器或1位地址的外部数据存储器(例如执行MOVX@DPTR指令)时,P2口送出高8位地址数据。
在访问8位地址的外部数据存储器(如执行MOVX@RI指令)时,P2口输出P2锁存器的内容。
Flash编程或校验时,P2亦接收高位地址和一些控制信号[4]。
P3口:
P3口是一组带有内部上拉电阻的8位双向I/O口。
P3口输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。
对P3口写入“1”时,它们被内部上拉电阻拉高并可作为输入端口。
此时,被外部拉低的P3口将用上拉电阻输出电流(IIL)。
P3口除了作为一般的I/O口线外,更重要的用途是它的第二功能。
P3口还接收一些用于Flash闪速存储器编程和程序校验的控制信号。
RST:
复位输入。
当振荡器工作时,RST引脚出现两个机器周期以上高电平将使单片机复位。
ALE/PROG:
当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8位字节。
一般情况下,ALE仍以时钟振荡频率的1/6输出固定的脉冲信号,因此它可对外输出时钟或用于定时目的。
要注意的是:
每当访问外部数据存储器时将跳过一个ALE脉冲。
对Flash存储器编程期间,该引脚还用于输入编程脉冲(PROG)。
如有必要,可通过对特殊功能寄存器(SFR)区中的8EH单元的D0位置位,可禁止ALE操作。
该位置位后,只有一条MOVX和MOVC指令才能将ALE激活。
此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ALE禁止位无效。
PSEN:
程序储存允许(PSEN)输出是外部程序存储器的读选通信号,当AT89C52由外部程序存储器取指令(或数据)时,每个机器周期两次PSEN有效,即输出两个脉冲。
在此期间,当访问外部数据存储器,将跳过两次PSEN信号。
EA/VPP:
外部访问允许。
欲使CPU仅访问外部程序存储器(地址为0000H—FFFFH),EA端必须保持低电平(接地)。
需注意的是:
如果加密位LB1被编程,复位时内部会锁存EA端状态。
如EA端为高电平(接Vcc端),CPU则执行内部程序存储器中的指令。
[13]Flash存储器编程时,该引脚加上+12V的编程允许电源Vpp,当然这必须是该器件是使用12V编程电压Vpp。
XTAL1:
振荡器反相放大器的及内部时钟发生器的输入端。
XTAL2:
振荡器反相放大器的输出端。
2.4单片机最小系统
单片机的最小系统包括单片机、电源、晶振电路、复位电路等几部分(如图2.1)。
1.晶振电路
图2.1单片机最小系统
Fig.2.1Thesmallestsingle-chipsystem
单片机的STAL1和XTAL2两引脚是片内振荡电路输入线,这两个段子用来外接石英晶体和微调电容,即用来连接单片机内部OSC的定时反馈回路,如图2.1所示。
石英晶振起振后,应能在TXAL2线上输出一个3V左右的正弦波,以便是单片机内部的OSC电路按石英晶振相同的频率自激震荡。
通常,OSC的输出时钟频率fosc为0.5~16MHz,典型值为12MHz或11.0592MHz。
电容C3和C4可以帮助起振,一般在30pF左右,微调它们可以达到微调fosc的目的。
2.复位电路
为确保微机系统中电路稳定可靠工作,复位电路是必不可少的一部分,复位电路的第一功能是上电复位。
一般微机电路正常工作需要供电电源为5V±5%,即4.75~5.25V。
由于微机电路是时序数字电路,它需要稳定的时钟信号,因此在电源上电时,只有当VCC超过4.75V低于5.25V以及晶体振荡器稳定工作时,复位信号才被撤除,微机电路开始正常工作。
单片机在启动时都需要复位,以使CPU及系统各部件处于确定的初始状态,并从初态开始工作。
89系列单片机的复位信号是从RST引脚输入到芯片内的施密特触发器中的。
当系统处于正常工作状态时,且振荡器稳定后,如果RST引脚上有一个高电平并维持2个机器周期(24个振荡周期)以上,则CPU就可以响应并将系统复位。
单片机系统的复位方式有:
手动按钮复位和上电复位。
图2.2单片机的上电复位电路
Fig.2.2Single-chippower-onresetcircuit
(1)上电复位
AT89C51的上电复位电路如图2.2所示,只要在RST复位输入引脚上接一电容至Vcc端,下接一个电阻到地即可。
上电复位的工作过程是在加电时,复位电路通过电容加给RST端一个短暂的高电平信号,此高电平信号随着Vcc对电容的充电过程而逐渐回落,即RST端的高电平持续时间取决于电容的充电时间。
为了保证系统能够可靠地复位,RST端的高电平信号必须维持足够长的时间[5]。
复位后,系统将端口置为全“1”态。
如果系统在上电时得不到有效的复位,则程序计数器PC将得不到一个合适的初值,因此,CPU可能会从一个未被定义的位置开始执行程序。
(2)手动按钮复位
手动按钮复位需要人为在复位输入端RST上加入高电平(图2.1)。
一般采用的办法是在RST端和正电源Vcc之间接一个按钮。
当人为按下按钮时,则Vcc的+5V电平就会直接加到RST端。
手动按钮复位的电路如所示。
手动按钮复位电路如图2.1所示,Vcc上电时,C充电,在10K电阻上出现电压,使得单片机复位;几个毫秒后,C充满,10K电阻上电流降为0,电压也为0,使得单片机进入工作状态。
工作期间,按下开关S,C放电。
开关S断开,C又充电,在10K电阻上出现电压,使得单片机复位。
几个毫秒后,单片机进入工作状态。
2.5单片机的中断系统
AT89C52共有6个中断向量:
两个外中断(INT0和INT1),3个定时器中断(定时器0、1、2)和串行口中断。
AT89C52有INT0和INT1两条外部中断请求输入线,用于输入两个外部中断请求信号,并允许外部中断源以低电平或负边沿两种中断出发方式输入中断请求信号。
定时/计数器溢出中断是单片机内部的中断,给定时/计数器中装入初值后开始定时/计数,当定时/计数器装满后产生溢出,定时/计数器中数据由全“1”变为全“0”,并使TF0/TF1变为“1”,这样就产生了中断的申请。
1.定时/计数器控制寄存器
TCON的作用是控制定时器的启、停,标志定时器溢出和中断情况。
TCON的格式如图所示。
其中,TFl,TRl,TF0和TR0位用于定时器/计数器;IEl,ITl,IE0和IT0位用于中断系统。
表2.1TCON的位定义
Table2.1TCONbitsdefine
TCON
TF1
TR1
TF0
TR0
IE1
IT1
IE0
IT0
位地址
8F
8E
8D
8C
8B
8A
89
88
2.工作方式控制寄存器
定时器的选择和工作方式的选择是由定时器控制寄存器TCON的设定值而定的,TCON的各位定义如表。
表2.1TMOD的位定义
Table2.1TMODbitsdefine
TMOD
7
6
5
4
3
2
1
0
89H
GATE
C/T
M1
M0
GATE
C/T
M1
M0
定时器溢出中断由AT89C52内部定时器中断源产生,它有三个定时器T0、T1和T2,别由高8位低8位组成,均可以通过字节传送指令为它们设定初值。
工作方式的选择由TMOD中的M1M0决定,如M1M0=1,那么定时/计数器就以方式1工作[6]。
四种工作方式功能如表2.2。
表2.2AT89C52的定时/计数器的工作方式
Table2.2AT89C52 Timer/Counter workmode
工作方式
计数器功能
方式0
13位计数器
方式1
16为计数器
方式2
自动重装初值的8为计数器
方式3
T0为两个8位独立计数器,T1为无中断重装8位计数器
本系统采用定时器0的方式一,它是8位自动重装的定时方式。
需先对定时方式控制寄存器TMOD设置,然后给T0定时器的高八位和低八位赋初值,然后开总中断允许(EA=1),开定时器T0中断(ET0=1),最后启动定时器T0(TR0=1)。
3.中断允许寄存器
中断的开放和关闭是通过中断允许寄存器IE进行两级控制的。
IE有一个中断总开关EA,要使某一中断开启,不仅要开启该中断标志位,还需要开启中断总开关EA,IE的各位定义如表2.3所示:
表2.3IE各位的功能定义
Table2.3IEtofunctiondefinitions
IE
EA
ET2
ES
ET1
EX1
ET0
EX0
功能
总中断开关
T0中断允许
串口中断允许
T1中断允许
INT1中断允许
T1中断允许
INT0中断允许
不论是外部中断还是内部中断的开始,都要对中断允许寄存器IE进行设置,本系统用到内部定时器T0中断和外部INT0中断,每个中断的启动都要令EA=1,然后开启相应的控制位才可以启动该中断。
对于INT0中断,还需要设置其触发方式[10]。
外部中断的触发方式有低电平触发和下降沿触发两种方式,本系统采用的是下降沿触发方式所以要对ET0进行设置,这些内容在第五章将会讲到。
第三章 红外发射和接收基本原理
红外遥控是利用950nm近红外波段的红外线作为传递信息的载体即:
通信信道。
发送端采用脉冲位置调制方式(PPM)。
将二进制数字信号调制成某一频率的脉冲序列,并驱动红外接收管以光脉冲的形式发送出去[7]。
在接收端,一体化接收头将接收到的光脉转换成电信号,再经过放大、滤波等处理后送给解调电路进行解调,还原为二进制数字信号后输出。
红外信号的发射使用的是HS6221芯片,它采用NEC编码标准,利用特定的发射电路和红外发光二极管将按键编码数据发送出去。
在接收端,一体化红外接收头HS0038将接收到的信号经过放大、反向、整形后传送到单片机内部,单片机再经过解码程序将得到的信号数据进行解码,最终由得到的数据码来设定单片机要执行的操作。
经过发送、接收、解码、执行等即个步骤,就组成了一个完整的红外遥控系统(如图3.1)。
图3.1整体系统框图
Fig.3.1Theoverallsystemblockdiagram
3.1红外发射系统的原理
根据红外发射管本身的物理特性,要将信号发射出去,必须要有载波信号和要发射的信号做“与”运算之后,再送给红外发射管发射,才能将红外信号传送出去。
本设计采用HS6221芯片电路对红外红外信号进行发射,就是将某个按键所对应的控制指令和系统码(由0和1组成的序列)调制在38KHz,然后经放大、经三极管驱动红外发射管将信号发射出去。
不同公司的遥控芯片采用的遥控码格式也不一样。
HS6221采用应用较普遍的NEC标准。
NEC标准的载波波形如图3.3,使用455KHz的晶振,经内部分频电路,信号被调制在37.91KHz,占空比是1/3。
为了更好的理解红外数据格式和发射原理,下面介绍HS6221芯片的特性功能。
3.1.1红外发射芯片HS6221
HS6221芯片是通用红外遥控发射集成电路,采用CMOS工艺制造,最多可外接64个按键,并有三组双重按键。
应用于电视机、空调,DVD等电器设备。
HS6221管脚分布如图3.2所示。
-
图3.2HS6221管脚分布
Fig.3.2HS6221pindistribution
1.HS6221各个管脚定义
HS6221各个管脚定义下表3.1所示。
表3.1HS6221管脚定义
Table3.1HS6221Pin
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于单片机的红外遥控系统设计 单片机与电子技术等专业 学位论文 基于 单片机 红外 遥控 系统 设计 电子技术 专业 学位 论文