版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、毕业设计说明书论文作者:学号:系:专业:题目:基于单片机的保险柜电子密码锁的设计与实现毕业设计论文原创性声明和使用授权说明原创性声明本人重承诺:所呈交的毕业设计论文,是我个人在指导教师的指导下进行的研究工作及取得的成果。尽我所知,除文中特别加以标注和致的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得及其它教育机构的学位或学历而使用过的材料。对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了意。作者签名:日期:指导教师签名:日期:使用授权说明本人完全了解大学关于收集、保存、使用毕业设计论文的规定,即:按照学校要求提交毕业设计论文的印刷本和电子版本
2、;学校有权保存毕业设计论文的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部容。作者签名:日期:学位论文原创性声明本人重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。除了文中特别加以标注引用的容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法律后果由本人承担。作者签名:年月学位论文使用授权书本学位论文作者完全了解学校有关保留、使用学位论文的规定同意学校保留并向国家有关部门或机
3、构送交论文的复印件和电子版允许论文被查阅和借阅。本人授权大学可以将本学位论文的全部或部分容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。涉密论文按学校规定处理。作者签名:日期:年月日导师签名:日期:年月日注意事项1.设计论文的容包括:1封面按教务处制定的标准封面格式制作2原创性声明3中文摘要300字左右、关键词4外文摘要、关键词5目次页附件不统一编入6论文主体部分:引言或绪论、正文、结论7参考文献8致9附录对论文支持必要时论文字数要求:理工类设计论文正文字数不少于1万字不包括图纸、程序清单等,文科类论文正文字数不少于1.2万字。附件包括:任务书、开题报告、外文
4、译文、译文原文复印件。文字、图表要求:1文字通顺,语言流畅,书写字迹工整,打印字体及大小符合要求,无错别字,不准请他人代写2工程设计类题目的图纸,要求部分用尺规绘制,部分用计算机绘制,所有图纸应符合国家技术标准规。图表整洁,布局合理,文字注释必须使用工程字书写,不准用徒手画3毕业论文须用A4单面打印,论文50页以上的双面打印4图表应绘制于无格子的页面上5软件工程类课题应有程序清单,并提供电子文档装订顺序1设计论文2附件:按照任务书、开题报告、外文译文、译文原文复印件次序装订指导教师评阅书指导教师评价:一、撰写设计过程1、学生在论文设计过程中的治学态度、工作精神优良中及格不及格2、学生掌握专业知
5、识、技能的扎实程度优良中及格不及格3、学生综合运用所学知识和专业技能分析和解决问题的能力优良中及格不及格4、研究方法的科学性;技术线路的可行性;设计方案的合理性优良中及格不及格5、完成毕业论文设计期间的出勤情况优良中及格不及格二、论文设计质量1、论文设计的整体结构是否符合撰写规?优良中及格不及格2、是否完成指定的论文设计任务包括装订及附件?优良中及格不及格三、论文设计水平1、论文设计的理论意义或对解决实际问题的指导意义优良中及格不及格2、论文的观念是否有新意?设计是否有创意?优良中及格不及格3、论文设计说明书所体现的整体水平优良中及格不及格建议成绩:优良中及格不及格在所选等级前的口画,”指导签
6、名单位:盖章年月日评阅教师评阅书评阅教师评价:一、论文设计质量1、论文设计的整体结构是否符合撰写规?优良中及格不及格2、是否完成指定的论文设计任务包括装订及附件?优良中及格不及格二、论文设计水平1、论文设计的理论意义或对解决实际问题的指导意义优良中及格不及格2、论文的观念是否有新意?设计是否有创意?优良中及格不及格3、论文设计说明书所体现的整体水平优良中及格不及格建议成绩:口优良中及格口/、及格在所选等级前的口回,”评阅教师:签名单位:盖章年月日教研室或答辩小组及教学系意见教研室或答辩小组评价:一、答辩过程1毕业论文设计的基本要点和见解的叙述情况口优口良口中口及格口不及格2、对答辩问题的反应、
7、理解、表达情况口优口良口中口及格口不及格3、学生答辩过程中的精神状态口优口良口中口及格口不及格二、论文设计质量1、论文设计的整体结构是否符合撰写规?口优口良口中口及格口不及格2是否完成指定的论文设计任务包括装订及附件?口优口良口中口及格口不及格三、论文设计水平1、论文设计的理论意义或对解决实际问题的指导意义口优口良口中口及格口不及格2、论文的观念是否有新意?设计是否有创意?口优口良口中口及格口不及格3、论文设计说明书所体现的整体水平口优口良口中口及格口不及格评定成绩:优良中及格不及格教研室主任或答辩小组组长:签名年月日教学系意见:系主任:签名设 计 说 明 书 摘 要年月日摘要在日常生活和工作
8、中,锁是每个人都离不开的,它是保护个人财产安全、保护资料档案的关键元素。随着电子技术的飞速发展,传统弹子锁的缺点渐渐被放大社会对新式电子密码锁的需求越来越大,前景广阔。本次设计基于单片机,其主控芯片选择了单片机AT89S51显示模块选择了LCD1602结合了自行设计的矩阵键盘、报警模块等外围电路,主控芯片的控制程序则使用C语言写成,完成了一套具有按键输入、显示、解锁、报警及密码修改等多种功能的电子密码控制系统。本论文详细叙述了各个模块的功能和设计方案,给出了系统各个功能的仿真结果截图。关键词单片机电子密码锁矩阵键盘LCD显示报警毕业设计说明书论文外文摘要TitleTheDesignofElec
9、tronicPasswordLockBasedonSCMAbstractIndailylifeandwork,everyoneisinseparablefromthelock,whichistheprotectionofpersonalandpropertysafety,theprotectionofdatafiles.Withtherapiddevelopmentofelectronictechnology,theshortcomingsoftraditionaltumblerlockgraduallybeenenlarged,thedemandfornewelectroniclocksin
10、creasinglybroadprospects.Thisdesignisbasedonthemicrocontroller,itsmainchipmicrocontrollerchosenAT89S51,displaymodulechosenLCD1602,acombinationofself-designedmatrixkeyboard,alarmmoduleandotherperipheralcircuits,themasterchipcontrolprogramiswritteninClanguage.Fromthedesign,wegotanelectronicpasswordcon
11、trolsystemwhichhasvarietyoffunctions:keyinput,display,unlock,passwordchangingandalarm.Thisarticledetailsthefeaturesanddesignofeachmodule,thesimulationresultsofthevariousfunctionsofthesystemscreenshot.KeywordsElectronicpasswordlockSCMMatrixkeyboardLCD DisplayAlarm TOC o 1-5 h z 1引言1 HYPERLINK l bookm
12、ark20 o Current Document 课题背景和意义1 HYPERLINK l bookmark22 o Current Document 电子密码锁的发展趋势1 HYPERLINK l bookmark24 o Current Document 本设计要实现的目标2 HYPERLINK l bookmark26 o Current Document 设计方案的选择2 HYPERLINK l bookmark28 o Current Document 主要原件介绍5 HYPERLINK l bookmark30 o Current Document 主控芯片AT89C51简介5 H
13、YPERLINK l bookmark32 o Current Document LCD1602a示器介绍7 HYPERLINK l bookmark34 o Current Document 晶体振荡器9 HYPERLINK l bookmark36 o Current Document 系统设计10, HYPERLINK l bookmark38 o Current Document 整体思路10 HYPERLINK l bookmark40 o Current Document 系统硬件部分设计11键盘输入电路11复位电路12晶振电路12显示电路13报警、解锁提示电路14 HYPERLI
14、NK l bookmark48 o Current Document 系统软件部分设计15主要程序流图15按键检测子程序设计15LCD显示子程序设计17密码修改子程序设计18报警声音子程序设计19仿真调试22 HYPERLINK l bookmark56 o Current Document PROTEUSISIS简介22 HYPERLINK l bookmark58 o Current Document 软件调试22 HYPERLINK l bookmark60 o Current Document PROTEUSJ真24 HYPERLINK l bookmark66 o Current D
15、ocument 结论29致30参考文献31 HYPERLINK l bookmark68 o Current Document 附录A电子密码锁程序源代码32引言课题背景和意义自从人类脱离原始社会、开始有私有财产的概念以来,锁就是人们生活中的重要组成部分。它的存在,维护了人们的财产安全、人身安全,增加了人们的安全感,促进了社会和谐。因此,人们对锁的研究从未停止,但几千年来都未有较大的变化,直到20世纪30年代后,电子密码锁的概念出现,这一领域终于出现了日新月异的进步。得益于电子技术的飞速发展,电子密码锁的功能愈来愈完善,取密码量相对较少、安全性不好的常规锁具已然是大势所趋。电子密码锁拥有太多机
16、械锁完全无法相比的优点。它不但能完成锁自身的功用,还可以具有记忆、辨识、警报等特别的作用。因为电子密码锁更安全性、更便宜、易操作,越来越多人开始关注这一领域。当前在第一世界国家中,密码锁技术已经比较成熟,拥有不同的种类,在各类智能门禁系统中,电子密码锁的使用十分普遍,使得门禁的实现有了数种安全、可靠的技术来支持。总的来说,中国目前的密码锁技术还只有世界上70年代左右的水平,生产仍显昂贵。当前,按键式电子锁仍占据了中国市场的大头,国有若干厂家引进了海外较为先进的按键式和卡片钥匙型锁。另一方面,中国自主研发的电子锁还没有形成成型的产业链,尚未普及。现在国有不少企业引进了当前世界上先进的技术,发展前
17、景非常可观1。相信国的厂商也会不断进步,使得电子密码锁普及在中国的土地上。电子密码锁的发展趋势在大家的日常生活中,住所和单位的安全保障,档案、财务报表和大多数私人资料、文件的保护基本用上锁的办式来实现。现在门锁大都使用弹子锁,这种锁钥匙易丢失、仿制也并不困难;保险箱最常见的就是使用机械密码锁,它的构造很麻烦,制作精度要有相当高的保障,这种情况下,成本就很难降下来,不仅如此,机械密码锁的缺点依然明显:故障率居高不下,使用者往往要携带数把钥匙,易用性很成问题。前述锁具有着这样多的不便,而人们对锁的需求又是巨大的,一种使用密码来代替钥匙的锁具就成为了必然出现的产品。电子密码锁的出现,大大提高了人们的
18、生活水平,提供了诸多便利,这也同时意味着巨大的市场,前景一片光明。由于电子器件的限制,上世纪制造的电子密码锁,不仅类型少、易破解,锁具最关键的开锁环节也仅仅是依赖基础的模拟电子开关,工艺简单却存在相当大的安全隐患;之后,数字电路的飞速发展,使得电子密码锁的电路结构复杂性逐渐增加、元件数量逐渐增多,早先单片机刚普及时也曾使用2051系列单片机来实现,但密码简单,易破解2。随着电子技术的进一步发展和大众对要求的增强,电子密码锁的种类日益繁多、功能渐趋全面,操作更加便捷,安全性更强:由以往单纯的键入口令发展到今天新增了感应元件想要开锁,必须同时有密码和电子钥匙,做到了更加稳妥的电子。社会对电子密码锁
19、安全性、易用性的需求,使得多种产品相继问世。但它们中的大多数仅仅是针对特定的声纹、指纹,并且无法做到远程控制,只能用在要求较高的私人用途上。事实上,数字、字母、图象、生物体征以及地点等因素都能够作为密钥的信息来源,上述信息的排列组合完全可以把电子密码锁的性推向更高的高度。与此同时,信息要素的组合也使得电子密码锁得到了无限拓展的可能性,产品将越来越多变,对用户而言就有了很大的挑选余地。由此可以看出组合使用电子信息是电子密码锁今后发展的趋势3。本设计所要实现的目标本设计基于单片机。使用AT89C51作为主控芯片,结合外围电路组成一个电子密码控制系统。用户若想开锁,必须输入正确的密码,错误则有文字及
20、声音提示并要求重新输入。密码锁同时具有修改密码的功能,修改密码时,必须键入正确的原密码进行验证,然后输入新密码。设计方案的选择主控部分选择方案一:采用数字电路控制。把74LS112双JK触发器当作系统的中心,搭配其他原件组成数字逻辑电路。在功能上,可以设置9个按键,选择其中4个作为有效的密码按键,并将其它按键均设定为干扰按键,当按下干扰按键时,就将键盘输入电路复位,使得前面输入的密码无效化,要求重输;如果用户输入密码的时间超过10秒,电路将报警20秒,若电路连续报警三次,电路将锁定键盘2分钟,防止他人的非法操作4。采用数字电路设计方案时设计虽然简单,但控制的准确性和灵活性差。故不采用。方案二:
21、采用单片机控制方案单片机当前的类型很多,各种型号的应用环境都各有不同,在选用时就有了更多的选择,使我们可以多加比较、以便选择最为合适的型号,获得更好的性能/价格比。下列关键词往往应该成为考虑时最需关注的方面:性能、串行接口、工作电压、存储器、模拟电路功能、抗干扰性、运行速度、封装形式、I/O口、功耗、定时/计数器、性。除此以外,在单片机开发过程中还会产生影响有开发工具、编程器、开发成本、开发人员的适应性、技术支持和服务等因素5。考虑到方方面面,本设计采用了AT89C51作为核心芯片,单片机提供的I/O端口虽有限,但端口复用或扩展、结合有效的控制程序,实现基本的密码控制功能是十分简单的。单片机的
22、外围电路主要包括:一块外接矩阵键盘用来密码输入、控制程序流向,一块LCD显示屏用来作为系统的输出,对用户的操作进行反馈。当用户进行开锁时,首先利用键盘上的09完成密码的输入,而后确认,若正确则解锁,否则保持锁定状态并要求重新输入,在适当的时机可发出报警声。在用户进行密码修改操作时,首先要输入原密码,只有当输入和原密码匹配时才会允许设置新密码,新密码设置完成后按确认键则保存。显然,方案二的功能丰富,控制方便,有较好的准确性,在保证的同时还能进行功能的拓展。基于以上原因,我在此采用方案二,即使用单片机AT89C51结合外围接口电路来完成本此设计。密码输入方式选择方案一:声纹输入识别所谓声纹,是用电
23、声学仪器显示的携带言语信息的声波频谱,人类语言的产生是人体语言中枢与发音器官之间一个复杂的生理物理过程6。人的发声器官大致有以下几种:舌、齿、头、肺、鼻,虽然人们都是用这些器官来发声,但不同人的这些器官会存在尺寸或外形的较大差别,因此任意两人的声纹图谱都会存在差别。另一方面,在一定的年龄段,每个人的声音特征都不会发生太大变换,相对稳定,所以人们一般可以区分出不同人的声音或判断是否是某一个特定人的声音。在作为电子锁的输入时,系统会分析所输入声音的声学特征,并与先前保存的样本进行对比,通过计算机计算出两者的相似度,并以此判定输入的正确性。考虑到本方案过于复杂,且有不低的成本,因此我们不采用。方案二
24、:矩阵键盘输入识别矩阵键盘的每一行、每一列均相连,引出连接到一个I/O口上,按键设在每一个行线和列线的交叉处,每当有一个键按下就使得某一条行线与某一条列线相接通,只要确定接触的是哪两条线,即哪两个I/O口线,就可以确定哪一个键被触动7。此方案相对简单、易于实现,因此采用之。2主要元件介绍主控芯片AT89C51简介AT89C5促一款工作电压低、高性能的8位微处理器即通常所说的单片机。这款单片机拥有自己的可编程可擦除只读存储器,容量为4K字节,可以反复擦写100次。由于将多功能8位CPlf口闪烁存储器组合在单个芯片中,ATMEUAT89C51是一种高效微控制器80主要特性与MCS-51兼容46节可
25、编程闪烁存储器寿命:1000写/擦循环数据保留时间:10年全静态工作:0Hz-24MHz三级程序存储器锁定128X位部RAM3列编程I/O线两个16位定时器/计数器价中断源可编程串行通道低功耗的闲置和掉电模式片振荡器和时钟电路管脚功能说明:AT89C51E片的弓I脚图如下:2345日7宫910111213u1415ibIBUIP2DPl .0VccPl.lADO/PQ.OPI2AD1/P0.I:JAT3SC51Pl 3AD2/PO.2Pl 41D3/PO3Pl .5AD4/PO4Pl ,6W5/PO.5Pl 3AD6/PO.6KTAD7/TO7P3。瑶 DEAps.impALEP3 2/IMT
26、0PSEN由 3nlmA1W2.7ps.irroAL4/P2.6p3 5nliA13/P25P3.fi/WRA12/P2,4P37/RDAU/P2,3XTAL2ML0/P2.2XT ALLA9/P2.1GNDA8/P2.0403?3G37 136空343332嚣_26_27笈2524 1232221图2.1AT89C51芯片弓唧图VCC供电电压。GND接地。P0-P3口均为8位双向I/O端口,但又有所不同P0口:第一次将P1口的管脚写为1的时候,这8位的端口都会变为高阻状态。P0可以用于连接外部程序数据存储器,同时,P0口也能被定义成数据/地址的低八位。P1口:部提供上拉电阻,其缓冲器可以吸收
27、的门电流量为4TTL将P1口的管脚写为1时,整个P1端口会被部的上拉电阻上拉为高电平。P2口:部同样带有上拉电阻。P2口缓冲器既允许接收电流,又允许输出电流。当P2口被写1”时,其作用与P1口完全相同。P2口的特殊用途在于连接外部的程序存储器和16位地址的外部数据存储器。若作为16位地址的一部分时,P2口输出所需地址高八位,和P0口相配合。除此以外,它还可以利用部拥有上拉电阻的便利,当对外部的数据存储器实行读写操作仅限8位地址时,输出它特殊功能寄存器中的容。P3口:P3口的基本用途和性质与其他端口并无不同,只是它可以作为单片机的特殊功能口,列于下表中:表2.1P3口功能鼐口引脚/特殊功能端口标
28、识/串行输入口P3.串行愉出口。TXD+JF3.审愉人外部中断Q门在NTO.P3,3。输入外部申断M/INTMP3,好记时器。外部,献/TO-P3.M记时器1外部输入/T10P3.SP外部数据存僦器写选通/P3.外部判提在例器读选通,/RDP3口同时为闪烁编程和编程校验接收一些控制信号振荡器特性单片机AT89C51允许用户自行外接合适频率的晶体振荡器,最常使用的不外乎石晶振荡和瓷振荡。当配置为片振荡器时,反向放大器输入端口应接XTALI输出端口应当接XTAL2当使用外部时钟源时,不接XTAL2此处外部时钟信号的脉冲宽度可以是任意的。芯片擦除想在任何已存有信息的存储字节上重复编程,首先必须对芯片
29、进行擦出操作。AT89C5ts片的擦出方法为:ALE管脚接低电平10ms,同时搭配以适当的控制信号组合,此种操作会将代码阵列全部写为“1。此外,AT89C51设有两种掉电模式。用户可以自主选择:一是“闲置模式,此模式下CPU等会挂起,但RAM定时器,计数器,串口以及中断系统仍会处于工作状态;二是掉电模式,此时保存RAM勺容并且冻结振荡器,禁止所用其他芯片功能,直到下一个硬件复位为止9。LCD1602显示器介绍液晶显示模块主要用于为系统提供输出,可显示图形、数字或专用符号等信息,这一元件在电子产品中相当常见。在本次设计中我们选用LCD1602M示模块,这一型号有诸多优点,如显示自由度高、体积小、
30、耗能少等。LCD1602可显示2*16个字符,有RS,R/W,ENE个控制端口和8位数据总线D0-D7,工作电压为5V,并且具有字符对比度调节和背光功能10。它的主要特性如下:错误!含复位电路,对比度可调错误!通过控制命令可以实现实现多种功能。错误!部有一显示数据存储器DDRAMf容量为80字节。错误!拥有200个5*7的字符发生器CGRO觇中8个可由用户自定义1602型LCD的接口引脚说明如表2.2所示。表2.2LCD1602引脚说明编P符号功能编p符号功能1VSS电源地9D2数据2VDD电源正极10D3数据3VL液晶显示偏压11D4数据4RS数据/命令选择12D5数据5R/W读/写选择13
31、D6数据6E使能信号14D7数据7D0数据15BLA背光源正极8D1数据16BLK背光源负极1602型LCD主要技术参数:显示容量:16X2个字符芯片工作电压:4.55.5V工作电流:2.0mA模块最佳工作电压:5.0V字符尺寸:2.95X4.35mm宽X高常用指令见下表:表2.3LCD1602常见指令指令小动静痴1清屏n数据地址指针而g0 x02输出回车J教据地址指针为Os38u切换为国始显示5带点阵j8位数据小OxOF病开显不,光标闪烁,显不光标府当写入一个字符后,世址加1,倒囿小动/0 x013国面左移,相当于字符右移户晶体振荡器晶体振荡器简称晶振可以产生一定频率的时钟信号,这一信号经过
32、调频后可成为处理器中各处的总线频率。现在使用最多当属石英晶体振荡器,也称石英晶体谐振器。石英晶体振荡器具有精度高和稳定度高的优点,它同时可以作为一种晶体谐振元件实现LC谐振回路的功能:稳定频率和选择频率。石英晶体振荡器在生活中的电子设备里随处可见,为它们产生时钟信号,应用在在单片机中时也是如此。石英晶体具有压电效应,石英晶体振荡器就是利用这一特点制作成的,简称为石英晶体或晶体、晶振。大多数晶振是这样构成的:从特定角度切下矩形或圆形的石英晶体薄片,并在其对应面上敷银制成电极,并在上面各焊一根引线接到管脚上,再加上封装外壳11o3系统设计整体思路本系统主要包括单片机、矩阵键盘、复位电路、晶振电路和
33、液晶显示器等部分。作为整个系统的输入,矩阵键盘担当着与用户交互的核心任务,用户可以再此输入密码或控制程序的运行方向。功能上,首先由用户由矩阵键盘输入密码,而后与事先存储白密码进行比较,判断出密码的正确与否,然后单片机会控制特定引脚的电平以触发开锁电路或者报警电路。实用产品只须将单片机的负载由发光二极管替换为实际锁具的开锁电路即可,当然也可以用继电器的常开触点去控制电磁铁吸合线圈12。具体的讲,本设计可以分为硬件部分与软件部分俩大部分。其中硬件部分又分为键盘输入电路、复位电路、晶振电路、显示电路、报警或解锁提示电路等几大模块;相应的,软件部分由主程序、按键检测子程序、LCD显示子程序、密码修改子
34、程序、报警声音子程序等组成。图3.1系统框图系统硬件部分设计本系统外围电路包括键盘输入电路、复位电路、晶振电路、显示电路、报警或解锁提示电路等。结合本设计的原定目标,键盘输入电路选择4刈矩阵键盘,显示电路选择显示屏LCD160怵完成。其原理图如图4.1所示。riaMO 暗母Hl k*: rz对t 百Wf4 E3A/LCOfLvriip.图3.2系统原理图键盘输入电路单片机系统中,常用的键盘设计方式有独立式键盘和矩阵式键盘两种。独立式键盘是指每个I/O输入端口对应一个物理按键的键盘。其优点是键盘结构简单,按键识别容易;缺点是占用I/O口较多。矩阵式键盘适合用在按键数量较多的系统中,它将I/O口分
35、别引出线,并分为行线和列线,在每一个行线和列线相交的地方放置一个按键,这种方案下,一个占用7个I/O端口的4刈的行列结构可以构成一个12键的键盘。显然这种方式与独立式键盘相比节省了很多i/o端口,但算法相对复杂13。常用的矩阵式键盘扫描原理有反转和行/列扫描法。本设计中采用行扫描法,具体原理将在软件部分介绍。键盘功能及其引脚接法如图4.2所示:图3.3键盘输入原理图复位电路单片机复位可以让整个系统单片机芯片本身从一个确定的初始状态开始工作。在单片机刚刚上电时、断电后和执行出错,复位都是必须的操作。RST为高电平并保持一定时间后,单片机进入复位状态,在此期间,P0口呈现高阻态,P1P3口均呈现高
36、电平,同时PSEN言号无效、ALE为高电平。本设计在最基础的复位电路基础上,添加了一个按键以实现手动复位功能。在刚接通电源时电容C1两端电势差很小,电阻R1上的电压接近电源电压,这会使得RST为高电平,接着,电容进入充电过程,RST端电势步降低,当RS础的电压表现为低电平时,CPU脱离复位状态,只要电容C3大小适当,就能够保证RST的高电平有效持续时间多于24个振荡周期,此时单片机就能够实现可靠的复位。手动复位按键的加入,使得死机时有了可靠的复位方法。在按下复位键后,电容C3将会经由R6进行放电,此过程结束后,RST端的电位就会由两个电阻的分压情况决定140复位电路的原理如下图所示:R1rj7
37、-C3,OkDit.*R6QO1I图3.4复位电路原理图晶振电路将晶体振荡器按下图所示方式连接到XTAL1引脚和XTAL2引脚上,就构成了晶振电路。图小是一种电容二点式振荡器,振荡信号的频率取决于晶振频率和两个电容的容量,其中,晶振频率又是主要因素。一般而言,晶振频率的取值围在033MH公问,两个电容的取值围在530pF之间。根据实际情况,本设计中采用24MHz故系统的外部晶振。电容取值为22p,5。晶振电路原理图如图4.4所示:C1_L22pF_l_一口X1C2CRYSTAL22pF图3.5晶振电路原理图显示电路为了使密码锁的显示效果使人满意、电路简洁,此处使用了LCD1602乍为显示模块的
38、核心,而不是普通的数码管。接通电源后显示器处于等待开锁状态,提示用户输入密码,当用户需要开锁时,可以使用数字键09输入密码,每次按键都会把处理结果反馈到屏幕上。当密码输入结束后,按下确认键,系统将会把输入的密码和事先保存的对比,若正确,LCD将显示Unlocksucceed!,电子密码锁被打开;否则,LCD显示屏会显示WrongPassword,UnlockFailed!,电子密码锁保持原状态在密码修改的过程中,LCD显示屏会显示更为多样的信息:、OldPassword:、WrongPassword,MatchFailed!、EnterNewPW:、ThePasswordmustbe6bits
39、!、ThePasswordhaschanged!等等,电子锁当前所处的状态一目了然。具显示部分及引脚接口如图4.5所示:FT IlfADUFC 1/A0IFO 2MD? FC.3/AD3 FCRMM FO.5/AD5LCD1LVOJEL图3.6显示电路原理图报警、解锁提示电路本设计报警部分电路由蜂鸣器实现。当输入密码并确认后,单片机的P3.1引脚将输出特定频率的方波,则蜂鸣器被导通而发出声音。当密码错误时,发出的声音为短促的3声嘟,音高相同;当密码正确时,发出的声音为一小段乐声。当解锁成功时,接于P3.0端口的绿色LED灯将会亮起,提示锁已打开。在实际应用的电子密码锁产品中,可以把其替换为电磁
40、继电器的输入,原理仍是不变。报警、解锁提示部分电路原理图如图4.6所示图中led接P3.0口,air接P3.1口图3.7报警、解锁提示电路原理图系统软件部分设计本设计的软件部分由主程序、按键检测子程序、LCD显示子程序、密码修改子程序、报警声音子程序等组成。主程序流程图如图5.1所示为主程序流程图,系统上电后将进行初始化,然后开始进行键盘扫描,此时在键盘上输入密码,若密码正确,则开锁成功,播放成功提示音,密码错误则会提示,包括屏幕画面及声音。初始化键盘扫描开锁程序I等待簟置II图3.8主程序流程图按键检测子程序设计本设计中的的密码输入使用了4*3矩阵键盘,键盘上除数字键09以外还有2个功能键。
41、该矩阵键盘的按键检测采用行扫描法,具体步骤如下:错误!令第一行为低电平,其余行和列为高电平,即给P1口赋值0 xFE。错误!延时520msg次进彳T检测,实现按键消抖。错误!读P1口的值,判断当前是否有键被按下。若无键按下,其值仍应为0 xFE。若第一个按键按下,则第一列会被拉低,即P1口的读取值应为0 xEE,即0 xEE为第一行第一列按键的键码。同理可得第一行另两个按键的键码为0 xDE0 xBE16。用同样的方法,令其它行为低电平,经上述3个步骤也可判断其它按键是否按下。根据上述过程,该矩阵键盘的按键检测扫描程序设计如下:ucharcoderowScan=0 xFE,0 xFD,0 xF
42、B,0 xF7;/行扫描码ucharcodekey12=0 xEE,0 xDE,0 xBE,0 xED,0 xDD,0 xBD,0 xEB,0 xDB,0 xBB,0 xE7,0 xD7,0 xB7/123456789*0#ucharcodekeyValue=”123456789*0#;#defineKEYP1/=键盘扫描函数=ucharkeyScan/返回值:有键按下时获得的键盘值1234567890*#,无键按下时返回字符$uchark=0,flag=0;fork=0;kKEY=rowScank;/逐行扫描delay;/按键扫描ifvKEY!=rowScankuchari=0;fori=0
43、;iif/比较键码flag=1;break;while;/等待按键释放ifreturnkeyValuei;return$;LCD显示子程序设计LCD显示是本设计的核心模块之一,为了能在屏幕上总能显示恰当的信息,本设计中LCD显示子程序的功能,应为保障单个字符、字符串的显示,为主程序或其他子程序留出接口,以便需要时可以很容易调用。本着上述目的,LCD显示子程序的结构如下图所示,它的目的是提供字符与字符串的显示函数。不同层次的函数之间是被调用的关系。写数据函数LCDWriteData写指令函数LCDWriteCmdLCD坐标转换函数LCDPosition()在指定位置写入数据函数wr1teChar
44、()写字符串函数writeString()图3.9显示模块结构图各函数原型及参数介绍如下:错误!voidLCDWriteData/写数据函数错误!voidLCDWriteCmd/写指令函数错误!voidLCDPositionucharrow,ucharcolumn/将坐标转换为LCD的坐标参数:row为所在行数1或2,column为在行中的位置015错误!在指定位置写数据函数voidwriteChar参数:row指定行,column指定列位置,c为待写入的数据。错误!写字符串函数voidwriteString参数:row表示行,column1表示第一行起始地址,column2表示下一行起始地址
45、,均从1开始。错误!voidmoveString/移动字符串函数错误!voidLCDInit/液晶初始化函数LCDWriteCmd;/设置16*2显示,5*7点阵,8位数据接口delay;LCDWAteCmd;/清屏delay;LCDWriteCmd;/地址力口一,整屏右移delay;LCDWriteCmd;/开显示,光标闪烁,显示光标密码修改子程序设计,这意味用户得以随时在本设计中,密码修改功能是使用外部中断触发的进行密码的修改,十分方便。因此,密码修改子程序同时也是外部中断0服务程序。若要修改密码,须先输入旧密码密码,密码验证通过后方可设置新密码,新密报警声音子程序设计本程序的设计类似于电
46、子音乐盒,可以实现17七个音符的各种组合,理论上可以播放任意音乐,但音阶始终位于1个八度。音调取决于物体振动的频率,频率越高,所发声音音调也就越高。本程序就是利用单片机产生不同频率的方波,来驱动蜂鸣器发出不同音调的声音。设计中,系统使用了定时中断的方法。这里以起中的音阶1为例说明,其初值设为0 xF720,对应十进制数63264,则计数65536-63264=2272次后溢出进入中断,若单片机外接24MH振,则计数一次对应0.5仙s,即计数1136仙s后溢出。一个音阶周期为1136仙s2=2272小,对应频率为1/2272心=440Hz。次频率为音阶1所对应的频率值。其他频率对应的计数初值可按
47、照此方法推算出来,具体见表3.117。表3.1不同音阶所对应频率、计数初值音阶1234567频率/Hz440494523587659698784计数初值0 xF7200 xF8880 xFC440 xF9590 xFA130 xFA670 xFB04由此,可得到报警声音模块的代码如下:sbitBeep=P3A1;ucharcodescalesH口=0 xf7,0 xf8,0 xfc,0 xf9,0 xfa,0 xfa,0 xfb;/7个音符所对应的计数器初值ucharcodescalesL口=0 x20,0 x88,0 x44,0 x59,0 x13,0 x67,0 x04;ucharnote
48、;/初始化函数voidAlarmInit/T/C0 工作在方式一TMOD=0 x01;ET0=1;/开定时器中断EA=1;/开总中断TRO=0;/关闭定时器0)/播放声音voidplay(uinti;switch(case0:note=6;fori=0;i(TR0=1;delay;TRO=0;delay;)break;case1:fornote=2;note(TR0=1;delay;TR0=0;delay;break;Beep=1;/定时器0的中断服务函数voidtime0interrupt1TH0=scalesHnote;TL0=scalesLnote;Beep=Beep;4仿真调试Prot
49、eusISIS简介本设计硬件原理图的绘制使用了Proteus软件,Proteus软件是一款电路设计与仿真软件,它基于VS眼术,相比其他软件有着诸多优点:它支持仿真的单片机型号很多,像MCS-5保列、PIC系列等均可,同时集成了多样的单片机外围电路,比如键盘、LEDLC劳等。Proteus软件使我们可以比较容易地获得一个功能多、易使用的单片机仿真平台。软件调试Keil软件简介本设计的软件编译环境使用了KeiluVision4,这是一款基于C语言的51系列兼容单片机软件开发系统。相比于汇编而言,C语言无论是在在功能上、结构性上,还是在可读性、可维护性上都有着巨大的优势,使人们得以编制更加复杂、精致
50、的程序。除了语言优势,KeilC51软件生成的目标代码很紧凑,这加快了运行速度,提高了效率。使用者可以用任意编辑器编写代码源文件,添加到C51及A51编译器中就可以编译生成OBJC件,然后连接定位库文件后生成ABSdABSfc件经过OH5的转换就可以得到标准的He双件,可以使用仿真器直接对目标进行调试18o程序调试在Keil软件上进行程序的调试,首先新建工程,在空白的代码编辑页输入程序,保存后进行程序编译,若报错修改报错处。经反复修改后,程序会提示编译成功,编译成功的画面如图4.1所示:图4.1Keil编译成功Keil中的程序需生成51单片机可执行的HE双件,需要对“目标1”的属性进行如图4.
51、2和图4.3所示的操作图4.2目标1的选项1大目标目isi嘴既hiM图4.3目标1的选项2Proteus仿真在Proteus中打开前面所制作的工程,双击单片机芯片,在其属性中填入上部所生成的E-lock.hex文件,如图6.4所示:图4.4 AT89C51的属性点击开始仿真按钮后,就可以看到最终的制作成果了。初始状态如图6.5所示。4LCP1uuirflL0 零FVEIPl# Frocrrz:? qEi,门 ITITTFOjVTO1FT图4.5仿真初始状态现在就可以逐一实现电子密码锁的各种功能。以下是电子密码锁各种功能实现的具体仿真过程:1本电子密码锁在密码输入过程中,每输入一位密码,都会在显
52、示屏上反应出来,仿真效果图如图6.6所示。图4.6输入密码时的仿真图2本设计设定的初始密码为111222,当在4*3矩阵键盘上输入111222并按卜确认键后,显示屏上将显示UnlockSucceed,同时播放音乐,实现开锁功能。在本设计的仿真中使用发光二极管代替实际产品中的电磁锁,以发光二极管D1的发光代表锁打开。密码输入正确,实现开锁的仿真图如图6.7。-ydi.山型外 .图4.7密码正确实现开锁的仿真图(3)当密码输入有误时,显示屏上将会显示WrongPassword,UnlockFailed!,同时播放短促的报警声,锁保持关闭,发光二极管D体发光。密码输入错误,锁不打开的仿真图如图6.8
53、所示。D ILCOH LMQi L L ECigiRF 况 .5m.图4.8密码错误不能开锁的仿真图(4)电子密码锁的密码可修改。用户确认修改后会提示用户输入旧密码,当旧密码输入正确并验证通过后,即可设置新的密码。按下修改密码键后显示屏的显示情况如图6.9所示。ChangePassword?V/H)弘已最赠MCD史臣UJ口口口门门口图4.9询问用户是否要修改图4.10确认修改后画面5如果旧密码输入错误则不能进行新密码的设置,显示屏上会显示WrongPassword,MatchFailed!并于3秒后要求重新输入。显示屏显示如图6.11所示。图4.11验证原密码失败的仿真图6只有当输入的旧密码正确时,方可输入新密码,显示如图6.12所示图4.12新密码输入界面(7)只有当输入新的密码是6位时,电子密码锁的密码才会更新,否则发出错误警告,要求重新输入,显示图如图6.13所示。图4.13新密码不足6位的提示(8)密码若成功更新,显示屏将显示提示信息Thepasswordhaschanged!。如图6.14所示。图4.14新密码设定成攻的提示5结论进行本次毕业设计的过程中,通过网络与图书馆查阅了诸多资料,在老师的提点下,结合实际,制作了一款功能较为齐全的电子密码锁,实现了报警、密码修改等核心设计。本设
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 吉首大学《分布式与并行计算》2021-2022学年期末试卷
- 《机械设计基础》期末考试试卷九
- 吉林艺术学院《数字交互艺术概论》2021-2022学年第一学期期末试卷
- 2024年供销合同范本超市
- 吉林师范大学《中国画论》2021-2022学年第一学期期末试卷
- 吉林师范大学《虚拟现实引擎技术》2021-2022学年期末试卷
- 2024年大棚蔬菜苗售卖合同范本
- 签字离婚后续签协议书范文模板
- 2022年江西省公务员录用考试《申论》真题(行政执法类卷)及答案解析
- 2022 年广东省公务员录用考试《申论》真题(县级卷)及答案解析
- 各专业文件准备目录-内分泌科药物临床试验机构GCP SOP
- 2024年物业管理师(中级四级)考试题库大全-上(单选、多选题)
- 2024年人教部编版语文六年级上册期中测试题及答案(一)
- 《江西数学三年级上学期数学期中试卷》
- 2024年10月福建三明宁化县城市管理和综合执法局公开招聘非在编协管员11人笔试历年典型考点(频考点试卷)解题思路附带答案详解
- 2024年环保知识生态建设知识竞赛-环保基础知识竞赛考试近5年真题附答案
- 2024中国邮政集团河北省分公司春季校园招聘高频难、易错点500题模拟试题附带答案详解
- 部编版历史高一上学期期中试卷与参考答案(2024-2025学年)
- 人教版(2019)必修 第三册Unit 5 The value of money 单元集体备课教案
- 数据备份与恢复应急预案
- 大队委竞选课件
评论
0/150
提交评论