基于PIC单片机学习型红外_第1页
基于PIC单片机学习型红外_第2页
基于PIC单片机学习型红外_第3页
基于PIC单片机学习型红外_第4页
基于PIC单片机学习型红外_第5页
已阅读5页,还剩41页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

本科毕业设计题目PIC学习型红外遥控器学生姓名专业名称电气工程及其自动化指导教师13年5月15日教学单位学生学号编号DQ2013DQ021PIC学习型红外遥控器摘要本文论述了一个基于PIC单片机的红外学习型遥控器设计与实现。系统主要由发射端和接收端两部分组成,发射端装置采用红外发射二极管作为发射器件,同时配有软件调制程序,从而保证发射端波形的稳定性。接收端装置采用一体化红外接收头作为系统的红外接收器件,一体化红外接收头的抗干扰能力强,红外解码的实时性好,因此保证了红外接收的抗干扰能力和实时性。保证了系统的整体效果,同时接收端装置配有液晶显示器,可以实时显示接收状态,方便用户了解系统的运行状态。本文分三部分进行论述,分别是系统硬件部分、系统软件部分和调试部分。硬件部分主要有单片机选择、红外编码、红外解码、键盘控制电路、LCD显示电路和存储电路组成;软件设计主要分为系统主程序、红外发射程序和红外接收程序;调试部分分为软件调试、硬件调试和常见故障。关键词单片机;红外学习;红外遥控器设计;HS0038PICLEARNINGINFRAREDREMOTECONTROLABSTRACTINFRAREDREMOTECONTROLISTHEMOSTWIDELYUSEDACOMMUNICATIONANDREMOTECONTROLMETHODDUETOTHEINFRAREDREMOTECONTROLDEVICEWITHSMALLSIZE,LOWPOWERCONSUMPTION,THEFUNCTIONISSTRONG,COSTLOWCHARACTERISTICTHUS,SMALLELECTRICALDEVICEAREADOPTINGINFRAREDREMOTECONTROL,INDUSTRIALEQUIPMENT,HIGHPRESSURE,RADIATION,INTOXICGAS,DUSTENVIRONMENT,USINGINFRAREDREMOTECONTROLNOTONLYFULLYRELIABLEANDCANEFFECTIVELYISOLATEDELECTRICALINTERFERENCETHISTOPICDESIGNANDCOMMISSIONINGAPICMICROPROCESSORBASEDONINFRAREDREMOTECONTROLOFLEARNING,PICMICROCONTROLLERHASSTRONGANTIINTERFERENCEABILITY,GOODSTABILITY,LOWPOWERCONSUMPTIONCHARACTERISTICSTHESYSTEMMAINLYBYTHELAUNCHANDTHERECEIVINGENDTWOPARTS,THELAUNCHDEVICEUSESINFRAREDEMISSIONDIODEASTHELAUNCHDEVICE,ANDEQUIPPEDWITHASOFTWAREPROGRAM,SOASTOENSURETHESTABILITYOFTHEEMISSIONWAVEFORMSTHERECEIVERDEVICEADOPTSINTEGRATIONINFRAREDSENSORASTHERECEIVINGDEVICEINFRAREDSYSTEM,THEINTEGRATIONOFTHEINFRAREDSENSORANTIJAMMINGABILITY,INFRAREDDECODINGOFGOODREALTIME,SOTHATTHEINFRAREDRECEIVINGOFANTIJAMMINGANDREALTIMEENSURETHATTHESYSTEMOVERALLEFFECT,ANDTHERECEIVERDEVICEEQUIPPEDWITHLCDMONITOR,CANREALTIMEDISPLAYRECEIVINGSTATE,CONVENIENTUSERSUNDERSTANDTHEOPERATIONOFTHESYSTEMSTATESYSTEMDESIGNOFINFRAREDREMOTECONTROL,GOODSTABILITYANDANTIJAMMINGCAPABILITY,HIGHCOSTPERFORMANCEANDCANBEWIDELYUSEDINTHEACTUALSITUATION,HAVEAGOODPRACTICALVALUEKEYWORDSSCMTEMPERATURETRANSFERINFRAREDREMOTECONTROLDESIGN;HS0038目录绪论11系统的硬件设计311单片机PIC16F877的选用及简介412红外遥控8121红外技术概述8122红外线遥控器解码原理913红外解码原理1114键盘控制1515LCD显示电路162系统的软件设计2021主程序2022红外接收程序2123红外发射程序223系统总体调试2431软件调试方法2432硬件调试方法2433常见的硬件故障26结论27致谢28参考文献28附录A系统设计原理图31附录B程序清单32附录C开题结题答辩报告401宝鸡文理学院本科毕业设计开题报告402宝鸡文理学院本科毕业设计结题报告413宝鸡文理学院本科毕业设计答辩报告42学士学位论文1绪论上世纪八十年代初出现红外遥控技术,使用集成发射芯片来实现遥控码的发射,它的主要特点是遥控器内预置固定编码,一只遥控器只能控制单一型号的电器。随着对一些短距离智能技术的认识越来越深入,人们逐渐意识到智能化的传输真正主体是更好的快捷的智能化,更多地体现在自动化。所以20世纪90年代后期,一些企业开始引入国外的智能数据传输技术和产品在国内推广,还有一些大的集团公司也看好该领域,通过各种途径介入,促进整个行业迅速发展。红外线遥控是目前使用最广泛的一种通信和遥控手段。由于红外线遥控装置具有体积小、功耗低、功能强、成本低等特点,因而,继彩电、录像机之后,在录音机、音响设备、空凋机以及玩具等其它小型电器装置上也纷纷采用红外线遥控。工业设备中,在高压、辐射、有毒气体、粉尘等环境下,采用红外线遥控不仅完全可靠而且能有效地隔离电气干扰。随着电子技术的发展,家用电器越来越普遍,人们希望以一只遥控器遥控所有家用电器多用遥控器产生了。它的主要特点是遥控器内预置多套编码,可供用户如今,随着嵌入式的广泛应用,部分厂商推出了具备红外学习的遥控器,它的主要特点是遥控器内置一个动态编码库,具备红外学习功能,可由用户自主录入编码,通过对具备红外学习功能的遥控器进行市场调查,本文发现国内红外遥控编码学习技术虽比较成熟,但产品化程度较低,市场推广不够,主要原因在于设计者对用户需求的调查不够全面,以致产品不够实用,性价比较低。从用户操作方便实用的角度出发,本文自主设计具备红外学习、彩屏虚拟遥控界面的万能学习型红外遥控器,借此促进红外遥控学习技术在国内市场的产品化推广。本文设计的学习型红外遥控器要求在外观和功能上替代现有遥控器,涉及到红外编解码、红外发射接收、MCU控制、串口通信等技术,需要完成的研究内容主要包括1红外编码协议的学习,2单片机红外解码的软硬件实现,学士学位论文23电脑红外解码辅助分析。对照上述研究内容,本文的章节安排如下绪论简要介绍红外遥控器的发展,说明选题的目的和意义;通过产品介绍当前国内外关于红外学习技术的研究现状。第1章系统的硬件设计,介绍了系统设计需要完成的主要器件的选型,包括单片机的选择,红外技术的一些介绍,红外解码的学习、存储部分、按键控制电路及RS232外围电路的设计;其中红外遥控解码学习,简要介绍了红外接收和单片机中断控制的原理,设计了红外接收解码装置,完成了红外解码学习的功能。第2章整体系统的软件设计。第3章进行了系统总体调试。最后进行总结了本文的工作,指出了不足,及以后的展望。学士学位论文31系统的硬件设计电路的指导思想是利用PIC单片机来控制红外发光管发射红外线,红外接收管接收此红外线,并将其放大、整流形成高电平信号。当上电后有相应的LED灯亮指示,每当你按下相应的按键时候就会有相应的采集到的温度只发送到单片机并且在LED上显示出来,会实时的采集并显示。系统总体框图如图11图11系统总体框图整个系统主要由发射部分、接受部分、显示部分、按键部分和核心单片机组成。左边为发射部分,发射部分的核心控制器是PIC16F877单片机,单片机通过程序进行编码,从而保证系统设计的可靠性。经过软件编码的程序可以调制出一定得载波频率,载波频率的调制方式使得红外的接收更加稳定可靠。发射端同时配有显示电路,可以实时显示发射端的工作状态,另外配有相应的指示LED,方便用户对状态的了解。发射端配有按键电路,按键电路的设计使得学士学位论文4系统的功能得到扩展,通过不同的按键,系统可以控制不同的装置工作和非工作,从而完成红外遥控的功能。系统接收端的核心控制器是PIC16F877单片机,PIC单片机有抗干扰能力强,稳定性好,功耗低等特点。接收端的利用一体化红外接收头实时接收发射端发射的调制信号,接收端的红外一体化接收头接收到红外信号后,可以对信号进行滤波、放大等处理,然后将信号传送至单片机,单片机根据发送的编码规则,完成红外遥控的功能。接收端的接收状态可以通过LED模拟,从而保证发射端和接收端的状态同步。11单片机PIC16F877的选用及简介系统设计时,选用PIC单片机作为系统的核心控制器,相对而言PIC单片机具有抗干扰能力强,编程简单,功耗较低等特点。由于红外遥控系统要求稳定性极强,即抗干扰能力强,同时红外遥控系统要求功耗较低,因为通常情况下遥控器多采用电池供电,而PIC单片机具有稳定性好、功耗低等特点,同时PIC单片机的控制能力也很强,因此满足系统设计需要,故选用PIC单片机作为系统的核心控制器。目前PIC16F877使用比较广泛。此单片机在多个地方得到应用,由于使用数量上的提升使其售价和同类产品相比要低一些。和同类产品相比较,PIC16F877的出售价格已经低于此类芯片接口中的绝大部分;而PIC16F877的功能不但不比其他型号产品的差,甚至在好多方面要更加的实用。因此,如把PIC16F877作为接口芯片使用,在价格上、在性能方面都是非常合适的。在此系统当中,将PIC16F877设计为具有多种功能并且可以往里读入程序的接口,可以将程序固化在PIC16F877的FLASHROM中。PIC16F877的接口具有如下功能拥有专用的键盘和显示接口;拥有全双工异步串行接口;有2个16位定时和计数器。这样,1个PIC16F877芯片,拥有多个接口的功能;使其价格比其他产品更有优势,同时在软硬件上也有了很大的提升,在使用的时候更加的灵活方便。而且,PIC16F877单片机具有灵活的编程设计和丰富的IO端口,以其控制准确性,不但能实现基本的电子秤功能,还能添加遥控控制功能。学士学位论文5PIC16F877各引脚及管腿如图13所示RA0/N3142VEF6TCKI7S8BPGM9DOLXWU图13PIC16F877引脚图概述PIC16F877拥有40个管脚,使用的是工业化的C51内核,其芯片内部的功能及各个管腿的设计上与常用的8XC52类似,主要是在会聚调整时侯的控制。此控制主要有对IC内部寄存器、数据RAM及外部接口等功能部件进行初始化等。主要管脚功能为19脚和18脚作为振荡器的输出和输入端口。9脚为复位时的输入端口,外接复位电路。VCC(40脚)和VSS(20脚)为电源接口。1PIC16F877原理简介(1)PIC16F877特性PIC16F877具有存储程序的功能,可以重复往里烧录程序,适用于教学、研发等方面;而其ICD功能,可以让操作人员在单片机上进行如观察缓存器的内容等,让操作人员可以快捷的对程序进行研发及检测。PIC16F877的40根接脚,如图13所示,每根接脚都有其特定功能,例如PIN11与PIN32为正电源接脚,PIN12与PIN31为地线接脚;而有些接脚有学士学位论文6两种甚至三种以上功能,例如PIN2RA0/AN0代表PORTA的第一支接脚,在系统重置后,可自动成为模拟输入接脚,接收模拟信号,也可经由程序规划为数字输出输入接脚。PIC16F877可以重复烧录,其ROM的容量总共是8KWORDS,以2K为一个PAGE,区分为4个PAGES;内部RAM总共有512个字节00F1FFH,以128个字节为一个BANK,共区分为4个BANK,每个BANK的前半段都有其特殊用途,分别连接到其特殊功能模块,例如I/O、CCP、TIMER、USART、MSSP等。(2)特殊内嵌功能PIC16F877属于内嵌功能较多的单片机,除了CPU、POM、RAM、I/O等基本构造外,还包括以下各种功能,简介如下A/DCONVERTER模拟数字转换器,最多可以读取8组模拟输入讯号。TIMER,内部定时器,有TIMER0、TIMER1、TIMER2等。USART同步/异步串行传输,如RS232、RS485等。MSSP标准的同步串行传输协定,一般用于EEPROM内存资料的烧录与读取,或者是与其它集成电路沟通与联系。2PIC16F877基本电路(1)PIC振荡频率电路单片机振荡电路与整个系统工作速度有直接的关系,例如同步异步串行传输、定时器等,都与振荡频率有关,不同系列单片机有不同振荡频率;振荡电路接于PIN13与PIN14。(2)外加电源与重置电路PIC16F877的工作电压为5V,连接PIN11与PIN32,PIN12与PIN31为地线接脚;重置电路连接PIN1,按下RESET后,内部指令重头开始执行,系统重新运作。(3)输入输出接口PIC16F877除了上述电路所使用的7个管脚以外,剩余的33个管脚都可当成输入和输出管脚,输入输出端口是单片机基本界面,可以和周边的电路进行控制电路和除输出信号及检测信号。PIC是拥有8位的单片机,按照管脚的性质进行分组,每组当中尽可能的凑足八个管脚,并将I/O命名为学士学位论文7PORTARA0RA5、PORTBRB0RB7、PORTCRC0RC7、PORTDRD0RD7和PORTERE0RE2等,每个分组的特性均不相同,如下所示PORTA一共分为6个位RA0RA5,它的没个管脚都可以作为数据的输入和输出端,当系统重置以后,PORTA会自己触发为模拟的输出状态,此时可以读取模拟的输入信号。PORTB一共分为8个位RB0RB7,他可用来写入程序并设定输出和输入的方向及状态,进行烧录时侯,会使用到三个管脚,它们分别是PIN36、PIN39和PIN40。PORTC一共分为8个位RC0RC7,除了可以用来当数位I/O以外,还可以和某些周边电路共享管脚,如CCP、I2CPORTD一共分为8个位RD0RD7,一般可以作为普通的数字I/O,并且和PSP并列传输接口共享。PORTE一共分为3个位RE0RE2,PORTE的PIN8、9、10有三种功能,除了基本I/O功能,也有模拟输入功能,而上述PORTD的并列传输接口设定所需的控制接脚,如/RD、/WR、/CS等,也是属于PORTE接脚。(4)PIC16F877指令简介PIC16F877常用的语言主要是汇编语言与C语言,汇编语言是将每一个机器码使用一个文字代号代表,比较接近处理器真正动作模式;而C语言是比较符合人们的使用习惯,事先将汇编语言组合成C语言形式,使用较为方便,但是C语言所组译的机器码程序通常比较大,且组译软件通常需要额外购买。学士学位论文812红外遥控121红外技术概述本系统主要是由单片机、一体化的接收头、发射器、各种接口电路组成。遥控器是用来产生遥控编码脉冲,并且用来控制发射管输出遥控的信号,遥控接收头可以完成对信号的放大、检波、整形、解调。遥控编码脉冲是一组串行的二进制编码,当输出由遥控器来控制的时候,有以下几个问题需要解决1接收电路使用的是HS0038红外接头HS0038只有3个对外的引脚电源、接地线和输出的引脚OUT,外形引脚与单片机的接口很便捷。电源处经过电容后可对其进行滤波,这样可以防止电源带来的干扰OUT接口接CPU的中断输入管脚。使用这样的连接方式,软件解码不但可以在查询方式上工作,而且还可处于中断方式。2红外遥控编码规律本文就以TC9012组成的遥控器论述它的编码体制规律。当按键中的任何一个被触发的时候,TC9012即产生一串脉冲编码。TC9012形成的遥控编码脉冲对40KHZ载波进行脉冲幅度调制后便形成遥控信号,经驱动电路由红外发射二极管发射出去。一次按键动作的遥控编码信息包含一引导脉冲和32位串行二进制码。前16位码为用户码,不随按键的不同而变化。它是为了表示特定用户而设置的一个辨识标志,以区别不同机种和不同用户发射的遥控信号,用来防止误操作。后16位码随着按键的不同而改变,是按键的识别码。前8位为键码的正码,后8位为键码的反码。遥控信号不是用高电平或低电平来表示“1”或“0”的,而是通过脉宽来表示的,对于二进制信号“0”,一个脉冲占12MS;对于二进制信号“1”,一个脉冲占24MS,而每一脉冲内低电平均为06MS。3按键识别程序的设计要使用一个遥控器进行遥控系统的设计,必需先了解不同的按键编码脉冲是怎样和遥控器上不同的按键一一对应的。如果没有红外遥控信号到来,接收器的输出端口OUT保持高电平;当接收到红外遥控信号时,接收头将信号解调学士学位论文9下来并转换成脉冲序列加到CPU的中断输入引脚。用软件测试引脚的逻辑电平,同时启动计时器,测量该引脚分别为逻辑“0”和逻辑“1”情况下的时间值,存储起来,然后进行分析。其规律如下(1)引导脉冲是一个时间值为1137H1157H的低电平和时间值为084FH086FH的高电平(2)数据脉冲的低电平时间值约为0127H0177H(3)高电平时间值有2种情况00BBH00FFH(窄表示“0”)利0301H0333H(宽表示“1”)同时通过分析能从中了解各键的键码值,供编写应用程序时使用。122红外线遥控器解码原理红外线遥控在当今社会得到了非常广泛的应用。它的主要优势是体积比较小;耗电量也很低,一般一块电池可以用很长时间;在功能方面也非常的广泛,可以用来遥控绝大部分家用电器,在家居、商业、工业得到了认可;在成本上也很低。因此,红外遥控器在人们的生活当中无处不在,已成为不可或缺的一部分。在某些特殊环境下还可以代替人类从事作业。遥控框图如图14所示。传统上的红外遥控器主要有两大功能,即发射功能和接收功能。应用编/解码专用集成电路芯片来进行控制操作。发射部分包括键盘矩阵、编码调制、LED红外发送器;接收部分包括光、电转换放大器、解调、解码电路。当发射部分按键被触发以后,由于按键的不同,其所特有的遥控编码也不一样。红外遥控采用的是对脉宽进行调制的串行码,以间隔05MS、脉宽为05MS、周期为1MS的组合来表示“0”;以间隔15MS、脉宽为05MS、周期为2MS的组合来表示的“1”。其采用的编码为二进制编码。学士学位论文10键盘编码调制LED光/电放大解调解码遥控接收器遥控发射器图14遥控接收框图由0、1组成的32位的二进制码在经过特定的恒定载频再一次进行调试,用来提高它的发射效率,以减小对能源的浪费。经此过程以后才会用发射管对外发射信号。遥控编码是由连续的32个二进制数字组成,前16个二进制数字作为识别码,用来区分不同的遥控对象,以避免不同遥控器所发出的命令互相干扰。后面的16个二进制数字为操作码和反码。因此它可以拥有128个不一样的编码组合,完全能满足普通用户的需求。遥控器的按键被触发以后,会不间断的发出同一种32位二进制码,而且是周期性的发送,其发送周期约为100MS。一组码的具体发送时间会根据0和1的个数不同而有所不同,大体所需要的时间在40MS到65MS之间。假设一个按键被触发的时间超过36MS时,振荡器会将芯片激活,此时会发射一组时间为108MS的编码脉冲,此发射代码由起始码、结果码、8位数据码和这8位数据的反码、高8位地址码、低8位地址码组成。当按键出发时间超过108MS的时候,在接下来所发射的代码会有所改变,它会只由起始码和结束码两种编码组成。0和1的识别才是解码的关键所在。在上述定义上可以发现0和1均可以由一样的低电平开始,但0和1还是有区别的,他们的代码宽度会有所不同,1的代码宽度几乎是0的三倍。因此在区别0和1上是不能从电平高低来区分的,他只能用代码宽度来区分0和1。开始的时候会有05MS以上的延时时间,延时过后如果读到的电平为低电平,那么说明此时编码信号为0,否则为1(高电平信号)。但是为了保险起见掩饰的时间必须要大于编码0的所需时间但又不能大于编码1所需要的时间,不然的话此电位是0的话会被误读成1。综上学士学位论文11考虑取0和1的中间值最为合适。根据码的格式,在等候起始码和结果码都完成以后后才能进行0读码。接收器和解码过程红外线接收器是一种将接收器和放大器整合在一起的接收器,在不添加其它器件的情况下,就可以独立完成从接收到输出的所有内容,而它的体积相对来说比较小,和普通的三极管相差不大,适合作用在红外遥控及接收上,性能非常的稳定,价格适中。红外遥控器软件解码原理及程序红外一开始发送一段13MS的引导码,引导码由9MS的高电平及45MS的低电平组成,跟着引导码是系统码,系统反码,按键码,按键反码,如果按着键不放,则遥控器则发送一段重复码,重复码由9MS的高电平,225MS的低电平,跟着是一个短脉冲。13红外解码原理信号的传输就必须有载体,正如红外通信他的传输载体就是红外线,当红外线在空气中传播的时候,就会承载着有效信息进行传播,整个过程除了载体、介质意外还需要红外发射器和接收器,这是这个信号传送的核心所在。作为发射端,数字信号作为有效信息,经过有效的处理以后于红外信号整合在一起,有发射器发射到介质当中;作为接收端,接收器会把感应到的红外信号进行处理,转换成原始数字信号。本文论述了一种基于单片机PIC16F877红外通信设备,它不仅成本较低,在性能方面也非常的稳定。以下分别对红外发射、接受和其中的一些重要的协议进行了简单的论述。红外发射端发送数据时,是将待发送的二进制数据调制成一系列的脉冲串信号后发射出去。红外载波为频率38KHZ的方波,采用脉宽调制PWM方式发送,通过待发送二进制数据的“0”或“1”控制两个脉冲串之间的时间间隔,即PWM的占空比。红外载波可以使用单片机内部的定时器的PWM功能实现,也可以通过外围硬件电路实现。利用单片机内部定时器的PWM功能产生红外载波利用单片机内部定时器的PWM功能产生红外载波信号。红外发射红外发送端是由PIC16F877的两I/O脚控制。I/O接口处会自动产生一定宽度的方波脉冲信号,以此来分别代表0和1。当输出端口处于低电平触发时,或门电路会允许载波信号的通过,载波信号为38KHZ的固定频段的信号,不然的话或门电路是不允许载波信号通过的。经此过程,输出端会产学士学位论文12生间断的载波信号。这个信号由放大电路放大后再由电阻限流后传送到发送端口,有发射器发出红外信号。红外二极管作为红外发送设备,将完成光电信号的转换。这是一种间断式的红外信号。因为脉冲的宽度是不会改变的所以可以通过红外脉冲信号之间的间距大小来判断传送的信号是0还是1。红外接收红外接收采用HS0038B红外接收器。红外接收电路的原理是当接收到载波信号,接收器端口处会相应的输出低电平信号,不然的话会输出高电平信号。进而才能将间断的红外信号进行解调,转换成为连续的方波信号,在经过PIC单片机的内部处理以后,才恢复原原有的数字信号。HS0038B是一种比较小的接收型器件,能够独立完成红外信号的接收,因此不需要再加电阻或其他部件来进行转换。和其他类似产品比较,HS0038B的优点是在一般的环境下它的输出非常稳定,当外界干扰很大时,它依然能够保持稳定的输出。总体来说,它的价位在接受范围内,有很强的抗干扰能力。红外通讯的关键在于红外数据的同步,能够正确识别接收到的红外信息代表何意义。红外通讯系统可以采用同步帧协议,也可以采用类串行通信协议。采用前者时,二次系统的关键是在于它的数据同步传输,本系统可以识别出来接收到的红外信号所包含的有效内容。红外通信系统可以采用以上两种通信协议中的任何一种。红外通讯中的差错控制方式采用自动来请求重发的方式。在接收过程中数据包中所包含的地址码由接收端接受并与其匹配。假如地址码与其不匹配的话,数据包将会被丢弃掉,然后申请重新发送数据包;如果其地址码与其相匹配,然后检查其校验码,只有校验码无误的情况下,数据包中的数据才会被其识别,此后向发送端反馈确认收到有效信号的信息,假如校验码与其不相匹配的话,则会向发送端申请重新发送数据包。即在未完全接收到数据包时,只要出现错误均会反馈重新发送数据包的申请。采用第二种通信协议的时候,传送的数据格式与NRZ格式差不多,每一个数据帧是由一个起始位0、2个停止位0和8个数据位组成。在没有接收到发送端传来的信号时,此时的定时器不在工作状态。当开始接收信号时,接收器在接收到数据的起始位为0时,此时输出的信号为低电平信号,触发将被终止,然后启动定时器。定时器将两次终端间隔记录下来,这学士学位论文13样就可以判断出该信号的起始位置是不是为0假如不是,复位定时器将会重新去检测其起始位电平信号。假如是,数据将被接收,由定时器的计数判断是0还是1,在数据位接收完毕后再去接收停止位信息。第二个停止位是用来检查前面的一个方波是否和第一个停止位相对应。假如是的话,并且已经正确的接收到了起始位、数据位、停止位,则被判断为数据帧的接收无误,然后去接受下一个,否则的话接收信息被判断接受错误,此时的复位定时器将会重新去检测起始位。1系统方案论证和选择红外遥控设备可以在很多场合使用,尤其是哪些信号不好或干扰较强的环境中。以下是本文论述的两种可行方案,分别论述了其实现方法和它的优缺点,经过对比对方案进行选择。方案一此方案中,采用遥控器来作为控制信号的发出设备,在遥控器的设置键被触发后,接收器将会接收到遥控器的信号,此信号在被解码后送到单片机中,这样可以让单片机去判断这个信号是不是所需要的设置信号。如果是的话,开启程序,此后接收到的信号就是要设置的红外信号,接收器在接收到信号后经放大、解码传送到单片机中,然后其对此信号进行确定再进行设置,接着触发按键表示确认,接收器接收到此信号经放大解码再送到单片机中,经过单片机查表后,判定此信号未确认信号后令设置生效,达到控制电源通断的目的。图15HS0038实物引脚图学士学位论文14方案二此方案中,控制信号的发送的设备是家用电器的遥控器,当遥控器的设置键被触发,接收器接收到此控制信号,然后完成光电转换过程,最终传送到单片机中,在解码完成后单片机将查询表单确认此信号是否为设置信号,如果是,设置程序将被开启,因此后面接收到的信号就是设置的时间信号了,解码后查表来判断数值是多少,然后对其进行设置,完成此过程后要进行确认,在遥控器发送出确认信号之后,单片机接收此信号后查表判定这是确认信号后,然后执行确认指令设置生效,从而达到控制电源通断的目的。方案一为硬件解码方案,此方案需要使用与遥控器相配套的专业的解码器芯片,但是此芯片并非流通芯片,价格也较贵,也可以自己去研发解码电路,但是此电路很复杂,将耗费大量的精力。此方案在使用方面并不便利,可靠性上也不是很高,所以排除方案一。方案二为软件解码方案,此方案不用去看遥控器芯片的型号,只需要去检测其发射编码,然后用软件对它进行处理,得到所要的信息。软件解码的优点很多,比如使用灵活、硬件需求较少、可靠性高,成本低等特点。经以上的论证,选择采用软件解码方案,费用低,不需要耗费大量精力即可完成,可靠性较高。图16HS0038内部结构图2硬件组成(1)正5V恒压电源;(2)微控制器PIC16F877系统;学士学位论文15(3)红外遥控接收电路;(4)保护电路和存储电路;(5)执行电路。红外接收电路一体化的红外接收装置将遥控信号的接收、放大、检波、整形集于一身,并且输出可以让单片机识别的TTL信号,这样大大简化了接收电路的复杂程度和电路的设计工作。在本系统中采用红外一体化接收头HS0038。HS0038抗干扰能力强、灵敏度高、功耗低,有效接收距离可以达到30M。14键盘控制按键电路如下图18。键盘采用行列式和外部中断相结合的方法,为了节省单片机的IO口资源,系统设计时,采用矩阵键盘的形式作为系统设计的键盘输入电路。矩阵按键又叫做行列扫描式按键,是用单片机的两条I/O口连接到按键两端构成的,在交点处为两个I/O口的交点,将它们分为行I/O口与列I/O口,行I/O口为PA31PA33,列I/O口为PA34与PA37,每一条列线和行线都有一个唯一的交汇点,则组成的按键个数为12个,当需要判断是哪个按键被按下时,首先判断哪个列按下,将行全部清0,则有按键动作的那个行与列的交点处就会将行列端接,那么就会有两个I/O口同时为0,将这时为0的I/O口找出,然后再同样将列置0,判断行值,找出行值为0的点,然后将行列组合后就能判断出来哪个按键被按下。系统设计时,采用矩阵键盘的优势是,可以节省单片机IO口资源,从而保证单片机可以有足够的资源控制其他外围设备的工作。S1WPB26789HANGLIE图18键盘接口电路学士学位论文1615LCD显示电路在单片机的设计当中最常使用到的显示器件主要以字符型LCD为主。1602型液晶显示模块具有诸多优点如灵巧方便、能耗较小、分辨率较高。此型号的LCD显示模块拥有两行显示部分一共16个字符,正常的工作电压为5V,同时还具有背光功能,还可以对字符的对比度进行调节。1基本操作程序读状态输入RSL,RWH,EH输出D0D7状态字读数据输入RSH,RWH,EH输出无写指令输入RSL,RWL,D0D7指令码,E高脉冲输出D0D7数据写数据输入RSH,RWL,D0D7数据,E高脉冲输出无2系统中应用晶液显示器优点发光恒定,色彩和亮度变化不大LCD画质比较高,还不会出现显示页面抖动的现象。数字化接口由于其接口为数字化的,因此与PIC16F877连接的时候更加简洁,操做更加简单。LCD显示模块不仅体积比较小而且重量很轻。液晶显示器是通过显示屏上的电极改变来控制内部的液晶分子处于不同的状态来达到显示的目的,他比传统显示器跟轻巧、功能更完善。在功耗上,相对传统显示器而言,LCD的功耗大部分是在内部的电极及其驱动IC上,因而耗电量比其它显示器要少得多。因此它比传统意义上的显示器更具有实用性。3液晶显示原理在通电的时候导通,内部分子的排列将会变得很有秩序,此时光线会容易通过;在不通电的时候,内部分子排列比较混乱,此时光线难以通过,显示为黑色。液晶面板是由两片精致的玻璃素材组成,中间夹着一层液晶。液晶分子平时排列是杂乱分布的,光线是很难通过的,但是在通电的情况下,液晶分子会出现同向反映,排列整齐,透光性能良好。4液晶显示器的分类液晶显示有很多种分类方法,一般是按照它的显示方法来进行分类的。主要分为段式、点阵式、字符式等。一般简单的LCD是黑白显示,有些液晶显示学士学位论文17器会呈现不动的色彩。根据内部分子不同可分为三类粘土状液晶、棉花棒液晶和胆固醇状液晶,一般以第二种为主。51602LCD引脚1602LCD采用标准的14脚(无背光)或16脚(带背光)接口,各引脚接口说明如表12所示表12引脚概述编号符号引脚说明编号符号引脚说明1VSS电源地9D2数据2VDD电源正极10D3数据3VL液晶显示偏压11D4数据4RS数据/命令选择12D5数据5R/W读/写选择13D6数据6E使能信号14D7数据7D0数据15BLA背光源正极8D1数据16BLK背光源负极第6脚为使能端,电平由高电平跳变成低电平的时候,液晶模块执行命令。第714脚D0D7为8位双向数据线。第15脚背光源正极。第16脚背光源负极。1602型LCD的接口信号说明,如表22所示1602LCD主要技术参数1显示容量162个字符2芯片工作电压4555V3工作电流20MA50V4模块最佳工作电压50V5字符尺寸295435WHMM引脚功能说明第1脚VSS为地电源。学士学位论文18第2脚VDD接5V正电源。第3脚VL是LCD调整对比度的端口,对比度由电压大小控制,在接正电源时,电压最高此时对比度最弱当接地时,此时电压最低,对比度最强。在使用的时候,不适将对比度调的太高,因为过高会产生鬼影现象,使其无法正常工作。所以在使用之前,可以使用一个电位器来调节液晶显示器的对比度。第4脚RS是寄存器的选择,当RS处于高电平的时候,此时选择的寄存器是数据寄存器;当RS处于低电平的时候,此时寄存器选择的是指令寄存器。第5脚R/W是数据线的读取,电平处于高电平触发状态时候,进行读出操作;相反低电平触发的时侯会进行写入操作。假如R/W和RS同时处于低电平出发状态时,此时可以写入其指令或显示其地址。假如R/W为高电平RS为低电平的时侯可以进行读忙信号;当R/W为低电平,RS为高电平时可以进行写入数据。接口如图19其中GND是系统的地信号,VCC是系统的电源信号,1602液晶显示系统中,RS、RW、E是单片机和液晶的控制端,单片机通过控制液晶的控制引脚,可以对液晶进行读写操作,从而保证液晶的正常工作。图中的10K电位器是调节液晶背光亮度的,通过调节电位器的值,将不断的改变液晶的亮度,从而保证用户选择合理的液晶亮度。其他几个引脚是液晶的数据总线,可以保证单片机和液晶的数据交换,从而完成正常的显示作用。RA0/N1VF6TCKI7S8BPGM9DOLXWU晶HZYHANGLIE图19液晶显示接口学士学位论文1916存储部分主程序主要将各子模块组织起来成为一个有机的整体,主程序流程图如图110所示。作为存储部分,选择用CAT24WC系列产品,在价格、性能上均合适。此系列产品分为CAT24WC01/02/04/08/16是一个1K/2K/4K/8K/16K位串行CMOSE2PROM。其内部有128/256/512/1024/2048个8位字节。所以在综合考虑上,选择用08型号的。CAT24WC08的简介存储部分采用的是CAT24WC08存储,CAT24WC08的接线如图251所示图110CAT24WC08管腿接线此存储器是与400KHZ12C总线兼容的;其工作电压范围比较大,在18V到60V均可正常工作;具有写保护功能,当WP为高点平时进入写保护状态;在正常环境下,数据存储时间非常长;可使用的温度范围完全达到了工业级水准。CAT24WC08支持I2C总线数据上的传送协议,只要是能够将数据传到总线上的部件都将其视为发送器。相反,接受总线上的数据的部件视为接收器。数据的传送是由所有起始停止信号和产生串行时钟的主器件控制的。A0A1A2是器件的地址输入端;WP是写保护的,此管脚如果接到VCC上,所有内部数据会被保护进入只读状态,如果悬空或接到VSS上才能正常的读/写;SCL为串行时钟,为输入管腿,用于产生器件所有数据发送或接收的时钟;SDL为串行数据地址,用于器件所有数据的发送或接收,是一个输出管脚;VCC和VSS为电源接口。关于I2C总线协议,只要总线处于空闲状态才会被允许启动数据传送。在数据传送的过程中,时钟线处于高电平时数据线保持稳定传输状态,不能出现跳变;始终处于高电平时,数据线电平会从高到底跳变,如此作为I2C总线的起始信号。学士学位论文202系统的软件设计在硬件电路设计完成的基础上,进行软件系统的设计。首先应该去分析系统对软件方面的需求,然后才能进行软件方面的总体设计,先对整个系统进行总体上的规划,然后再分成几个小部分进行细节上的处理。在功能上可以将整个系统分成多个子系统,对子系统进行单独的设计,调试成功后,将各个子系统组装在一起,这样就可以组成完整的软件。伴随着单片机研发水平的逐步提高,C51语言已经被视为单片机必备软件,已经得到了广泛的应用。C51语言是一种记叙性程序语言,对硬件系统具有较强的依赖性,和汇编语言非常类似。既可以直接访问硬件系统,了解系统的功能;而且便于记忆、可阅读行、写入性等等优点。用C51语言程序来研发的时候,具有很强的模块化特点,支持系统软件更好的模块化,是编写程序变得简单化、模块化。21主程序上电复位后,单片机首先要进行系统的初始化,然后软件查询按键状态并执行相应的程序。主程序主要将各子模块组织起来成为一个有机的整体,主程序流程图如图21所示。系统上电后,首先进入初始化程序,初始化程序的主要作用是对系统内部的寄存器进行初始化。初始化结束后,软件将实时判断,外部是否有按键按下,如果外部没有按键按键,软件程序将继续对按键进行扫描。如果外部有按键按下,软件将通过定时器,实时发射红外线,从而保证数据传输的可靠性。数据发射后,再对按键进行检测,没有的话将继续检测,如有按键按下,连接显示器将其显示出来,此次操作过程结束。学士学位论文21图21主程序流程图22红外接收程序红外接收流程如图22所示,一体化红外接头HS0038A2为输入接口作用在单片机PIC16F877接口RAD/ANO上,在接收过程中,红外接头会反相作用,在没有红外信号的时候为高电平,当检测到红外信号的时候,其实输入就会变成低电平。当系统进入学习状态时,开启TO,用它来检测接口处的电平变化,记录下每一个电平的脉冲宽度(高电平和低电平)当脉冲超过红外信号的电平宽度时,确认红外信号接收完毕,此时TO会自动溢出并产生中断信号,终端程序会自动把RAM的数据保存下来。经过这个过程,红外信号的脉冲就会被保存下来,即完成了系统设定的存储过程。如果不小心摁错键,导致系统自动进入学士学位论文22学习状态,此时可以按下复位键,系统就会自动退出学习状态,这是单片机会重新去扫面按键。图22红外接收程序流程图23红外发射程序如图23所示单片机开启工作后会不断的对键盘进行扫描,如果有按键按下,就会在EEPROM中提取与其相对应的存储数据(此数据是已经存储完毕的录入数据)。取反后将其作为TO的初始值,然后自动开启T0和T1,T1会自动产学士学位论文23生固定频率的载波信号。高电平是T0不会溢出输出接口传送载波信号,当T0溢出时自动关闭T0、T1。然后重启T0,此时EEPROM中的下一个地址的数据自动取反作为T0的初始值,T1在这个时候是不会开启的,系统会强行将其关闭。如此循环,输出接口所输出的就是以调制到固定载波上的红外脉冲信号,经放大电路放大后作用在红外发射管输出红外遥控信号。图23红外发射程序流程图学士学位论文243系统总体调试31软件调试方法软件上的调试方法主要是根据所选用的软件而进行的。因为在程序的整体设计的时候采用的是模块化,这样可以分步将每个模块分布来检测。由于这样的设计方法会有几个甚至更多的子程序,所以可以把每个子程序一一的去调试,在每个子程序都调试成功后再进行主程序的调试。调试过程中,要检测每个子程序所对应的芯片、连线等是否处于正常工作状态。检测每一个子程序是否符合整体要求,有没有概念上的错误如循环结构上的错误、地址转移上的错误等等。整个过程必须要精细化,程序的每个算法都要确保无误才能实现其功能。在检测完每一个子程序并确保其能正常运行的情况下,将各个模块化的子程序连接到一起进行主程序的检测。假如此时无法正常运行,可以排除字程序本身的错误,可以去检查一下缓冲单元和工作寄存器是否发生了冲突,堆栈区是否有溢出,输入输出单元是否正常运行等等。再进行单步和断点调试以后,还应再去进行连续性调试,用以确宝定时器的精度、单片机的响应度等问题。当全部程序的调试及修改都完成以后,将整个程序都固化到C51语言之中,插入整个硬件设计后,观察测试能否正常工作。到此,整个系统的软件方面的调试已经基本完成,下一步可以进行硬件上的调试。学士学位论文2532硬件调试方法1脱机调试所谓的脱机调试是在没有加外接电源的时候进行调试。主要是为了防止出现短路现象,避免器件因短路带来的损坏。整个过程可以先用肉眼观察每一个焊点是否出现漏焊、多焊等因为焊接而导致的问题;也可以通过与电路图对比来观察元器件的连接是否正确。然后可以用万用表来检测关键点之间是否出现短路及断路现象。2联机调试联机前先不要接通电源,把仿真插头插到样机的单片机插座上,这时候检查一下电源处是否接好,接地方面有没有问题。在确保没有问题的情况下才可以接通电源进行调试。通电以后就可以去执行此系统的读/写指令,对系统的存储器I/O接口进行读/写操作,进行逻辑性检测。假如出现故障无法正常工作,可以通过使用示波器来检测每一个关键点的波形,寻找和分析故障原因,然后去逐一排除故障所在,主机部分调试好后,便可按入用者系统的其它外围部件,如键盘、LED显示器等,再进一步进行调试。3液晶显示器的调试液晶显示器的焊接过程中,首先在电路板上焊有16脚的底座,从而方便液晶的拔插,另外方便系统的调试,因为如果将液晶显示器固定在电路板上,则不方便系统对液晶显示器的拔插,另外如果想要更换液晶显示器,也要重新焊接和取下,给用户造成不便。在调试液晶显示器的时候,首先测试液晶显示器的电源端和地端是否正确和板子的电源和地相连,确保液晶显示器工作的稳定性。电源和地连接正确后,将液晶显示器的控制端与单片机的通用IO口相连,从而方便单片机与液晶显示器的数据交换,使得液晶显示器能够正常工作。用万用表测试液晶显示器的控制引脚和单片机的通用IO口是否正确连接,如果正确连接,将液晶显示器8位数据端口与单片机的一组IO口相连,从而保证单片机和液晶传输数据的灵活性。用万用表测试液晶显示器的数据端和单片机的通用IO口是否正确连接,如果正确连接,说明液晶显示器的硬件调试成功,单片机可以与显示器进行正常的数据交换,单片机也可以实时控制液晶显示器显示系统的参数和实时的结果,方便用户操作。学士学位论文2633常见的硬件故障真个开发系统的软件调试及硬件调试是不可或缺的。有些硬件上的故障是很难被发现的,有时应该将两种调试方法联系到一起进行调试,才能发现故障所在。一般硬件上的故障是可以独自排出的,应先把简单的硬件故障解决后在进行软硬件互检式排除故障。常出现的硬件故障有以下几个1逻辑错误这种错误可能是在设计的时候导致的,也可能是在焊接过程中不小心将焊点焊错位置导致,一般最为常见的是短路和断路现象。2元器件错误有时候可能是因为元器件本身的破损导致系统无法工作,也可能是元器件本身的型号不对导致工作不正常即结果与设计偏离过大。3可靠性差可靠性上可能是元器件的老化导致的,更多的是排线不好,金属表面氧化导致导电性不良。还有可能是外部干扰太大,所以在测试系统性能的时候尽可能的避免外界带来的干扰。也有可能是某些器件的负载过大,这是设计本身的错误。4电源故障电源故障包括电压值不符合设计要求、电源功率不足、负载能力差、纹波太重等。学士学位论文27结论系统的发射部分的核心控制器是PIC16F877单片机,单片机通过程序进行编码,从而保证系统设计的可靠性。经过软件编码的程序可以调制出一定得载波频率,载波频率的调制方式使得红外的接收更加稳定可靠。发射端同时配有显示电路,可以实时显示发射端的工作状态,另外配有相应的指示LED,方便用户对状态的了解。发射端配有按键电路,按键电路的设计使得系统的功能得到扩展,通过不同的按键,系统可以控制不同的装置工作和非工作,从而完成红外遥控的功能。系统接收端的核心控制器是PIC16F877单片机,PIC单片机有抗干扰能力强,稳定性好,功耗低等特点。接收端的利用一体化红外接收头实时接收发射端发射的调制信号,接

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论