版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
图2-1学习型多功能遥控器的系统框图系统框图中的单片机AT89C51用来协调各个单元,红外接收电路用来接收要学习的红外信号,红外发射电路用来发射控制电器的红外信号,存储器用来存储接收的信号,键盘及状态指示电路中设计有欠压电路,用来检测电源的电压。2.1单片机的选型单片机就是把CPU,ROM,以及外围接口电路如I/O电路都集成在一快芯片上,其基本拥有计算机的功能,由于其本身的集成度相当高,所以ROM/RAM容量有限,接口电路也不多,适用与一般小系统中。单片机就是在一块PCB电路板上把CPU,一定容量的ROM,RAM以及I/O接口电路等大规模集成电路片子组装在一起而成的微机,并配有简单外设如键盘和显示器,通常在PCB上固化有ROM或者EPROM的小规模监控程序。麻雀虽小,五脏俱全。它是一种在线式实时控制计算机,在线式就是现场控制,需要的是有较强的抗干扰能力,较低的成本,这也是和离线式计算机的(比如家用PC)的主要区别。单片机是靠程序的,并且可以修改。通过不同的程序实现不同的功能,尤其是特殊的独特的一些功能,这是别的器件需要费很大力气才能做到的,有些则是花大力气也很难做到的。一个不是很复杂的功能要是用美国50年代开发的74系列,或者60年代的CD4000系列这些纯硬件来搞定的话,电路一定是一块大PCB板。但是如果要是用美国70年代成功投放市场的系列单片机,结果就会有天壤之别。只因为单片机的通过编写的程序可以实现高智能,高效率,以及高可靠性。由于单片机对成本是敏感的,所以目前占统治地位的软件还是最低级汇编语言,它是除了二进制机器码以上最低级的语言了,既然这么低级为什么还要用呢?很多高级的语言已经达到了可视化编程的水平为什么不用呢?原因很简单,就是单片机没有家用计算机那样的CPU,也没有像硬盘那样的海量存储设备。一个可视化高级语言编写的小程序里面即使只有一个按钮,也会达到几十K的尺寸!对于家用PC的硬盘来讲没什么,可是对于单片机来讲是不能接受的。单片机在硬件资源方面的利用率必须很高才行,所以汇编虽然原始却还是在大量使用。由于本次单片机应用在家用遥控器上,所以本设计选用了低功耗、低价格的AT89C51单片机。2.1.1AT89C51概述AT89C51是美国ATMEL公司生产的低电压,高性能CMOS8位单片机,片内含4kbytes的可反复擦写的只读程序存储器(PEROM)和128bytes的随机存取数据存储器(RAM)。
AT89C51有40个引脚,32个外部双向输入/输出(I/O)端口,同时内含2个外中断口,3个16位可编程定时计数器,2个全双工串行通信口,2个读写口线,AT89C51可以按照常规方法进行编程,也可以在线编程。其将通用的微处理器和Flash存储器结合在一起,特别是可反复擦写的Flash存储器可有效地降低开发成本。器件的高密度、非易失性存储技术生产,与标准MCS-51指令系统及8052产品引脚兼容,片内置通用8位中央处理器(CPU)和Flash存储单元,功能强大的AT89C51单片机可灵活应用于各种控制领域。AT89C51与Intel公司的80C52在引脚排列、硬件组成、工作特点和指令系统等方面兼容。图图2-2AT89C51芯片片AT89C51主要功能特性:(1)与MCS-51指令系统兼容(2)4k可反复擦写(>1000次)FlashROM(3)32个双向I/O口(4)可编程UARL通道(5)两个16位可编程定时/计数器(6)全静态操作0-24MHz(7)1个串行中断(8)128x8bit内部RAM(9)两个外部中断源(10)共6个中断源(11)可直接驱动LED(12)3级加密位(13)低功耗空闲和掉电模式(14)软件设置睡眠和唤醒功能2.1.2VCC:供电电压。GND:接地。P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”P3口也可作为AT89C51的一些特殊功能口,如下所示:各管脚备选功能如下:P3.0RXD(串行输入口)P3.1TXD(串行输出口)P3.2/INT0(外部中断0)P3.3/INT1(外部中断1)P3.4T0(记时器0外部输入)P3.5T1(记时器1外部输入)P3.6/WR(外部数据存储器写选通)P3.7/RD(外部数据存储器读选通)P3口同时为闪烁编程和编程校验接收一些控制信号。RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时,ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。/PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。/EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2:来自反向振荡器的输出。2.1.3管脚应用P0口、P2.0~P2.4作为存储器和显示器的数据与地址线,并通过74HC573/74HC273扩展,增加引脚。P89LPC932看门狗定时器具有片内独立振荡器,所以P3.0、P3.1可以用作I/O口,且P3.0与74HC573、74HC273的CLK相连,用作ALE。P1.4用来控制发射电路,P1.5、P1.7控制接收电路。P1.6用来控制74HC273。P2.6、P2.7分别用来控制DS1225Y的写与读。2.2键盘的设计本键盘用的是4×4矩阵键盘,与单片机AT89C51连接图如下:图图2-3键盘与单片机连接图如图2-3所示,用单片机的并行口P1接4×4矩阵键盘,以P1.0-P1.3作输入线,以P1.4-P1.7作输出线;由于仿真软件中只有(2)中的键盘,所以数字7代表本键盘中的0,数字8代表1,9代表2,÷代表3,依次类推……在数码管上显示每个按键的“0-F”序号。对应的按键的序号排列如图2-4所示。(a)本键盘按键分布(b)仿真软件的按键分布图图2-4键盘按键的分布图本设计中键盘设计为矩阵按键部分由16个轻触按键按照4行4列排列,连接到JP50端口。将行线所接的单片机的I/O口作为输出端,而列线所接的I/O口则作为输入。这样,当按键没有按下时,所有的输出端都是高电平,代表无键按下。行线输出是低电平,一旦有键按下,则输入线就会被拉低,这样,通过读入输入线的状态就可得知是否有键按下了。这种键盘外围元件少,扩充灵活,而且功耗低。键盘的硬件电路如图2-5所示:图图2-5键盘硬件图由图2-5可以看出,该键盘为4行4列(4×4)共16个键,使用8条I/O口作为控制线,其中P1.0、P1.1、P1.2、P1.3为扫描线,P1.4-P1.7作为列回复线。其工作原理是:首先使P1.4-P1.7为低电平,P1.0、P1.1、P1.2、P1.3为高电平,读取P1.4~P1.7的状态并存放在某个存储器的低4位中,此时高4位置零。然后使P1.4~P1.7为高电平,P1.0、P1.1、P1.2、P1.3为低电平,读取P1.0、P1.1、P1.2、P1.3的状态并存放在某个存储器的高4位,而低4位为低电平。最后,将这两个存储器存放的数值取逻辑后,再判断其结果产生按键的键值。2.3红外接收头的设计2.3.1红外线(1)红外线的应用1800年英国天文学家威.赫谢耳(W.Herschel)在研究太阳光谱的热效应的时候,发现产生热效应最大的位置是在可见光谱的红端以外(光谱中红端以外的线故简称为红外线),比从而首先发现了太阳光谱中还包含看不见的辐射能。当时他称这种辐射能为“不可见的光线”,后来人们就称它为红外线,而且,直到目前为止,受热物体仍是最重要、最常见的红外线辐射源,所以,早期对红外线的研究,往往把它叫做热辐射。自从红外激光器和其他类型红外辐射源问世以后,再把红外辐射仅仅理解为热辐射,就有些片面。现从所周知,红外线和无线电波、可见光、X射线等一样都是电磁辐射。通常按照它们各自所占据的波长(或率)范围排列起来形成电磁波谱。红外线就是波长介于0.75-3μm到1000μm之间的电磁辐射。在红外技术领域中,由于不同波长的红外辐射在地球大气层中传输特性的不同,通常又把整个红外辐射分成下列几个波段,分别称为:①近红外:波长范围0.75-3μm;②中红外:波长范围3-6μm;③远红外:波长范围6-15μm;④极远红外:15-1000μm。红外实验和理论的发展,促进了红外技术的建立。二十世纪初,科学工作者开创了红外学谱和精密辐射学的应用,对恒星和行星的温度进行了辐射测量并把红外光源用于医疗过程。1920年到1950年间出现了红外探测、保密通讯、防盗预警、温度遥测等设备的专利文献。第二次世界大战期间红外探测、红外夜视等军用红外技术相继出现。第二次大战后,尤其是五十年代以来,半导体工艺以及激光技术,它提供了高灵敏度,响应速度快的光子探测器和单色性好、能量集中的相关光源,使得红外技术得到了突飞猛进的发展。到了今天,广泛应用于工业、农业、国防、医疗、交通等各行各业,已逐步形成了一个相对独立的红外丝系统工程领域。(2)红外遥控器的特点及优点:红外遥控是利用波长为0.76μm-1.5μm之间的近红外线来传递控制信号的。它具有以下特点:①由于为不可见光,因此,对环境影响很小。红外线的波长远小于无线电波的波长,所以,红外遥控不会干扰其它家用电器,也不会影响近邻的无线电设备。②红外线为不可见光,具有很强的隐蔽性和保密性,因此在防盗,警戒等安全保卫装置中也得到了广泛的应用。③红外线遥控的遥控距离一般为几米至几十米或更远一点。④红外线遥控具有结构简单,制作方便,成本低廉,抗干扰能力强,工作可靠性高等一系列优点,特别是室内遥控的优先遥控方式。同时,由于采用红外线遥控器件时,工作电压低,功耗小,外围电路简单,因此它在日常工作生活中的应用越来越广泛。它在技术上的主要优点是:①无需专门申请特定频率的使用执照;②具有移动通信设备所必需的体积小、功率低的特点;③传输速率适合于家庭和办公室使用的网络;④信号无干扰,传输准确度高;它的缺点是:由于它是一种视距传输技术,采用点到点的连接具有方向性,两个设备之间如果传输数据,中间就不能有阻挡物;而且通讯距离较短,此外红外LED不是一种十分耐用的器件。(3)红外遥控器的发展:红外遥控的发展过程60年代初,一些发达国家开始研究民用产品的遥控技术,但由于受当时技术条件的限制,遥控技术发展很缓慢。70年代末,随着大规模集成电路和计算机技术的发展,遥控技术才得到快速的发展。在遥控方式上大体经历了从有线到无线的超声波、从振动子到红外线、再到使用总线的微机红外遥控这样几个阶段。2.3.2红外发射电路该图为遥控系统的发射器原理图,其中P2口作为键盘扫描端口,具有16个功能操作键;第9脚为单片机复位脚,采用复位电路如图所示;15脚作为红外线遥控码的输出口,用于38Hz载波编码;18、19脚接12MHz晶振。图图2-6红外发射电路原理图当系统进入发射功能时,AT89C51首先扫描矩阵键盘以识别相应的按键,然后从EEPROM中取出相应键值的遥控基带信号,即红外遥控编码的高、低电平持续时间。同时,直接用定时器T1来产生38KHz的载波信号,从使用振荡器NEC555产生载波信号的缺陷。最后,将遥控基带信号调制到载波上,经三极管9013和8050进行两级放大以驱动红外发射管辐射出940nm的红外脉冲信号。2.3.3红外接收电路接收电路使用集成红外接收器成品,一般不需要任何外接元件就能完成从红外接收到输出TTL电平兼容信号的所有工作。注意选择接收器件时要保证接收器件的中心频率与发射信号的中心频率相匹配。图为该遥控系统的接收器原理图,其中P1口作为数码管的二进制数据输出,显示按键号,P1.7和P3.0作为数码管的片选,实现动态扫描。第11脚P3.1用于接收遥控码输入信号。第16脚P3.6接继电器。图图2-7红外接收电路图当系统进入学习功能时,定时器T0先把经P2.1遥控编码暂存到RAM,最后将其存储至EEPROM指定的地址中,以免数据掉电丢失。按学习/控制键使CPU切换到学习状态,此时学习状态指示灯D5点亮,在按下某一设备选择键时,程序调整数据指针(由程序开发者设定),使其指向数据存储器的某一指定长度数据区的起始单元,当同时按下本遥控器的某一控制键和被学习遥控器的某一控制键时,就会由程序控制向P3.1管脚(即JR端)输出低电平(原初始化程序将其设置为高电平),JR端的电平信号是或非门U1A的控制电平。当P3.1=0时,U1A输出为输入端的反相信号。即由D1、U4构成的红外线接收电路负责接收被学习遥控器发送来的信号,当D1有红外信号输入时,该信号经U4解调、整形、放大后(此解码脉冲与原编码脉冲反相位)由7管脚输出,经或非门U1A反向经由IN管脚输入给P1.4管脚,此信号的第一个高电平脉冲向C4迅速充电(合理选择R3,R4的参数,以防止重复触发),同时通过U2A的IT管脚向INT1管脚送一个下降沿信号,CPU响应中断后,从P14定时采集U1A的IN红外线编码信号,形成一系列二进制数码,并以8位为单位存放到指定设备、指定按键的数据区(可以通过一码连发进行错误校验),从而完成一个键的学习。如果再学习其他键的功能,方法相同。如果想学习另外设备的各个键的功能,按下本遥控器的另外一个设备选择键,然后分别按下各个功能控制键,从而学习被学习遥控器的各个功能。3多功能遥控器的软件设计在本设计中所用到的软件设计语言全是汇编语言,因为汇编语言在单片机中应用最广泛,电脑每做的一次动作,一个步骤,都是按照以经用计算机语言编好的程序来执行的,程序是计算机要执行的指令的集合,而程序全部都是用我们所掌握的语言来编写的。所以人们要控制计算机一定要通过计算机语言向计算机发出命令。计算机所能识别的语言只有机器语言,即由0和1构成的代码。但通常人们编程时,不采用机器语言,因为它非常难于记忆和识别。汇编语言的实质和机器语言是相同的,都是直接对硬件操作,只不过指令采用了英文缩写的标识符,更容易识别和记忆。它同样需要编程者将每一步具体的操作用命令的形式写出来。汇编程序通常由三部分组成:指令、伪指令和宏指令。汇编程序的每一句指令只能对应实际操作过程中的一个很细微的动作,例如移动、自增,因此汇编源程序一般比较冗长、复杂、容易出错,而且使用汇编语言编程需要有更多的计算机专业知识,但汇编语言的优点也是显而易见的,用汇编语言所能完成的操作不是一般高级语言所能实现的,而且源程序经汇编生成的可执行文件不仅比较小,而且执行速度很快。汇编语言(AssemblyLanguage)是面向机器的程序设计语言。在汇编语合中,用助记符(Memoni)代替操作码,用地址符号(Symbol)或标号(Label)代替地址妈。这样用符号代替机器语盲的二进制码,就把机器语音变成了汇编语言。于是汇编语言亦称为符号语言。使用汇编语言编写的程序,机器个能直接识别,要由一种程序将汇编语言翻译成机器语言,这种起翻译作用的程序叫汇编程序,汇编程序是系统软件中语言处理系统软件。汇编语言把汇编程序翻译成机器语言的过程称为f汇编。汇编语言的特点:(1)面向机器的低级语言,通常是为特定的计算机或系列计算机专门设计的。(2)保持了机器语言的优点,具有直接和简捷的特点。(3)可有效地访问、控制计算机的各种硬件设备,如磁盘、存储器、CPU、I/O端口等。(4)目标代码简短,占用内存少,执行速度快,是高效的程序设计语言。(5)经常与高级语言配合使用,应用十分广泛。汇编语言的应用:(1)70%以上的系统软件是用汇编语言编写的。(2)某些快速处理、位处理、访问硬件设备等高效程序是用汇编语言编写的。(3)某些高级绘图程序、视频游戏程序是用汇编语言编写的。
汇编语言是我们理解整个计算机系统的最佳起点和最有效途。人们经常认为汇编语言的应用范围很小,而忽视它的重要性。其实汇编语言对每一个希望学习计算机科学与技术的人来说都是非常重要的,是不能不学习的语言。
所有可编程计算机都向人们提供机器指令,通过机器指令人们能够使用机器的逻辑功能。所有程序,不论用何种语言编制,都必须转成机器指令,运用机器的逻辑功能,其功能才能得以实现。机器的逻辑功能,软件系统功能构筑其上,硬件系统功能运行于下。每一种系列不同的单片机产品都有自己不同的汇编指令集。8051的汇编是intel公司51系列单片机汇编集最基本的指令集,使用这个汇编指令集的常见的单片机还有87atc51、87atc52、89atc51、89atc52、87atc51、87atc52、89atc51、89atc52、89at2051……这些是atml公司生产的51系列单片机。华邦公司也生产51系列,而且性能更好一些。此外还有intel的96系列高性能单片机。学会了8051的汇编集,以上这些单片机的基本功能大多就能实现,个别机型的独特功能就需要特别对待。除了51系列的单片机,台湾生产的凌阳系列(61)也是一种常见的廉价机型,它有自己的一套汇编指令集,功能比较强大。现在也有不少人在学。此外还有基于soc应用的arm机,数字信号处理的dsp等。他们都有自己的汇编指令集,而且更复杂。总之汇编集是每个芯片公司自己开发的,只有同系列的单片机才可能使用相同的汇编指令。所以本设计中所应用到的单片机语言为汇编语言。3.1主程序流程当开始操作整个主程序时,先初始化开始进行键盘扫描,检查是否有按下键,按下键,信号输出,红外接收电路接收进行学习控制。图3-1为主程序的流程图:调用按键扫描程序调用按键扫描程序N扫描键按下?按键号转发送程序发送发送完毕?开始初始化YNY开始初始化调用显示程序开始初始化调用显示程序返回判断信号是否有效中断触发中断返回N接收接收完毕得键号调用功能相应程序YNY图3-1图3-1主程序流程图3.2键号判别程序设计判别键盘上有无键闭合:其方法使p1口“0”,读P1.1~P1.7的状态,若全为“1”(键盘上行线全为高电平),则键盘上没有键闭合;若P3.1~P3.4、P3.7不全为“1”,则有键处于闭合状态。其方法为在判别到键盘闭合后,延时一段时间再判别键盘的状态,若仍有键闭合,则认为键盘上有一个键处于稳定的闭合期;否则认识键的抖动。判别闭合键的键号:方法为对键盘的列线进行扫描,扫描口P1口依次输出:顺次读出P3.1~P3.7口的状态,若全为“1”,则列线输出为“0”的这一列上没有键闭合;否则有键闭合。闭合键的键号为低电平的列号加上为低电平的行的首键号。例如:P1口的输出为11111使CPU对键的一次闭合仅做一次处理:采用的方法为等待闭合键释放以后再作处理。键盘输入子程序的框图如图3-2所示(从该程序返回输入号在A):图图3-2键盘输入程序流程3.3红外发射的程序设计红外信号发射必须调制到较高的频率的载波上才能发射出去,以提高传输的抗干扰能力,当输入信号端P2.1为高电平时,输出遥控脉冲信号,当输入信号端P2.1为低电平时,TH0、TL0清零,启用T0。(如图3-3)返回返回YN记录TH0、TL0NP2.1为高?YTH0、TL0清零,重新启动T0记录TH0、TL0YP2.1一直为低?P2.1变低,TH0、TL0清零,启动T0Y遥控脉冲信号?P2.1为高电平NNTf0=1?图图3-3红外发射程序流程单片机不断扫描矩阵键盘,若有键按下,从EEPROM中取出对应键值的存储数据取反后作为T0的初始值,同时启动T0和T1,并用T1产生38KHz的载波信号。在高电平且T0没溢出时,从P2.6口不断地输出载波信号,T0溢出后关闭T0、T1。然后重新启动T0,把EEPROM中下一个地址的数据取反并作为T0的初始值,此时关闭T1,在这个脉冲周期内不产生载波。如此循环反复,从P2.6口输出的就是已调制到载波上的红外脉冲信号,经三极管两级放大来驱动红外发射管输出红外遥控信号。3.4红外信号接收、学习程序设计红外线接收电路就开始接收外来红外信号,同时将其转换成电信号,然后经过检波、整形、放大,再由CPU定时对其采样,将每个采样点的二进制数据以8位为一个单位,分别存放到指定的存储单元中去,供以后对该设备控制使用。当遥控器处于控制状态时,使用者每按下一个控制键,CPU从指定的存储单元中读取一系列的二进制数据,串行输出(位和位之间的时间间隔等于采样时的时间间隔)给信号保持电路,同时由调制电路进行信号调制,将调制信号经放大后,由红外线发射二极管进行发射,从而实现对该键对应设备功能的控制。
返回返回TF0=1?NY取出下一组测量数据取反作为定时器T0的初始值,启动T0关闭T1TF0=1?从AT89C51中取出相应键值数据取出一组测量数据取反作为定时器T0的初始值,启动T0、T1YN1616图图3-4学习程序流程图3.5红外解码的程序设计要了解一个未知的遥控器,首先要分析其脉冲,从而了解到其脉冲波形特性(以何种方式携带“0”、“1”信息),进而了解其编码规律。脉冲流的分析应从分析脉冲的高、低电平入手,解码电路将第一次收到的地址码与本地地址码比较,若相符,则将紧接着收到的4位数据码存入移位寄存器中;若第二次再收到的地址码仍等于本地地址码,则将第二次收到的数据码与第一次收到的数据码做比较,若相等,则一方面将4位数据码锁存到输出锁存电路;另一方面将有效传输输出变为高电平,否则有效传输输出为低电平。下面是用软件的方法来实现对脉冲流的分析:MOVRO,00HMOVR1,#28HMOVTMOD,#01HTK:JBP3.3,TK;等待低电平到来;测低电平宽度TK1:MOVTH0,#00HMOVTL0,00HSETBTR0TK0:JBTKE;超时无效返回JNBP3.3,TK2CLRTROMOVA,YH0MOVX@R0,AINCR0;测高电平宽度MOVTH0,#00HMOVYL0,#00HSETBTR0TK3:JBTF0,TKE;超时无效返回JBP3.3,TK3CLRTR0MOVA,TH0MOVX@R0,AINCR0MOVA,TL0MOVX@R0,AINCR0DJNZR1,TK;循环TKE:RET这段程序首先将TC0设置成16位定时器方式,初始化RAM地址指针R0和循环计数指针R1,每当引脚的逻辑电平发生跳变时,停止计时,将计时值保存到连续的RAM中。这段程序可以连续测量40个脉冲的时间值(包括40个低电平脉宽)。设计时通过大量的不同种类的遥控码波形实验分析,遥控码的帧间歇位宽度均在10ms以上,起始位码宽度在100μs~20ms之间,编码位在100μs~5ms之间,为确保所有遥控器学习的成功,采用以下设计方法:(1)寻提起始位方法:用16位DPTR计数器对高电平进行宽度计数,计数采样周期为21μs,当高电平结束时,如高8位计数器为非零,则说明高电平。宽度超过5.35ms(255×21μs),紧接来的低电平码就是起始位,否则重新开始。(2)读起始位方法:采用16位DPTR对低电平进行宽度计数(最大可读宽度为1.376s),当高电平跳变时结束计数,并将DPTR的高8位、低8分别存入R4,R5寄存器。(3)读遥控编码的方法:采用DPTR低8位计数器对码(高电平或低电平)进行宽度计数,电平跳变时结束计数,并将值存入规定的地址,在高电平码计数时,如DPTR高8位计数器为非零(宽度大于5.35ms),则判定为结束帧间隔位,在相应存储单元写入OOH作为结束标志。4程序的调试4.1编译软件的使用和编译过程编译软件的使用:(1)Protel99se编译软件的装载:这个软件不需要安装,只要复制到机子里就行。(2)wave6000双击快捷方式,进入编辑界面,进行下一步编辑(如图)。图图4-1编译使用界面(3)点击文件,新建一个文件,将源程序输入后保存(生成.ASM文件)。(4)选择项目,点击全部编译,系统自动进行编译后弹出对话框,提示编译中出现的问题,双击提示后系统会自动指出出问题的地方(生成.BIN文件)。4.2烧片烧片用的是ISPLAY软件,它的使用方法如下:(1)先配置软件,选择AT89C52。(2)导入预先编译好的程序。(3)擦除芯片,然后烧制。烧片时应注意的问题:(1)芯片的放置要真确,否则有可能造成芯片烧坏。(2)配置芯片时要注意选对芯片型号,例如用AT89C52就要选:MCUAT89C52。(3)在烧片之前,应该先擦除芯片,防止芯片内原有遗留程序的影响。5设计总结这次毕业设计通过老师的指导,同组同学的讨论,以及自己的努力,我圆满的完成了任务,达到了设计的目的。我学会了工程设计的基本方法,对系统的整体分析,熟悉单片机应用系统的开发、研制过程,以及掌握有关微型机的硬件和软件的知识。真正感受到所学知识与实际的应用、单片机的应用、电子技术的应用、计算机网络技术的应用等等理论与实际相结合,让我大开眼界。通过这次设计使我明白到有些东西看上去非常简单,当自己置身其中去做时,并不容易了。在毕业设计的这段时间里,我也发现了自己所应该改进或是较为缺乏的部分,其一是分析问题的能力:可能是自己学习的不够扎实,实习中碰到了不少钉子,遇到问题时头脑很茫然;二是解决问题的成熟度:这也许是个性使然,再加上缺少经验的累积和历练,所以在处理设计中的问题时,容易慌慌张张.这次设计也让我再次体会到书本上学习到的专业知识和实际应用起来是两个完全不同的概念,所以在现阶段的学习中,我们主要是应该去学习专业理论知识,学习掌握分析问题和解决问题的能力。在以后的工作中,把理论和实际相结合,努力实现大学所学习的理论知识。所以说,这次毕业设计也是对以前所学知识的一个初审吧!对于我以后学习、找工作也真是受益菲浅。我感性回到理性的重新认识,进一步对社会的认知,对于以后工作所应把握的方向也有所启发!致谢在论文完成之际,我要特别感谢我的指导老师XXX老师的热情关怀和悉心指导。在我撰写论文的过程中,XXX倾注了大量的心血和汗水。作为一个本科生的毕业设计,由于经验的匮乏,难免有许多考虑不周全的地方,如果没有指导教师的的督促指导,想要完成这个设计是难以想象的。无论是在论文的选题、构思和资料的收集方面,还是在论文的研究方法以及成文定稿方面,我都得到了XXX悉心细致的教诲和无私的帮助,特别是他广博的学识、深厚的学术素养、严谨的治学精神和一丝不苟的工作作风使我终生受益,在此表示真诚地感谢和深深的谢意。在论文的写作过程中,也得到了许多同学的宝贵建议,使我在生活和学习中不断得到友谊的温暖与关怀,最重要的是一种精神上的激励,让我非常感动。同时要感谢学校所有的老师们,他们的言传身教使我终身收益,我很庆幸能够遇到这么多好老师,感谢你们一直以来对我的栽培。还要感谢的是我的父母对我支持与理解,是他们对我鼓励才使我取得今天的一点成绩,你们的关爱是我人生中最重要的财富,每当我遇到困难和挫折的时候你们始终都是最关爱我的人。短短数语难以表达我对你们的感激之情,唯有在未来的日子里继续努力地奋斗来报答你们的养育之恩。最后,我要向百忙之中抽时间对本文进行审阅、评议和参加本人论文答辩的各位老师表示感谢!参考文献:[1]周航慈.单片机应用程序设计技术[M].北京:北京航空航天大学出版社,2002:56-62.[2]李华等.MCS-51系列单片机实用接口技术[M].北京:北京航空航天大学出版社,1993:51-68.[3]马忠梅,籍顺心,张凯,马岩.单片机的C语言应用程序设计.修订版[M].北京:北京航空航天大学出版社,1999.[4]杜国信.脉码调制通信技术[M].北京:中国铁道出版社,1990.[5]赵晓安主编﹒MCS-51单片机原理及应用﹒天津天津大学出版社2001[6]楼然苗李光飞编著﹒51系列单片机设计实例﹒北京北京航空航天大学出版社2003部分文献综述:《单片微型机原理、应用与实验》一书对MCS-51系列单片机尤其是8051的原理、内部结构指令系统和接口等做了详细的论述,保证了本设计原理的正确性。《智能仪器原理及应用》一书对智能仪器的模拟量输入通道和人机接口作了详细的论述,为本设计键盘的设计提供了参考。《PHILIPS51LPC系列单片机原理及应用设计》一书对IC总线多了论述,为本设计家和单片机接口提供了参考。《电子技术课程设计指导》和《实用遥控电器》这两本书对一些常用的电子电路的设计作了论述,为本设计的红外接收电路、发射电路和欠电压指示电路提供了参考。《Protel电路设计教程》一书详细介绍了Protel电路原理图的设计与布线,为本设计的原理图布线提供了帮助。附录:键盘子程序清单:KEYBUFEQU30HORG00HSTART:MOVKEYBUF,#16WAIT:MOVP1,#0FFHCLRP1.7MOVA,P1ANLA,#0FHXRLA,#0FHJZNOKEY1LCALLDELY10MSMOVA,P1ANLA,#0FHXRLA,#0FHJZNOKEY1MOVA,P1ANLA,#0FHCJNEA,#0EH,NK1MOVKEYBUF,#0LJMPDK1NK1:CJNEA,#0DH,NK2MOVKEYBUF,#1LJMPDK1NK2:CJNEA,#0BH,NK3MOVKEYBUF,#2LJMPDK1NK3:CJNEA,#07H,NK4MOVKEYBUF,#3LJMPDK1NK4:NOPNOKEY1:MOVP1,#0FFHCLRP1.6MOVA,P1ANLA,#0FHXRLA,#0FHJZNOKEY2LCALLDELY10MSMOVA,P1ANLA,#0FHXRLA,#0FHJZNOKEY2MOVA,P1ANLA,#0FHCJNEA,#0EH,NK5MOVKEYBUF,#4LJMPDK1NK5:CJNEA,#0DH,N
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 上海科学技术职业学院《化工仪表2》2023-2024学年第一学期期末试卷
- 上海健康医学院《Java+高级编程》2023-2024学年第一学期期末试卷
- 上海建桥学院《税收实务与筹划案例》2023-2024学年第一学期期末试卷
- 上海济光职业技术学院《申论》2023-2024学年第一学期期末试卷
- 小班防暴演练安全教案
- 上海海洋大学《机械原理与设计2》2023-2024学年第一学期期末试卷
- 2024年中国沙滩车数码仪表市场调查研究报告
- 2024年中国水晶鹤嘴杯市场调查研究报告
- 2024年中国安全钩市场调查研究报告
- 上海工会管理职业学院《金属热处理工艺学》2023-2024学年第一学期期末试卷
- 世界经济概论马工程
- 部编版小学语文五上期末复习教案
- 北师大版三年级数学上册认识小数复习课件ppt
- 人因工程学课后习习题及解答
- 常用食物含铜量表【肝豆核状变性患者食物表】
- PMC部培训资料
- 2022年江苏省卫生系统事业单位考试(临床专业)参考题库(含答案)
- 人工挖探孔专项施工方案(共17页)
- 复合肥料配方大公开
- ZDJ9系列转辙机课件
- 邻近营业线施工方案)
评论
0/150
提交评论