智能遥控器的研究与设计.docx
- 文档编号:8485189
- 上传时间:2023-01-31
- 格式:DOCX
- 页数:46
- 大小:495.47KB
智能遥控器的研究与设计.docx
《智能遥控器的研究与设计.docx》由会员分享,可在线阅读,更多相关《智能遥控器的研究与设计.docx(46页珍藏版)》请在冰豆网上搜索。
智能遥控器的研究与设计
毕业设计(论文)
题目:
智能遥控器的研究与设计
学院:
电子信息学院_____
专业班级:
08级电子信息工程02班
指导教师:
xxx职称:
教授_
学生姓名:
xxx_________
学号:
xxxxxxxxxxx________
摘要
随着人民生活水平的提高,带红外遥控的家用电器种类繁多,比如电视、空调、DVD等。
但是,由于各种红外遥控编码格式不同,使得各种产品的遥控器并不能兼容,这给人们的日常生活带来了诸多不便。
针对目前市面上已有的学习型遥控器都只能对一些特定的红外遥控编码进行学习的情况,本文设计了一种基于单片机的学习型遥控器,以AT89C52为核心,通过测量红外遥控信号的脉冲宽度来原封不动地保存红外遥控编码,并直接利用单片机的定时器产生38KHz的载波信号,实现了对各种空调遥控器的自学习功能,而不需要其它电路或芯片来完成,节约了成本。
本篇论文详细地描述了该遥控器的设计过程以及工作原理,设计了完整的电路图和所需的软件代码,部分代码已经测试成功。
关键词:
自学习,智能型,红外解码,单片机控制,红外遥控
ABSTRACT
Withtheimprovementofpeople'slivingstandard,withinfraredremotecontrolhouseholdappliancessortisvarious,suchastelevision,airconditioning,DCD,etc.But,becauseallsortsofinfraredremotecontrolcodeformatisdifferent,makethevariousproductsoftheremotecontrolandcan'tcompatible,thePeople'sDailylifebringalotofinconvenience.Inviewofthecurrentexistinglearningremotecontrolonthemarketcanonlytosomespecificinfraredremotecontrolcodewaslearningsituation,thispaperintroducesadesignoflearningbasedonsinglechipmicrocomputerremotecontroltoAT89C52asthecore,asmeasuredbyinfraredremotecontrolsignalpulsewidthtointacttopreserveinfraredremotecontrolcode,anddirectlyofthemicrocontrollertimerproduce38KHzcarriersignal,realizetheremotecontrolofairconditioningofself-learningfunction,anddon'tneedothercircuitorchiptocompleteandsavecost.
Thispaperdescribesindetailthedesignprocessoftheremotecontrolandtheworkingprinciple,designthecircuitdiagramandcompletethesoftwarecode,Partofthecodehavebeentestedsuccessfully。
KEYWORDS:
Ownlearning,Intelligent,Infrareddecoding,Single-chipmicrocomputercontrol,Infraredremotecontrol
前言
随着电子工程在产品设计中的应用日益广泛,对产品的人性化设计成为设计领域一个新的革命。
遥控器主要由形成遥控信号的微处理器芯片、晶体振荡器、放大晶体管、红外发光二极管以及键盘矩阵组成。
随着电子技术的飞速发展,新型大规模遥控集成电路的不断出现,使遥控技术有了日新月异的发展。
遥控装置的中心控制部件已从早期的分立元件、集成电路逐步发展到现在的单片微型计算机,智能化程度大大提高。
近年来,遥控技术在工业生产、家用电器、安全保卫以及人们的日常生活中使用越来越广泛。
带红外遥控器的家电给我们的生活带来极大的方便,但遥控器多了很容易弄混,如果有一种可对家中各种红外遥控器发射的控制信号进行识别、存储和再现的智能型红外遥控器,用这样一个遥控器控制家中所有电器该有多好。
为此,我们试着设计一种以单片机为核心的智能型遥控器。
通过此设计可以提高我们对专业知识的运用能力,让我们把在大学三年中所学到的专业知识真正的运用到实践当中。
现有自主学习型红外遥控器,其核心主要有以下几种:
MCS-51系列、MicrochipPIC16系列、WinbondW741系列、HoltekHT48系列以及ARM(AdvancedRISCMachines)系列。
目前国内外比较成熟的产品主要有:
1.上海慧居智能电子的HJ-JYWC,它的主要特点为:
触屏按键组合输入;具有红外学习功能;具有载波频率识别功能,能准确识别各种复杂的红外代码。
2.BREMAX公司的NRC-304网络多功能遥控器,它的主要特点为:
联机自学
习、脱机自学习两种模式;具有USB口,通过INTERNET登陆BREMAX公司网站,搜寻并下载相应型号家电的遥控器编码,兼容各种品牌和型号。
3.Sunwave公司的SRC—1600,它的主要特点为:
具有巨集设定功能,单一按键巨集设定可记忆多达60个指令;具备红外学习功能,具有USB接口,可预设遥控编码和升级系统。
4.罗技Harmony1100,它的主要特点为:
黑色铝合金外壳,3.5英寸的触屏;用户可以根据具体情况添加或者删除屏幕上的功能键;设备能通过USB连机,获取罗技在线数据库配置文件。
本次毕业设计的题目是:
智能遥控器的研究与设计。
该课题要达到的目标就是要把家里的所有遥控器的功能集中于一个遥控器上。
经过三个月的努力,完成了论文的写作,这篇毕业论文将介绍这台样机的研制过程,下面先介绍一下这篇毕业论文的总体框架。
这篇论文的主要内容在第1章,第2章和第3章。
第1章要介绍了一些实现红外遥控器的方案,比通过不同的角度进行比较,让我们心里对这些方案有个详细的了解,通过科学的对比和论证,让自己的心里都有了方案,最后在选择方案,我也作出了为什么要选择它的解释,并且对整体方案进行了简要说明。
第2章介绍了硬件电路,详细的说明了硬件的各个部件,并对其进行分析说明,给出了硬件电路框图以及整个硬件电路,并对某些元件在电路中所起的作用作了说明,然后讲述了硬件调试。
第3章介绍了软件设计,给出了整个软件设计的流程图,并对各部分的软件设计进行了仔细的说明,然后给出了软件调试的思想
第4章对红外线遥控器的应用前景进行了展望,并对此次的设计进行了分析说明,并对提供过帮助的老师和同学表示了感谢。
以上是本毕业论文的基本框架,希望对大家的阅读有所帮助。
第1章总体设计方案
本设计分为硬件设计和软件设计,硬件方面通过设计电路来使其能达到理想的功能,在硬件方面设有不同的按键,通过软件方面的设计使各个按键拥有不同的功能。
1.1设计原理
学习型红外遥控器在按下K键待绿色指示灯亮后,用遥控器对着红外接收头按下某个功能键,当绿灯灭说明学习完毕,再按发射键就可以进行遥控操作。
当红外遥控器的某个按键按下时,发射出一组串行二进制遥控编码脉冲。
该脉冲由引导码、系统码、功能码和反码组成,通过设置这些编码以及码长便可区分不同的红外遥控器。
红外接收器负责红外信号的接收和放大并解调出TTL电平信号送至微处理器进行处理,微处理器通过比较和识别接收来的红外遥控编码便可执行相应的遥控功能。
本系统的设计思想是不考虑红外编码方式,仅利用单片机AT89C52对多个红外遥控编码的脉冲宽度进行测量,并原封不动地把发射信号中高、低电平的时间宽度记忆至扩展存储区的指定地址。
当要发射红外信号时,从扩展存储区中还原出相应的红外遥控编码,并调制到40KHz的载波信号上,最后,通过三极管放大电路驱动红外发光二极管发射红外信号,达到学习和发射的目的,从而实现一个遥控器控制多种红外遥控设备。
1.2方案的论证
实现遥控器的功能有许多不同的方法,下面通过介绍两种不同的遥控电路。
方案一简易的红外遥控电路
在不需要多路控制的应用场合下,可以使用由常规电路组成的单通道红外遥控电路。
这中遥控电路不需要使用较贵的专用便译码器,因此成本较低。
其系统电路框图如:
图1-1
图1-1方案一系统方框图
方案二利用AT89C52单片机控制电路
用单片机制作一个红外遥控器,并可通过程序控制记忆按键功能,达到学习记忆功能。
图1-2方案二系统方框图
当按下遥控器按钮时,单片机产生相应的控制脉冲,由红外发光二极管发射出去。
当红外就收器接收到控制脉冲时,经单片机处理由显示设备显示出当前受控电器的序号,并判断是否对某一功能进行的操作。
以上方案:
方案一未采用单片机,功能过于单一,仅能对一路电器进行简单遥控;方案二不仅可以用控制按键实现对电器的控制,而且可记忆学习按键功能,达到复制的功能,方便使用,且成本设计用AT89C52也比较便宜实用。
本设计将采用方案二作为设计蓝本。
1.3总体设计方案
本设计是通过对原遥控器发出的信号进行解码和再编码,在经过发射装置发射以致控制电器,本遥控器自动默认发射状态,当需要学习时,按下学习键,遥控器进入学习状态,按下被学习遥控器的按键,便可对它进行学习,对其信号进行处理由单片机内部进行,在处理完成后自动存储在设置的存储器中,并由其内部设置关联的按键,当需要遥控时,按下相应的按键,就可以操作相应的电器,学习过程如图1-3所示,使用过程如图1-4所示
图1-3发射状态
图1-4学习状态
通过上面的电路介绍,设计出了总电路的框图,它包括主芯片,发射部分,接收部分,键盘,存储器。
接收部分通过接受外部的信号,传入单片机中进行解码处理,处理后存入存储器中,但需要使用时,按下键盘相应的键,单片机将调用相应的代码,通过发射电路发射出去。
图1-5就是总电路框图。
图1-5总电路框图
第2章硬件设计
通过上面的图1-5,已经可以看出电路分为五部分,本文分别将他们单独作为介绍,通过论证,已将电路各个部分的主要芯片确定,下面将说明如何选择器件的。
2.1器件的选择
根据上述方案二的要求以及红外遥控自身的工作特点,如工作、压低,低功耗等,选择了以下器件:
(1)单片机AT89C52;
(2)串行存储器AT24C02;
(3)红外接收头HS0038B3V;
(4)红外发射头TSAL6200;
(5)若干三极管、电阻和电容等。
2.1.1单片机的选择
本设计的遥控器在工作过程需要对学习信号进行分析解码,然后存储起来,等按下相应的键然后调用相对应的信息,通过发射部分发射出去,因此需要其能够完成复杂的信号处理,这就需要选择的单片机处理速度快,内部有足够的内存。
AT89C52是一个低电压,高性能COMS8位单片机,片内含8kbytes的可反复擦写的Flash只读程序存储器和256bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器和Flash存储单元【1】。
AT89C52完全能够使本设计达到目的,因此选择了此单片机,作为本设计的主芯片。
1.主要特性功能:
兼容MCS51指令系统
8k可反复擦写(大于1000次)FlashROM;
32个双向I/O口;
256x8bit内部RAM;
3个16位可编程定时/计数器中断;
时钟频率0-24MHz;
2个串行中断,可编程UART串行通道;
2个外部中断源,共8个中断源;
2个读写中断口线,3级加密位;
低功耗空闲和掉电模式,软件设置睡眠和唤醒功能;
有PDIP、PQFP、TQFP及PLCC等几种封装形式,以适应不同产品的需求。
2.引脚功能及管脚电压
图2-1单片机管脚图
AT89C52为8位通用微处理器,采用工业标准的C51内核,在内部功能及管脚排布上与通用的8xc52相同,其主要用于会聚调整时的功能控制。
功能包括对会聚主IC内部寄存器、数据RAM及外部接口等功能部件的初始化,会聚调整控制,会聚测试图控制,红外遥控信号IR的接收解码及与主板CPU通信等。
主要管脚有:
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口是一组8位漏极开路型双向I/O口,也即地址/数据总线复用口。
作为输出口用时,每位能吸收电流的方式驱动8个TTL逻辑门电路,对端口P0写“1”时,可作为高阻抗输入端用。
在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低8位)和数据总线复用,在访问期间激活内部上拉电阻。
在Flash编程时,P0口接收指令字节,而在程序校验时,输出指令字节,校验时,要求外接上拉电阻。
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是一个带有内部上拉电阻的8位双向I/O口,P2的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。
对端口P2写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口,作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电(IIL)。
在访问外部程序存储器或16位地址的外部数据存储器(例如执行MOVX@DPTR指令)时,P2口送出高8位地址数据。
在访问8位地址的外部数据存储器(如执行MOVX@RI指令)时,P2口输出P2锁存器的内容。
Flash编程或校验时,P2亦接收高位地址和一些控制信号。
P3口是一组带有内部上拉电阻的8位双向I/O口。
P3口输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。
对P3口写入“1”时,它们被内部上拉电阻拉高并可作为输入端口。
此时,被外部拉低的P3口将用上拉电阻输出电流(IIL)。
P3口除了作为一般的I/O口线外,更重要的用途是它的第二功能。
P3口还接收一些用于Flash闪速存储器编程和程序校验的控制信号。
RST复位输入。
当振荡器工作时,RST引脚出现两个机器周期以上高电平将使单片机复位【2】。
复位是单片机初始化操作,其主要功能是把PC初始化为0000H,使单片机从0000H单元执行程序。
除了进入系统的正常初始化之外,当程序运行出错或操作错误使系统处于死锁状态时,为摆脱困境,也需要按复位键重新启动。
复位操作有上电自动复位和按键手动复位两种方式。
本设计采用了按键手动复位方式。
复位电路采用了按键与上电复位。
上电与按键均可以有效复位。
上电瞬间RST引脚获得高电平,单片机复位电路随着电容的C12的充电,RST引脚的高电平逐渐下降。
RST引脚的高电平只要能保持足够的时间(2个机器周期),单片机就可以进行复位操作。
按键复位是直接将高电平通过电阻R31分压到达RESET引脚,实现复位操作[3]。
复位电路如图2-2。
图2-2复位电路图
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则执行内部程序存储器中的指令。
Flash存储器编程时,该引脚加上+12V的编程允许电源Vpp,当然这必须是该器件是使用12V编程电压Vpp。
XTAL1振荡器反相放大器的及内部时钟发生器的输入端。
XTAL2振荡器反相放大器的输出端。
在XTAL1、XTAL2两端跨接一个石英晶体振荡器,和两个电容就构成了稳定自激谐振电路。
晶振频率为11.0592MHz。
C12,C13是两个瓷片电容,与晶振Y2构成了自激谐振电路。
其电容的作用主要是对频率进行微调,一般取30-45PF左右。
使用该电路可产生稳定的11.0592MHZ频率,受外界的环境的干扰影响非常小【5】。
其接法如图所示:
图2-3晶振电路
3.特殊功能寄存器
在AT89C52片内存储器中,80H-FFH共128个单元为特殊功能寄存器(SFR),SFR的地址空间映象如表2所示。
并非所有的地址都被定义,从80H—FFH共128个字节只有一部分被定义,还有相当一部分没有定义。
对没有定义的单元读写将是无效的,读出的数值将不确定,而写入的数据也将丢失。
不应将数据写入未定义的单元,由于这些单元在将来的产品中可能赋予新的功能,在这种情况下,复位后这些单元数值总是“0”。
AT89C52除了有AT89C51所有的定时/计数器0和定时/计数器1外,还增加了一个定时/计数器2。
定时/计数器2的控制和状态位位于T2CO(参见表3)T2MOD(参见表4),寄存器对(RCAO2H、RCAP2L)是定时器2在16位捕获方式或16位自动重装载方式下的捕获/自动重装载寄存器。
4.数据存储器
AT89C52有256个字节的内部RAM,80H-FFH高128个字节与特殊功能寄存器(SFR)地址是重叠的,也就是高128
字节的RAM和特殊功能寄存器的地址是相同的,但物理上它们是分开的。
当一条指令访问7FH以上的内部地址单元时,指令中使用的寻址方式是不同的,也即寻址方式决定是访问高128字节
RAM还是访问特殊功能寄存器。
如果指令是直接寻址方式则为访问特殊功能寄存器。
例如,下面的直接寻址指令访问特殊功能寄存器0A0H(即P2口)地址单元。
MOV0A0H,#data
间接寻址指令访问高128字节RAM,例如,下面的间接寻址指令中,R0的内容为0A0H,则访问数据字节地址为0A0H,
而不是P2口(0A0H)。
MOV@R0,#data
堆栈操作也是间接寻址方式,所以,高128位数据RAM亦可作为堆栈区使用。
定时器0和定时器1:
AT89C52的定时器0和定时器1的工作方式与AT89C51相同。
5.时钟震荡
AT89C52中有一个用于构成内部振荡器的高增益反相放大器,XTAL1和XTAL2分别是该放大器的输入端和输出端。
这个放大器与作为反馈元件的片外石英晶体或陶瓷谐振器一起构成自激振荡器,振荡电路。
外接石英晶体(或陶瓷谐振器)及电容C1、C2接在放大器的反馈回路中构成并联振荡电路。
对外接电容C1、C2虽然没有十分严格的要求,但电容容量的大小会轻微影响振荡频率的高低、振荡器工作的稳定性、起振的难易程序及温度稳定性,如果使用石英晶体我们推荐电容使用30pF±10pF,而如使用陶瓷谐振器建议选择40pF±10pF。
用户也可以采用外部时钟。
采用外部时钟的电路如图10右图所示。
这种情况下,外部时钟脉冲接到XTAL1端,即内部
时钟发生器的输入端,XTAL2则悬空。
由于外部时钟信号是通过一个2分频触发器后作为内部时钟信号的,所以对外部时钟信号的占空比没有特殊要求,但最小高电平持续时间和最大的低电平持续时间应符合产品技术条件的要求。
2.1.2串行存储器AT24C02
在本设计中,为了解决某些信号由于信息量过大而导致单片机内存不足于存储这些信息,本设计特意增加了一个外部存储器来弥补内存不足的问题,使整个电路更加完整.AT24C02是一个2K的串行CMOSE2PROM,完全能够解决本设计的内存不足问题,而且本存储器价格便宜,所以本设计选择此存储器。
AT24C02是一个2K位串行CMOSE2PROM,内含有256个8位字,CATALYST公司的先进CMOS技术实质上减少了器件的功耗。
AT24C02有一个16字节缓冲器。
该器件通过IIC总线接口进行操作,有一个专门的写保护功能。
1.极限参数:
工作温度工业级-55℃+125℃
商业级0℃+75℃
贮存温度-65℃+150℃
各管脚承受电压-2.0Vcc+2.0V
VCC管脚承受电压-2.0+7.0V
封装功率损耗(Ta=25℃)1.0W
焊接温度(10秒)300℃
输出短路电流100mA
2.特性:
数据线上的看门狗定时器
可编程复位门栏电平
高数据传送速率为400KHz和1C总线兼容
2.7V至7V的工作电压
低功耗CMOS工艺
16字节页写缓冲区
片内防误擦除写保护
高低电平复位信号输出
100万次擦写周期
数据保存可达100年
商业级、工业级和汽车温度范围
3.功能描述:
AT24C02支持I2C,总线数据传送协议I2C,总线协议规定任何将数据传送到总线的
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 智能 遥控器 研究 设计
![提示](https://static.bdocx.com/images/bang_tan.gif)