




已阅读5页,还剩37页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
毕业设计说明书基于单片机的红外遥控电子密码锁设计专业电气工程及其自动化学生姓名班级学号指导教师完成日期基于单片机的红外遥控电子密码锁设计摘要目前大部分的锁都是机械式的,其最大的缺点是利用简单工具就能很容易地把锁打开,不安全。针对这种情况,设计了基于单片机AT89C52和红外线接收管的红外遥控密码锁,设计包含红外发射模块、红外接收模块和单片机处理模块。与一般的采用专用遥控编码和解码集成电路的设备不同,它具有安全可靠、成本低廉、连接方便,简单易用,应用范围广等特点,而且特别适合家庭,宾馆,仓库,私家车库等场所。红外遥控电子密码锁,主要分为遥控部分和主机部分。当从遥控器输入密码时,键盘向单片机发送外部中断,单片机识别按键号码并且将其编码后通过红外发光二极管发送到主机接收部分。主机接收部分的红外接收器接收到红外信号,将其整理放大之后通过串行口向单片机发送串行口中断,单片机得到串行中断信号将其解码还原成发射前的信号,之后验证密码,判断开锁还是报警。主机接收部分通过键盘的外部中断得到密码信号,无需红外遥控发射,可直接验证密码。同时主机部分还有修改密码的功能,倘若密码泄露可以及时更改密码。红外遥控电子密码锁其稳定的特点,安全的性能,便捷的操作方式和广泛的应用范围等使其具有良好的市场前景和发展空间。关键词单片机;红外发射;红外接收;串行中断信号;密码修改DESIGNOFTHEINFRAREDREMOTECONTROLELECTRONICLOCKSBASEDONMCUABSTRACTATPRESENT,MOSTOFTHELOCKSAREMECHANICALLY,ITSBIGGESTDRAWBACKISTHEUSEOFSIMPLETOOLSCANEASILYOPENTHELOCK,NOTVERYSAFEINVIEWOFTHISSITUATION,IDESIGNEDTHEINFRAREDREMOTECONTROLLOCKSBASEDONMICROCONTROLLERAT89C52ANDTHEINFRAREDRECEIVERTUBETHEDESIGNINCLUDESANINFRAREDTRANSMITTERMODULE,INFRAREDRECEIVERMODULEANDMICROCONTROLLERPROCESSINGMODULEDIFFERENTWITHTHEDEDICATEDREMOTEENCODINGANDDECODINGINTEGRATEDCIRCUITDEVICE,ITHASASAFE,RELIABLE,LOWCOST,EASYTOCONNECT,EASYTOUSE,ANDAWIDERANGEOFAPPLICATIONS,ANDISPARTICULARLYSUITABLEFORFAMILIES,HOTELS,WAREHOUSES,PRIVATEGARAGESANDOTHERPLACESTHEINFRAREDREMOTECONTROLELECTRONICLOCKS,ISDIVIDEDINTOAREMOTEPARTANDAHOSTPARTWHENYOUENTERTHEPASSWORDFROMTHEREMOTECONTROL,THEKEYBOARDISSENTEXTERNALINTERRUPTTOTHEMCU,MICROCONTROLLERIDENTIFICATIONKEYNUMBERANDENCODEDBYTHEINFRAREDLIGHTEMITTINGDIODESSENTTOTHEHOSTRECEIVINGPARTTHEINFRAREDRECEIVERINTHEHOSTRECEIVESRECEIVETHEINFRAREDSIGNAL,FINISHINGZOOMSENTSERIALPORTINTERRUPTTOTHEMICROCONTROLLERTHROUGHTHESERIALPORT,THEMICROCONTROLLERSERIALINTERRUPTSIGNALTODECODETHESIGNALINTOPRELAUNCH,AFTERVERIFICATIONPASSWORD,JUDGMENTUNLOCKORALARMTHEHOSTRECEIVINGPARTRECEIVESENCRYPTEDSIGNALSTHROUGHEXTERNALKEYBOARDINTERRUPTWITHOUTTHEINFRAREDREMOTECONTROLTRANSMITTERCANBEDIRECTLYAUTHENTICATIONPASSWORDHOSTPARTALSOCANCHANGETHEPASSWORD,IFTHEPASSWORDISLEAKEDATTHESAMETIME,WECANCHANGETHEPASSWORDSTABLECHARACTERISTICS,SAFEPERFORMANCE,CONVENIENTOPERATIONANDEXTENSIVERANGEOFAPPLICATIONSOFTHEINFRAREDREMOTECONTROLELECTRONICLOCKSHASAGOODMARKETPROSPECTSANDDEVELOPMENTSPACEKEYWORDSMICROCONTROLLERINFRAREDEMISSIONINFRAREDRECEIVERSERIALINTERRUPTSIGNALCHANGETHEPASSWORD目录1、绪论211设计的背景和意义212设计的任务和要求213设计理论214待解决的问题22、总体设计方案221设计思路222红外通信部分设计223单片机串口通信部分设计23、硬件电路设计231控制芯片单片机与系统框图232单片机最小系统233红外遥控发射部分设计234红外遥控接收部分设计235显示部分设计236报警部分设计24、软件电路设计25、设计效果251主要注意事项252实物效果2结语2参考文献2致谢2附录21、绪论11设计的背景和意义红外遥控密码锁总的来说就是一种锁具,然而锁具的发展历史是很长很复杂的,从最初的简单锁具到现代锁具和智能锁具经历了不断地改进和变化。然而,当今社会盗窃事件仍频频发生,主要因为传统的机械锁具结构简单、制作工艺落后,无法阻止技术手段的破坏。虽然经典的锁具仍是不可替代的,但为了用于更多的地方,满足更多更复杂的需求,锁的改革势不可挡。随着微电子技术的应用,出现了声控锁、红外线锁等智能锁,这些锁有着机械锁无法比拟的高保密性能,代表着锁的最新发展趋势,顾名思义,这种锁具比传统锁具更智能,更体现人性化和实用性,因而有着更广泛的应用。智能锁在识别用户、安全性、管理性方面更加智能化,是门禁系统中锁门的执行部件。智能锁区别于传统机械锁,具有安全性和便利性,在安全技术防范领域,具有防盗报警功能的电子密码锁代替传统的机械式密码锁,使锁的发展更进一步。随着单片机的问世,出现了带微处理器的智能密码锁,它除了具有电子密码锁的功能外,还引入了智能化管理、专家分析系统等功能,从而使密码锁具有很高的安全性、可靠性,应用越来越广泛,本设计就是基于单片机的智能密码锁。在电子科技飞速发展的今天,智能密码锁系统已经逐渐发展成为一套完整的出入管理系统,在生活中发挥着巨大的作用。其中,红外遥控密码锁是新型现代化安全管理系统,它的遥控电路通常由遥控发射、遥控接收、微处理器等几块集成电路及其外围元件组成。红外遥控密码锁集微机自动识别技术和现代安全管理措施为一体,是实现安全防范管理的有效措施,适用于各种场合,例如银行、宾馆的自动门,机房、军械库、机要室之类机要地方的门禁、某些智能办公室、小区的楼道门、工厂的仓库门、甚至在某些家庭中用于防盗等等,这些例子足可说明红外遥控密码锁应用之广泛,功能之强大。同时,红外遥控密码锁是在传统的门锁的基础上发展而来的。在此之前出现了电子磁卡锁、电子密码锁两种智能锁具来代替传统锁具,这两种锁的出现提高了锁的安全性,因而有着较为广泛的应用。但是随着这两种电子锁的不断应用,我们也慢慢发现了它们本身的缺点,例如磁卡锁,它的信息容易复制,卡片与读卡机之间有磨损容易损坏,不安全;而密码锁的问题是锁的密码容易泄露,并且一旦泄露很难去查清,同样安全系数很低。同时这两种锁也易被人在室外打开。所以总的来说,这两种密码锁仍然存在着这样那样的缺点需要改进。而红外线遥控智能密码锁的出现克服了这几个缺点,它可靠性高,抗干扰性强,因而得到了更加广泛的应用。本课题就设计了基于单片机的一种红外遥控电子密码锁,它具有使用方便、安全可靠、操作简单、价格低廉等特点,既有可行性,又有实用性。12设计的任务和要求设计一个基于单片机的采用红外遥控的5位电子密码锁软硬件。具体功能如下A)能实现本机键盘开锁;B)能实现遥控开锁;C)若密码意外泄漏,可及时修改密码;D)密码输入错误能立即报警当密码输入错误时,系统就会报警,由扬声器发出5秒报警声,当连续三次出现密码错误时,由扬声器发出1分钟报警声,此时必须按复位方可停止,且禁止密码输入1小时;设计方案中包括硬件设计、软件设计和实物制作。13设计理论本设计的红外遥控密码锁是以AT89C52单片机作为密码锁监控装置的检测和控制核心,分为主机和从机。实现钥匙信息在主机上的初步认证注册,并且根据51单片机之间的串行通信原理,利用红外线来传输,通过红外遥控和单片机间的串行通信实现近距离遥控开锁。红外遥控密码锁是利用红外传输为途径,实现近距离开锁。数据的接收、发射等部分是利用串行通信方式实现的。以红外为载波,将数码指令信号调制到载波上,通过红外发射二极管发射出去,实现密码信息传送的效果。14待解决的问题此题目的重点、难点是如何实现红外信号的接收、密码的储存和如何正确识别按键信息并显示操作结果。鉴于这些,我们分析如下首先,由于红外线是不可见光,与一般的可见光不同,它不受周边环境的影响、不会干扰其它电器设备,也不会被其它电器干扰,并且由于它无法穿透墙壁,所以,它有强大的抗干扰性和接收方便的性能,典型的应用就是遥控器,在不同房间的空调、电视机等可使用通用的遥控器而不会相互干扰,;其次,红外遥控电路调试起来比较简单,一般只要电路连接没有错误即可投入使用,所以在调试方面也不必过于担心;最后,它的编程解码容易,可进行多路遥控,更体现了其功能的强大性。综上,又由于红外电子密码锁体积较小、操作方便,它实现起来较为简便,具有很好的市场前景。2、总体设计方案21设计思路红外遥控电子密码锁由红外遥控发射部分、红外接收部分、带控制的电子锁构成。当红外接收端收到遥控板送来的开锁密码信号,并与保存在终端中的密码对比,当对比成功后终端向电子锁发出开锁命令,从而完成开锁功能;反之则实现报警功能。设计包括两部分,硬件部分设计和软件部分设计A、硬件部分本系统主要由六大部分组成A单片机最小系统模块(核心);BLCD显示电路模块(LED数字显示);C阵列键盘模块(密码输入);D红外接收模块(密码接收);E存储模块(原始密码存储);F蜂鸣器模块(报警提示)。B、软件部分本设计是以单片机AT89C52为核心控制器件,通过单片机与存储模块的信息交换后,利用串行通信接收到用户端输入的密码,与之进行对比,用LED显示器显示结果,相符则打开,不符则蜂鸣器报警,从而实现红外遥控电子密码锁的设计,编程语言选择C语言。22红外通信部分设计A、设计理念红外通信,就是通过红外线传输数据,是利用红外技术实现两点间的近距离保密通信和信息转发。它是从线缆传输技术渐渐转换过来的。红外通信一般由红外发射系统和接收系统两部分组成。这也是本设计中的一个主要理念。红外线是波长在760纳米至1毫米之间的非可见光,它能覆盖室温下物体所发出的热辐射的波段,具有普通光的性质,可以以光速直线传播,强度可以调节,能通过光学透镜聚焦,也可以被不透明物体遮挡等。在现代电子工程应用中,红外线常常被用做近距离的通讯载波用于传输数据、信号等,而在我们生活中,最典型也是最常见的利用红外线传输信号的例子就是电视机的遥控器。总结一下,使用红外线做信号载波的优点A成本低廉;B传播的范围和方向均可以控制;C抗干扰性强,也不会干扰其他信号;D可应用于多种场合等。由此可以看出,以红外线为载波的密码锁同样具有成本低、抗干扰性高、应用范围广泛的优点。B、红外遥控信号的编码设计红外通信的基本原理是红外遥控的发送端将基带二进制信号调制为一系列的脉冲串信号(载波信号),然后通过红外线发射管发射信号。常用的方式有两种,一种是脉宽调制(PWM),另一种则是脉时调制(PPM),它们各有各的特点,在此一一进行简单的介绍。A脉宽调制(PWM)现以日本NEC的UPD6121G组成的发射电路为例说明,它的原理是当按下遥控器按键,也就是当发出遥控码后,随着所按的键不同遥控编码也会有所不同。这种遥控码是采用脉宽调制的串行码,其中,二进制的“0”是用脉宽为056MS、间隔0565MS、周期为1125MS的组合表示的;二进制的“1”是用脉宽为056MS、间隔1685MS、周期为225MS的组合表示的,如图21就是红外遥控码的波形图。BIT“0”BIT“1”1125MS056MS225MS056MS图21红外遥控码波形图二进制码的调制由单片机来完成,它把编码后的二进制信号调制成频率为38KHZ(周期约为26US)的间断脉冲串,此脉冲串就是用于红外线发射二极管发送的信号。一组码本身能持续的时间随着它包含的二进制“0”和“1”的个数不同而不同,一般在4563MS之间。图22为遥控信号发射的波形图。图22遥控信号的波形当按下按键超过36MS时振荡器激活了芯片,将发射一组周期为108MS的编码脉冲,这108MS的发射代码由一个引导码(9MS),一个结果码(45MS)等六种码组成;而如果按下按键超过108MS仍不松开,接下来将会发射的代码也就是连发码仅108MS108MS32位数据码连发码引导码连发码由起始码(9MS)和结果码(225MS)组成。图23为引导码和结果码的波形图。图23引导码和结果码由上可见,使用脉宽调制比较繁琐,所以在本设计中我选择了下面这种的脉时调制。接下来将介绍脉时调制的具体过程。B脉时调制(PPM)脉时调制的原理是以发射载波的位置表示“0”和“1”。从发射载波到不发射载波为“0”,从不发射载波到发射载波为“1”。每位的时间都是固定的为068MS。图24为脉时调制的波形图。图24PPM调制波形图载波信号的频率F38KHZ,载波周期T2632S,本设计是使用单片机软件产生载波,选取T26S,脉冲宽度T110T260S,二进制数0的脉冲串周期T2500S,二进制数1的脉冲串周期T31000S。一般的红外遥控采用面向指令的帧结构,数据帧由三种码组成,分别是地址码,同步码和指令码,其中,指令码传送的字节多时效率较低,而如果增加指令码的长度又不利于接收器的同步,为此,本设计选择一种面向字节的帧结构,采用类似于异步通信的帧结构,每个帧由一个起始位(二进制数0)、8个数据位和2个停止位(二进制数1)构成,图25所示即为数据帧结构的示意图。每帧传送数据为1个字节,每个帧之间的间隔大于2MS。图25数据帧结构示意图9MS9MS225MS45MST1T1T3T2二进制数0二进制数1起始位数据位(8位)停止位停止位帧间隔数据帧由于红外光存在反射,在全双工的方式下发送的信号也可能会被本身接收,因此,红外通信应采用异步半双工方式,即通信的某一方发送和接收是交替进行的。C、红外遥控信号接收器的选择所有红外遥控器的输出都是用编码后串行数据对3840KHZ的方波进行脉冲幅度调制而产生的。单片机的指令周期是微秒级。接收电路可以使用一种集红外线接收和放大于一体的红外线接收器,不需要再外接任何元件,就能完成红外线的接收功能、红外线的输出功能和TTL电平信号兼容问题,而红外线接收器的体积和普通的塑封三极管大小一样,小巧、方便。它能用于各种场合的红外线遥控和红外线数据的传输。在本设计中我就选择了这样一种红外线接收器HS0038,从而便于设计的实现。23单片机串口通信部分设计A、串口通信原理简介串口通信对单片机而言意义重大,不但可以实现将单片机的数据传输到计算机端,而且也能实现计算机对单片机的控制。由于其所需电缆线少,接线简单,所以在较远距离传输中,得到了广泛的运用。串口通信就是串口按位发送和接收字节。尽管比按字节的并行通信慢,但是串口可以实现异步通信,效率比按字节的并行通信要高。它很简单并且能够实现远距离通信。串口通信有四个重要的参数,分别是波特率、数据位、停止位和奇偶校验A波特率用于衡量通信速度的参数。它表示每秒钟传送的BIT的个数。波特率和距离成反比,高的波特率通常用于近距离之间的通信。而本设计中也需要选择一个适当的波特率。B数据位用于衡量通信中实际数据位的参数。实际数据位取决于通信协议的选取。例如,使用标准的ASCII码是0127(7位),而使用扩展的ASCII码是0255(8位)。C停止位用于表示单个包的最后一位。典型的位数值为1,15和2位。它不仅表示传输的结束,也给了计算机校正时钟的同步一定的时间。位数和传输率成反比。D奇偶校验位是串口通信中一种简单的检错方式。其中包含偶、奇、高和低四种。对于奇、偶校验的情况,串口会设置校验位即数据位后面的一位,用一个值确保传输的数据有偶数个或者奇数个的逻辑高位。而高位和低位并不真正用于检查数据,只是简单置位逻辑高或者逻辑低校验。B、波特率的选择波特率就是在串口通信中每秒能够发送的位数。MSC51串行端口有四种工作模式,它们有各自的波特率算法。其中,模式0和模式2波特率计算很简单;模式1和模式3的波特率选择相同,在此仅以工作模式1为例来说明串口通信波特率的选择。在串行端口工作于模式1时,其波特率将由计时/计数器1来产生,通常设置定时器工作于模式2(自动再加模式)。在此模式下波特率计算公式为波特率(1SMOD)晶振频率/(384(256TH1)其中,SMOD寄存器PCON的第7位,称为波特率倍增位;TH1定时器的重载值。在选择波特率的时候需要考虑两点首先,系统需要的通信速率,这要根据系统的运作特点来确定通信的频率范围;然后考虑通信时钟误差,因为使用同一晶振频率在选择不同的通信速率时通信时钟误差也会有很大差别,那么为了通信的稳定性,我们应该尽量选择时钟误差最小的频率进行通信。下面举例说明波特率选择的具体过程假设系统要求的通信频率在20000BIT/S以下,晶振频率为12MHZ,设置SMOD1。则TH125662500/波特率根据波特率取值表,我们知道可以选取的波特率有1200,2400,4800,9600,19200。列出计数器重载值,通信误差如下表21所示表21波特率误差表波特率TH1波特率误差120020401624002300164800243016960024969919200253851因此,在通信中,最好选用波特率1200,2400,4800中的一个。我们可以根据上述波特率的选择方式来选择,选取尽可能误差小的那个波特率。在本设计中,我选择了波特率1200。3、硬件电路设计本设计是以AT89C52作为控制芯片;用一体化红外接收管HS0038接收红外遥控信号;密码存储在外部存储器AT24C02中;用LCD1602作为显示屏显示用户密码操作结果。31控制芯片单片机与系统框图首先,对于单片机的选择,我做出了两种考虑,一种是STC89C52RC,一种是AT89C52。这两种单片机的主要区别是AT89C52只能用编程器下载HEX文件,STC89C52RC的单片机直接通过串口就可以下载;两者编程用法基本相同,但是STC的单片机速度更快,总的来说STC89C52RC的功能更为强大,然后对本次设计我们再次进行对比。对于本次设计的红外遥控电子密码锁,使用STC89C52RC单片机则不需要外接存储模块,可以直接使用单片机内部EEPROM作为存储模块;而使用AT89C52需要外接存储电路,密码可以存储在外部存储器AT24C02上。本着设计并学习的目的,在此我选择了单片机AT89C52,将外部存储器AT24C02作为密码存储部分来完成本次的红外遥控密码锁设计。AT89C52是一个低电压,高性能CMOS8位单片机,片内含8KB的可反复擦写的FLASH只读程序存储器(ROM)和256BYTES的随机存取数据存储器(RAM),能兼容标准的MCS51指令系统,单片机内置通用8位中央处理器和FLASH存储单元,在电子行业中有着广泛的应用。A、功能特性AT89C52单片机能兼容MCS51指令系统,并且内有8KB可反复擦写大于1000次)FLASHROM,2个串行中断口,2个外部中断源,2个读写中断口,其中中断源共有8个;它的32个双向I/O口,可以根据实际需要进行连接,用于添加外部功能部件,例如本设计中的LCD1602显示、红外接收头HS0038的接收、串口通信等;现在社会都提倡低碳环保,所以本单片机中低功耗空闲和掉电模式的功能就十分符合现在人的需求;同时AT89C52有多种的封装形式,以适应不同产品的需求,所以完全可以满足本设计的要求。B、引脚介绍AT89C52为8位通用微处理器,采用工业标准的C51内核,主要的管脚如下RST(9脚)为复位输入端口,外接电阻电容组成的复位电路。XTAL1(19脚)和XTAL2(18脚)为振荡器输入输出端口,外接12MHZ晶振组成的振荡电路。GND(40脚)和VSS(20脚)为供电端口,分别接地和接5V电源。P0P3为可编程的通用I/O脚,其功能用途根据实际由软件定义。在本设计中,P0端口(3239脚)被定义为功能控制端口,分别与LCD1602的相应功能管脚相连接,13脚定义为IR输入端,10脚和11脚定义为I2C总线控制端口与串口通信模块相连,分别连接U2的R1OUT(12脚)和R2OUT(9脚)端口,P2端口(2127脚)连接按键功能部分,8脚连接电磁锁开锁电路,XTAL1、XTAL2(18、19脚)外接振荡电路部分,RST(9脚)外接复位电路部分。如图31为AT89C52引脚图。在单片机的外围电路接红外遥控接收电路和一些功能的控制部分,外接LCD1602显示器用于显示作用。如图32则为单片机控制密码锁的原理框图。红外发射器红外接收头复位电路晶振电路AT89C52蜂鸣器LCD1602继电器电磁锁图32单片机控制密码锁原理框图32单片机最小系统最小系统包括复位电路和晶振电路。图31AT89C52引脚图复位电路本设计采用手动按键复位方式实现系统的复位操作。手动复位要求在电源接通的条件下,在单片机运行期间,用开关按键操作使单片机复位。其结构如图33中R1,C4和K1。手动按键复位是通过按键将RST与VCC接通来实现。晶振电路单片机内部具有一个高增益反相放大器,用于构成振荡器。通常在引脚XTAL1和XTAL2跨接石英晶体和两个补偿电容构成自激振荡器,组成振荡电路,结构如图34中Y1,C1,C2所示。本设计选择了110592MHZ频率的石英晶体,补偿电容采用30PF左右的瓷片电容。图33复位电路接线图图34晶振电路接线图这两部分与单片机AT89C52的连接如下图35所示EA/VP31XTL928RS7D6WIN045OGCUPFUKYM图35单片机复位、晶振电路连接图其中,18(XTAL1)、19(XTAL2)引脚外接振荡电路,即晶振电路部分;9(RST)引脚外接电阻电容组成的复位电路,即复位电路部分,其中,复位电路添加了一个按键,这个按键就是为了在可能系统有故障时能过手动复位而准备的。复位时间TRCLNV1V0/V1VTRSTR110KBUTTONC410UFVCCXTAL2XTAL1Y1110592MC1C2K1R210K求若是充电到90VCC的时间。(V00,V1VCC,VT09VCC)那么,代入上式09VCC0VCC1EXPT/RC1EXPT/RC09EXPT/RC)01T/RCLN01TLN10RC,即T23RC,带入则T230MS。33红外遥控发射部分设计对于红外遥控的发射部分,我们有两种方案,一是使用NEC编码格式红外线遥控编码芯片UPD6122G等作为主芯片再加上外围电路完成此部分,二是直接购买红外线遥控编码芯片的遥控器成品作为系统的发射部分。因为是红外线遥控编码专用芯片,其内部已经集成了按键检测、处理和红外编码模块。而且无须编程,使用十分方便。故市面上的绝大多数的红外遥控器都是使用类似的方案,可见这方面的技术已经相当成熟。在抗干扰能力上,因为没有涉及到软件,所以它的抗干扰能力比较强。这里我选择了20键MP3红外遥控器作为系统的发射部分。34红外遥控接收部分设计红外接收电路是将遥控发射部分发射的红外光信号接收、放大、检波、整形转换成电信号输入到单片机的电路模块。接收解码的关键是如何识别0和1,本系统使用的是一体化红外接收头HS0038进行红外信号接收,在没有信号的时候其输出端是高电平,而有信号的时候是低电平,所以其输出信号电平正好和遥控发射端相反。红外接收探头HS0038,是一体化的红外线接收管,它将遥控信号的接收、放大、检波、整形集于一身,并且输出可以让单片机识别的TTL信号,使用很方便。HS0038的外壳使得它具有很好的性能,它不受光源干扰,内附磁屏蔽,并且有着低的功耗和高的灵敏度。在用小功率发射管发射信号的情况下,其接收距离可达35M。同时,它能与TTL、COMS电路兼容,接收红外信号频率为38KHZ,周期约为26S,它的三个管脚分别是接地端、5V电源端、解调信号输出端。HS0038连接如图36所示。47KR3123HS0038J2GND5V图36HS0038连接图2脚在电路中连接了一个电阻,用于调节信号的输出。功能特性A)光电检测和前置放大器集成在同一封装上B)内带PCM频率滤波器C)抗干扰性强,功耗低D)电平兼容TTL、CMOS35显示部分设计在本次设计中我们需要一款显示屏来显示密码状态,而这里的密码状态因为不需要涉及显示图形、文字等更高一级的显示信息,所以在这里我选择了LCD1602液晶显示屏即可满足要求。LCD与传统的LED数码管显示器件相比,有体积小、功耗低、显示内容丰富等优点,可以单独使而不需要驱动电路触发,在单片机的应用设计中使用比较广泛。在单片机系统中应用液晶显示器作为输出器件有以下几个优点A显示质量高B数字式接口,简单可靠,操作方便C体积小、质量轻D功耗低LCD1602液晶也叫1602字符型液晶显示器,它是一种专门用来显示字母、数字、符号等的点阵型液晶显示模块,它有若干个57或者511等点阵字符位组成,每个点阵字符位都可以显示一个字符。LCD1602显示器具有体积小、功耗低、显示内容丰富等优点,因此,在袖珍式仪表和低功能应用系统中得到越来越广泛的应用。LCD1602显示的内容为216,即可以显示两行,每行显示16个字符。A、功能特性能够匹配单片机5V的工作电压,对比度可调;它的内部含复位电路,不需外接;能够实现清屏、字符闪烁、显示移位等功能;有192个57点阵的字型的字符发生器CGROM和8个可由用户自定义的57的字符发生器CGRAM,能够用于数字和字母的显示,满足设计要求;同时,内有DDRAM存储器用来显示字符的字符码,其容量的大小决定模块最多的字符数目。从上述内容可以看出,LCD1602可以完全实现本设计对显示屏的要求。B、LCD1602的连接,如图37所示。LCD1602采用标准的16脚接口,1脚、16脚GND为电源地,接地;2脚、15脚VCC接5V电源,其中,15脚是背光正极,16脚是背光负极;3脚V0为液晶显示器的对比度调整端,当引脚接正电源时对比度最弱,接地电源时对比度最高,为了显示的清晰度,3脚接地,同时在电路里应用了一个电阻来对电流进行适当的调节,也就是调节液晶的亮度;714脚D0D7为8位三态双向的数据端,分别与单片机的控制端相连,以实现LCD的显示功能。GNDVCORS4W5E609LK图37LCD1602的连接C、在本设计中LCD1602主要实现的功能有A)显示部分LCD1602显示密码暗码、开锁、修改密码、退格以及清屏等。B)报警部分密码输入错误LCD1602显示器会出现错误提示,若密码输入错误次数达到3次,蜂鸣器会报警。36按键电路设计按键共12个,以43模式依次排列,与单片机的功能端口相连,当有一个键按下时,通过某一边引脚赋予低电平,扫描全部引脚看是否与最初的赋值相同,不同则通过将改变后的值与初始值相或,根据结果赋值确定是被按下的键是哪个,若没有键被按下,则清零一次就返回;若有键被按下,则再查询键解读标志位是逻辑0还是逻辑1,如果是逻辑1,说明按键已被解读,可以直接返回;如果是逻辑0,说明按键尚未被解读,则启用消抖延时。同时,AT89C52的P2端是带有内部上拉电阻的双向I/O口,所以按键部分不需要再加上拉电阻。图38为按键电路连接图。S1235467890P图38按键电路图37开锁电路设计开锁电路选择使用电磁锁,其中,电磁锁由继电器来驱动,当P17端接收到信号后再经三极管调节传至继电器,磁体得电吸合,从而接通解锁电路,门锁得以打开。继电器的额定值为02W、5V,可计算出,继电器工作吸合电流I02W/5V40MA,基极电阻R933K。图39为开锁电路连图。KRHEADRGNDVLYQ图39开锁电路38报警部分设计在报警部分我选择蜂鸣器,这也是十分常用的一体化结构电子讯响器,它采用直流电压供电,广泛应用于打印机、复印机、报警器、电子玩具、电话机、定时器等电子产品中作为发声器件。蜂鸣器分为有源蜂鸣器和无源蜂鸣器(这里的“源”不是指电源,而是指震荡源),有源蜂鸣器一般比无源的贵。本系统中我们选择无源蜂鸣器,控制更方便,并且性价比更高。无源蜂鸣器的优点是A)便宜B)声音频率可控,可以做出音调的效果C)在一些特例中,可以和LED复用一个控制口蜂鸣器连接部分如图38所示。LS1BELLQ1GND5V10KR4P10图38蜂鸣器的连接由电路可知,假设接入的电源为5V,电阻R3为1K,那么根据电流的方向,Q1向下部分的电流就是I5/10000005A。也就是说,在电路中加入电阻的目的就是调节电流,从而使得蜂鸣器的报警声音降低,而电阻的选择有这样的规定,Q1上方的电流IC要小于Q1下方的电流IB,这样才能导通三极管,使蜂鸣器发声。报警部分与单片机相连,在密码输入错误时蜂鸣器会发出警报。蜂鸣器是当电流通过电磁线圈,使电磁线圈产生磁场来驱动振动膜发声的,只有用一定的电流才能将它驱动,而单片机I/O引脚输出的电流较小不足以使蜂鸣器发声,因此需要增加一个电流放大的电路,即通过一个三极管来驱动蜂鸣器。当P10口输入低电平时,三极管Q1被导通,蜂鸣器的电流能形成回路从而发出声音。4、软件电路设计目前,对单片机的编程主要采用汇编语言和C语言。汇编语言有着执行效率高、速度快、与硬件结合紧密等的特点,尤其在进行I/O端口管理时,使用汇编语言有快捷、直观的优点。但是使用汇编语言相对于使用C语言编程难度要大一些,且程序可读性低,开放性差,效率不是很高。所以,本设计中选择了C语言作为编程语言。程序设计分为三个部分红外遥控程序部分、LCD1602显示程序部分和主程序部分。A、主程序部分红外遥控电子密码锁先将红外信号转换为相应的电信号,然后发射出去,当红外遥控的接收端接收到信号时,就与保存在终端的密码进行比较,密码正确则开锁,反之,密码不正确,就由蜂鸣器发出报警声。图41为主程序流程图。开始调用中断解码程序红外解码接收码正确有红外中断密码正确开锁报警中断返回NYNY图41主程序流程图WHILE1/主循环IFIROK/如果接收好了进行红外处理KEYSCANIROK0IFIRPRO_OK/红外处理完毕标志位置1后NUMKEYPRO/取遥控键盘值IFI0/输入是第一个字符的时候需要把该行清空,方便观看密码LCD_WRITE_STRING0,1,“/清除该行在主程序设计中,当键入密码时,为确保密码的保密性,不能直接显示数字,而应该以“代替。IFI33/引导码TC9012的头码,9MS45MSI0IRDATAIIRTIME/存储每个电平的持续时间,用于以后判断是0还是1IRTIME0IIFI33IROK1I0ELSEIRTIME0STARTFLAG1/定时器0初始化/VOIDTIM0INITVOID/定时器0初始化TMOD0X02/定时器0工作方式2,TH0是重装值,TL0是初值TH00X00/重载值TL00X00/初始化值ET01/开中断TR01/外部中断初始化/VOIDEX0INITVOIDIT11/指定外部中断1下降沿触发,INT0P32EX11/使能外部中断EA1/开总中断C、LCD1602显示部分LCD1602显示部分包括初始化函数、写入命令函数、写入数据函数、清屏函数、写入字符串函数和写入字符函数。图44为LCD1602显示程序流程图。开始判定LCD忙状态LCD初始化设定设定显示位写指令写入数据至LCDLCD显示结束NY图44LCD1602显示程序初始化函数如下VOIDLCD_INITVOIDLCD_WRITE_COM0X38DELAYMS5LCD_WRITE_COM0X38DELAYMS5LCD_WRITE_COM0X38DELAYMS5LCD_WRITE_COM0X38LCD_WRITE_COM0X08/显示关闭/LCD_WRITE_COM0X01/显示清屏/LCD_WRITE_COM0X06/显示光标移动设置/DELAYMS5LCD_WRITE_COM0X0C/显示开及光标设置/判忙函数如下BITLCD_CHECK_BUSYVOIDIFDEFCHECK_BUSYDATAPORT0XFFRS_CLRRW_SETEN_CLR_NOP_EN_SETRETURNBITDATAPORTELSERETURN0ENDIF5、设计效果51主要注意事项A、焊接时注意事项第一步准备焊接清洁被焊元器件,再将被焊元器件周围的元器件左右掰一掰,让电烙铁头可以方便的触到被焊元器件的焊锡处,以免烫坏其它元器件。第二步加热将被焊元器件预热约几秒钟。第三步清理焊面若所焊部位焊锡过多,可用光烙锡头去除部分焊锡;若焊点焊锡过少、不圆滑时,可以对焊点进行补焊。第四步检查焊点看焊点有没有牢固,是不是圆滑,有没有连焊的现象。焊接流程按照附录所示的密码锁的硬件连接原理图按下列顺序依次焊接A)焊接单片机的晶振电路、复位电路等单片机的最小系统的外围电路。B)焊接LCD的相应管脚并把LCD的管脚与单片机相连接。C)焊接红外接收电路、报警电路。D)焊接密码锁的按键电路。E)焊接其他接口及辅助电路。F)焊接接地及高电平。B、LCD的注意事项A采用焊接方法将金属基PIN安装于LCD时,从玻璃末端到PCB的焊接位置的长度至少5MM,焊接温度必须在260以下,且焊接时间必须在10秒以内,以免焊接过程中对装置的损坏,确保焊接性能。B焊接时平放LCD,尽量不让LCD受力。C焊接LCD基板时,将其小心、平衡地插入PCB插槽,以避免损坏基PIN或LCD基板。D焊接时,LCD基板不宜长时间置于焊锡蒸汽中,清洗时,必须避免污染LCD基板,否则可能损坏显示器表面的偏光片及封口胶。F显示器表面的保护膜要直到焊接完成才可揭掉,不要用手指及其它硬物接触偏光片,避免水和其他化学物质弄污装置。52实物效果这里需要注意的是,某些元器件例如AT89C52单片机、MAX232等,它们的原理图引脚分布和实物引脚分布是不同的,所以在焊电路板的时候,要仔细看清哪个脚该与哪个脚相连。结语这次毕业设计,是基于单片机的红外遥控电子密码锁,这是一款集性价比与功能性于一体的安全可靠的密码锁,可以应用于多种不同的场合,有很大的市场前景,更值得我们今后去深入研究。在设计过程中,我首先依据课题的任务与要求查找相关文献并自己阅读和理解,然后上网搜索课题各个要点的原理和设计方式,在得到了一定的启发后,开始着手毕业设计内容。虽然已经找了各类参考文献,但是在自己设计的过程中还是遇到了这样那样的问题,比如,在元器件选择方面需要考虑的不仅仅是它的功能,还要考虑尺寸和在整体方案设计的位置,这样才能在后续实物制作中减少差错的可能性,在焊电路板时,焊点与焊点之间不要有不必要的粘连。而在软件电路设计时,编程中也遇到了各种问题,在ALTIUM软件中有些器件没有封装,需要自己添加封装才能转换到PCB板上,仿真运行不正确,得不到想要的结果,编程中有些细节没有考虑全。等等这些问题,都是通过老师的解答才得到想要的结果,所以这次设计较为成功,老师的功劳很大,给了我很大的帮助,也让我对单片机设计的理解更上了一层楼。这次设计中,对于红外遥控电子密码锁还可以进行距离上的改变和升级,这也是我可能在以后的这方面设计中需要考虑更多的问题。总体而言,这次毕业设计不仅是对以前学过知识的总结和应用,更是对学过知识的升华,对我们以后设计或者工作都有很大的帮助,同时也更多地培养了我们自主学习和创新的能力,对我的影响很大当然这次设计一定也有不足之处,还望老师予以指正,以便我以后学习改进参考文献1彭为,黄科,雷道仲单片机典型系统设计实例精讲M北京电子工业出版社,20061251312凌志斌,邓超平,郑益慧,叶梵生红外遥控技术及其解码方案J微处理机,200352683曾喆昭红外遥控电子密码锁应用研究J国外电子元器件,2002784王守忠51单片机开发入门与典型实例M北京人民邮电出版社,200755615王兆安,刘进军电力电子技术M西安机械工业出版社第5版,20096李爱秋红外线遥控12位电子密码锁的设计J温州职业技术学院学报,2008,81347倪健,董强编码解码技术在红外遥控器中的实现J中国民航飞行学院学报,2004,1688孙育才MCS51系列单片微型计算机及其应用M南京东南大学出版社,200422349马忠梅,刘滨,威军,马岩单片机C语言WINDOWS环境编程宝典M北京北京航空航天大学出版社,200321221610丁元杰单片微机原理及应用M北京机械工业出版社,200511张红,于平,程文播基于单片机控制的LCD显示屏系统J微计算机信息,2009929312杨路明C语言程序设计M北京北京邮电大学出版社,20055226813马鸿文基于AT89C52单片机的自动存取柜的设计与实现M微计算机信息,200610110314吴金戌8051单片机实践与应用研究M北京清华大学出版社,200215王静ALTIUMDESIGNERWINTER09电路设计案例教程M北京中国水利水电出版社,20107787致谢时光飞逝,我们即将离开大学的课堂,毕业设计是这四年学习的考核和总结方式之一,而为期几个月的毕业设计也进入了尾声。在此,我想首先感谢我们的指导老师朱晓琴老师对我们耐心的指导,定期为我们检查和答疑,在我们有错时立即给予指正,这才能使我们正确地一步步完成本次的毕业设计。其次,我想感谢其余给我帮助的老师,在实验室中,当我遇到问题时能够给予耐心的解答和帮助。还有想感谢的是学院,给了我们实验制作的地方,能让我们专心于我们的毕业设计,并且不吝啬地提供设备和实验室,这给我们毕业设计带来了很大的方便。最感谢的是我的家人,只有他们的支持和鼓励,才让我一步步成长,并且顺利完成了四年的大学学习。有了这么多对我们的帮助和关心,我才能做完成这次的毕业设计,走完这条大学路,在此再一次表示感谢附录附录1程序附录2原理图附录3元器件列表附录1程序清单A、红外遥控程序设计INCLUDE/头文件,INCLUDE“KEYBOARDH“INCLUDE“DELAYH“INCLUDEDEFINETURE1DEFINEFALSE0SBITIRP33/红外接口标志UNSIGNEDCHARIRTIME/红外用全局变量BITIRPRO_OK,IROKUNSIGNEDCHARIRCORD4/处理后的红外码,分别是客户码,客户码,数据码,数据码反码UNSIGNEDCHARIRDATA33/33个高低电平的时间数据/函数声明/VOIDSHOWSTRINGUNSIGNEDCHARLINE,CHARPTR/定时器0中断服务函数/VOIDTIM0_ISRVOIDINTERRUPT1USING1/定时器0中断服务函数IRTIME/用于计数,2个下降沿之间的时间/外部中断0函数/VOIDEX0_ISRVOIDINTERRUPT2USING1/外部中断1服务函数STATICUNSIGNEDCHARI/接收红外信号处理STATICBITSTARTFLAG/是否开始处理标志位IFSTARTFLAGIFIRTIME33/引导码TC9012的头码,9MS45MSI0IRDATAIIRTIME/存储每个电平的持续时间,用于以后判断是0还是1IRTIME0IIFI33IROK1I0ELSEIRTIME0STARTFLAG1/定时器0初始化/VOIDTIM0INITVOID/定时器0初始化TMOD0X02/定时器0工作方式2,TH0是重装值,TL0是初值TH00X00/重载值TL00X00/初始化值ET01/开中断TR01/外部中断初始化/VOIDEX0INITVOIDIT11/指定外部中断1下降沿触发,INT0P32EX11/使能外部中断EA1/开总中断/红外键值处理/UNSIGNEDCHARKEYPROVOID/红外键值散转程序SWITCHIRCORD3CASE0X43RETURN0BREAKCASE0X47RETURN1BREAKCASE0X4BRETURN2BREAKCASE0X4FRETURN3BREAKCASE0X53RETURN4BREAKCASE0X57RETURN5BREAKCASE0X5BRETURN6BREAKCASE0X5FRETURN7BREAKCASE0X63RETURN8BREAKCASE0X67RETURN9BREAKCASE0X2BRETURN10BREAK/按了F1键DEFAULTBREAKIRPRO_OK0/处理完成后清除标志位/红外解码函数处理/UNSIGNEDCHARKEYSCANVOID/红外码值处理函数UNSIGNEDCHARI,J,KUNSIGNEDCHARCORD,VALUEK1FORI0I7VALUEVALUE|0X80ELSEVALUEVALUEIFJ1KIRCORDIVALUEVALUE0IRPRO_OK1/处理完毕标志位置1二、LCD1602显示INCLUDE“1602H“INCLUDE“DELAYH“SBITRSP27/定义端口SBITRWP26SBITENP25DEFINECHECK_BUSYDEFINERS_CLRRS0DEFINERS_SETRS1DEFINERW_CLRRW0DEFINERW_SETRW1DEFINEEN_CLREN0DEFINEEN_SETEN1DEFINEDATAPORTP0BITLCD_CHECK_BUSYVOIDIFDEFCHECK_BUSYDATAPORT0XFFRS_CLRRW_SETEN_CLR_NOP_EN_SETRETURNBITDATAPORTELSERETURN0ENDIFVOIDLCD_WRITE_COMUNSIGNEDCHARCOM
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论