电子密码锁设计 【毕业设计+开题报告+文献综述】

电子密码锁设计 【毕业设计+开题报告+文献综述】

ID:438290

大小:813.54 KB

页数:54页

时间:2017-08-02

上传者:U-944
电子密码锁设计 【毕业设计+开题报告+文献综述】_第1页
电子密码锁设计 【毕业设计+开题报告+文献综述】_第2页
电子密码锁设计 【毕业设计+开题报告+文献综述】_第3页
电子密码锁设计 【毕业设计+开题报告+文献综述】_第4页
电子密码锁设计 【毕业设计+开题报告+文献综述】_第5页
资源描述:

《电子密码锁设计 【毕业设计+开题报告+文献综述】》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

本科毕业设计开题报告电气工程及其自动化电子密码锁设计一、综述本课题国内外研究动态,说明选题的依据和意义目前,最常用的锁是20世纪50年代意大利人设计的机械锁,其机构简单、使用方便、价格便宜。但在使用中暴露了很多缺点:一是机械锁是靠金属制成的钥匙上的不同齿形与锁芯的配合来工作的。据统计,每4000把锁中就有两把锁的钥匙齿牙相同或类似,故安全性低。二是钥匙一旦丢失,无论谁捡到都可以打开,三是机械锁的材料大多为黄铜,质地较软,容易损坏。四是机械锁钥匙易于复制,不适于诸如宾馆等公共场所使用。由于人们对锁的安全性,方便性等性能有更高的要求,许多智能锁(如指纹辨别、IC卡识别)也相继问世,但这类产品的特点是针对特定指纹或有效卡,但能适用于保密要求高仅供别人使用的箱、柜、房间,其成本一般较高,在一定程度上限制了这类产品的普及和推广。在日常生活和工作中,住宅与部门的安全防范、单位的文件档案、财务报表以及一些个人资料的保存多以加锁的办法来解决,而钥匙丢失安全性即大打折扣。而且,由于传统的机械锁由于其构造的简单,被撬的事件屡见不鲜,因此也存在着很多安全隐患。随着科学技术的不断发展,人们对日常生活中的安全性的要求不断提高,用密码代替钥匙的密码锁应运而生。密码锁具有安全性高、成本低、功耗低、易操作等优点。在安全技术领域,具有防盗报警功能的电子密码锁逐渐代替传统的机械式密码锁,克服了机械式密码锁密码量少、安全性能差的缺点,使密码锁无论在技术上还是在性能上都大大提高一步。随着大规模集成电路技术的发展,特别是单片机的问世,出现了带微处理器的智能电子密码锁,它除了具有电子密码锁的功能外,还引入了智能化管理、专家分析系统等功能,从而使密码锁具有很高的安全性、可靠性,应用日益广泛。14 随着人们对安全的重视和科技的发展,许多电子智能锁(指纹识别、IC卡辨认)已在国内外相继面世。但是这些产品的特点是针对特定的指纹和有效卡,只能适用于保密要求的箱、柜、门等。而且指纹识别器若在公共场所使用存在容易机械损坏,IC卡还存在容易丢失、损坏等特点。而且,其成本较高,一定程度上限制了这类产品的普及和推广。综上所述,鉴于目前的技术水平与市场的接收程度,电子密码锁是这类电子防盗产品的主流。电子锁由于其保密性高,使用灵活性好,安全系数高,受到了广大用户的信赖。当今电子密码锁发展已经到了非常高的境界,由于电子元件特别是单片机应用在这几年得到空前发展,无论功能性,稳定性都比较全面,在保密方面已做到人眼识别,指纹识别,人声识别,基本上电影上有的现实也有。在国外发展比较早,所以应用也比较广泛,主要在家庭装较贵重地方,银行,保险柜等应用较多,在国内这方面发展也较快,不管自己开发或是引进都有,在重要地方应用也较多,由于价钱比普通弹子锁较贵,早几年应用较少,现在越来越普及到平常化,未来的发展也会越来越被大众采用,由于它的功能、安全是弹子锁无法相比的。发展前境是非常大的。电子密码锁主要是基于单片机的一个密码锁,通过键盘、LED等人机交互模块实现对密码锁的上锁、开锁以及非法输入报警等功能。本设计是基于AT89C51单片机为主控芯片,带有一个密码输入键盘、外围时钟复位电路、电磁阀等实现电子锁的锁闭和打开。该电子密码锁结构简单,成本低,安全性高,易于主人随时更新密码,在一定程度上具有较大的市场竞争力。电子密码锁是一种通过密码输入来控制电路或是芯片工作,从而控制机械开关的闭合,完成开锁、闭锁任务的电子产品。它的种类很多,有简易的电路产品,也有基于芯片的性价比较高的产品。现在应用较广的电子密码锁是以芯片为核心,通过编程来实现的。其性能和安全性已大大超过了机械锁,特点如下:1.保密性好,编码量多,远远大于弹子锁。随机开锁成功率几乎为零。2.密码可变。用户可以经常更改密码,防止密码被盗,同时也可以避免因人员的更替而使锁的密级下降。3.误码输入保护。当输入密码多次错误时,报警系统自动启动。4.电子密码锁操作简单易行,一学即会。14 随着人们生活水平的提高,电子密码防盗锁作为防盗卫士的作用日趋重要。电子密码防盗锁用密码代替钥匙,不但省去了佩戴钥匙的烦恼,也从根本上解决了普通锁保密性差的缺点。根据国外的统计资料显示,装有电子防盗装置的商业区或居民区盗窃犯罪率平均下降30%左右。目前,西方发达国家已经大量地应用这种电子密码锁,在我国的也正在逐步发展过程中,具有良好的发展前景。二、研究的基本内容,拟解决的主要问题:1、实现密码的输入功能2、实现密码的清除功能3、实现密码的设置功能4、实现开锁功能5、实现报警功能6、软硬件系统的结合与调试三、研究步骤、方法及措施:(一)制定具体实施计划(二)硬件部分1、画出总体硬件结构图2、完成电源部分电路图3、LED显示部分设计4、导入编好的程序演示、调试(三)软件部分1、总体设计画出流程图,包括对程序的初始化、扫描以及各个功能的实现等等。2、详细设计对各个部分的设计,各个功能的实现进行设计。3、编程阶段进行C语言编程。4、测试阶段对系统进行必要的测试,仿真调试。(四)总体电路的组合和总的调试14 (五)攥写毕业论文四、参考文献[1]石文轩,宋微.基于单片机MCS—51的智能密码锁设计[J].武汉工程职业技术学院学报,2004(1):23~25.[2]祖龙起,刘仁杰.一种新型可编程密码锁[J].大连轻工业学院院报,2002(1):14~15.[3]康华光.电子技术基础[M].第四版.北京:高等教育出版社,1998.[4]梁宗善.新型集成块应用[M].武汉:华中理工大出版社,2004.[5]李光飞,楼然苗.51系列单片机[M].北京:北京航空航天大学出版社,2003.[6]祖龙起,刘仁杰,孙乃凌.一种新颖的电子密码锁[J].电子世界,2001(1):18~19.[7]李华.MSC-51系统单片机使用接口技术[M].北京:北京航空航天大学出版社,1993.[8]何立民.单片机应用技术选编[M].北京:北京航空航天大学出版社,1998.[9]潘永维.新编单片机原理与应用[M].西安:西安电子科技大学出版社,2003.[10]李秀忠.单片机应用技术[M].北京:人民邮电出版社,2007.[11]周润景,张丽娜.基于PROTUES的电路及单片机设计与仿真[M].北京:北京航空航天大学出版社,2010.[12]唐继贤.51单片机工程应用实例[M].北京:北京航空航天大学出版社,2009.[13]陈志旺,陈志茹,阎巍山.51系列单片机系统设计与实践[M].北京:电子工业出版社,2010.[14]徐惠民,安德宁.单片微型计算机原理接口与应用[M].北京:北京邮电大学出版社,1996.[15]JONATHAND.NASH,DOUGLASR.CALDWELL.AThermocoupleProbeforHigh-SpeedTemperatureMeasurementintheOcean[M].NewYork:McGraw-HillBookCompany,1987.[16]Jacobmillman,ArvinGrabel.Microelectronics[M].NewYork:McGraw-HillBookCompany,1987.14 毕业设计文献综述电气工程及其自动化电子密码锁设计1.前言随着人们生活水平的提高,如何在各个领域实现防盗这一问题也变得尤其的突出,传统的机械锁由于其构造简单,被撬的事件屡见不鲜,同时,机械锁一般配有金属钥匙,带起来太重,万一丢失了,锁可能也就没用了。电子密码锁保密性高,密码泄露了,换个密码,锁照样能用;使用灵活性好,万一忘记密码,可以通过功能键,给用户提示密码;安全系数高,能够防止不法分子多次试探密码;性价比好,因此,密码锁受到了广大用户的青睐。电子密码锁是一种通过密码输入来控制电路或是芯片工作,从而控制机械开关的闭合,完成开锁、闭锁任务的电子产品。它的种类很多,有简易的电路产品,也有基于芯片的性价比较高的产品。现在应用较广的电子密码锁是以芯片为核心,通过编程来实现的。其性能和安全性已大大超过了机械锁,主要特点如下:1.保密性好,编程量多,远远大于子弹锁。随机开锁的成功率几乎为零。2.密码可变。用户可以经常更改密码,防止密码被盗,同时也可以避免因人员的更而使锁的保密性下降。3.误码输入保护。当输入密码多次错误时,报警系统自动启动,防止试探密码。从目前的技术水平和市场认可程度看,使用最为广泛的事键盘式电子密码锁,该产品主要应用于保险箱、保险柜和金矿,还有一部分应用于保险箱和运钞车等领域。键盘式电子密码在键盘上输入,与打电话差不多,因而易于掌握,其突出优点是“密码”是记在被授权人脑子里的数字和字符,既准确又可靠,不会丢失(除了忘记),难以被窃(除非自己泄露)。但是密码不能太简单,太简单了就容易被他人在键盘上试探出来,或者可能被旁观者窥测出来,造成保密性不足。当然,密码也不能太过复杂,太复杂了自己都记不清了,或者输入密码操作成功率下降,造成使用不便。另外,在输入密码过程中,为了限制试探密码的企图,通常输入错误码若干次或若干时间内输入不正确,即“封锁”键盘,不再接受输入操作。总之,尽管新式电子防盗设备层出不穷,但键盘式电子密码锁不仅在市场上居于主流地位,而且,还经常作为其他类型电子防盗锁的辅助输入手段[1]。14 2.密码锁设计方案2.1主控部分的选择方案一:采用数字电路控制用以74LS112双JK触发器构成的数字逻辑电路作为密码锁的核心控制,将密码保存在JK触发器中,与输入密码通过比较器比较,判断结果是否相符合。采用数字电路设计的方案好处就是设计简单,但控制的准确性和灵活性差。方案二:采用以单片机为核心的控制方案由于单片机的种类繁多,各种型号都有其一定的应用环境,因此在选用时要多加比较,合理选择,以期获得最佳的性价比。一般来说在选取单片机时从下面几个方面考虑:性能、储存器、运行速度、I/O口、定时/计数器、串行接口、模拟电路功能、工作电压、功耗、封装形式、抗干扰性、保密性。除了以上的一些,还有一些基本的,比如:中断源的数量和优先级、工作温度范围、有没有低电压检测功能、单片机内有无时钟振荡器、有无上电复位功能等[4]。选用单片机作为系统的核心部件,实现控制与处理的功能。单片机具有资源丰富、速度快、编程容易等优点。利用单片机内部的随机存储器(RAM)和只读储存器(ROM)及其引脚资源,键盘输入等实现数据的处理传输和功能显示,基本上能实现设计指标,而且单片机编程设计灵活、IO端口丰富、控制的准确性高,不但能实现基本的密码锁功能,还能添加调电存储、声光提示甚至添加遥控控制等附加功能。此外,单片机方案有较大的活动空间,不但能实现所要求的功能,还能在很大的程度上扩展功能,而且还可以方便的对系统进行升级。由于单片机的种类繁多,各种型号都有其一定的应用环境,因此在选用时要多加比较,合理选择,以期获得最佳的性价比。一般来说在选取单片机时从下面几个方面考虑:性能、储存器、运行速度、I/O口、定时/计数器、串行接口、模拟电路功能、工作电压、功耗、封装形式、抗干扰性、保密性。除了以上的一些,还有一些节本的,比如:中断源的数量和优先级、工作温度范围、有没有低电压检测功能、单片机内有无时钟振荡器、有无上电复位功能等[4]。因此,综合考虑,本设计采用方案二,用单片机设计主控电路。本设计选用AT89C51单片机做为主控芯片。2.2密码输入方式的选择14 密码输入的方式有很多种,本次设计选用的是较为简单,且现容易,成本较低的矩阵盘输入识别的密码输入方式。矩阵键盘输入识别的原理:由各按键组成的矩阵键盘每条行线和列线都对应一条I/O口线,键位设在行线和列西安的交叉点,当一个键按下就会有某一条行线与某一条列线接触,只要确定接触的是哪两条,即哪两个I/O口线,就可以确定哪一个键被触动[5]。通过不断读行线口线,或者中断方式出发键位扫描。当发现有键按下,将列线逐一置低,其他列线置高,读行线口线。当某条列线置低式,某条行线也被拉低,则确定这两条线的交点处的按钮被按下。每个键都可通过程序赋予功能,从而完成密码识别。3.对单片机的系统介绍3.1单片机的概念及特点单片机,亦称单片机微电脑或单片机微型计算机。它把中央处理器(CPU)、随机存取存储器(RAM)、只读存储器(ROM)、输入/输出端口(I/O)等主要计算机功能部件都集成在一块集成电路芯片上的微型计算机[7]。计算机的产生加快了人类改造世界的步伐,但是它毕竟体积大。微计算机(单片机)在这种情况下酒诞生了,它为我门改变了什么?纵观我们现在生活的各个领域,从导弹的导航装置,到飞机上各种仪表的控制,从计算机的网络通讯与数据传输,到工业自动化过程的实时控制和数据处理,以及我们生活中广泛使用的各种智能IC卡、电子宠物等,这些都离不开单片机。以前没有单片机时,这些东西也能做,但是只能使用复杂的的模拟电路,然而这样做出来的产品不仅体积大,而且成本高,并且由于长期使用,元器件不断老化,控制的精度自然也会达不到标准。在单片机产生后,我们就将控制这些东西变为智能化了,我们只需要在单片机外围接一点简单的借口电路,核心部分只是由人为的写入程序来完成。这样产品的体积变小了,成本也降低了,长期使用也不会担心精度达不到了,且容易升级改善。3.2本设计采用的AT89C51单片机的介绍AT89C51是一个低功耗,高性能CMOS8位单片机,片内含4KBytesISP(In-systemprogrammable)的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEI公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISPFlash存储单元,功能强大的微型计算机的AT89C51可为许多嵌入式控制应用系统提供高性价比的解决方案。AT89C51具有如下特点:40个引脚,4KBytesFlash片内程序储存器,128Bytes的随机存取数据存储器(RAM),32个外部双向输入/输出(I/O)14 口,5个中断优先级2层中断嵌套中断,2个16位可编程定时计数器,2个全双工串行通信口,看门狗(WDT)电路,片内时钟振荡器[12]。此外,AT89C51设计和配置了振荡频率可为0HZ并可通过软件设置省电模式。空闲模式下,CPU暂停工作,而RAM定时计数器,串行口,外中断系统可继续工作,掉电模式冻结振荡器而保存RAM的数据,停止芯片其它功能直至外中断激活或硬件复位。同时该芯片还具有PDIP、TQFP和PLCC等三种封装形式,以求不同产品的需求。4.总结通过这段时间,我对自己所做的毕业设计——电子密码锁设计,有了一定的理解和认识。期间,我查阅了一定的资料,做了一定的分析和思考。了解了密码锁的发展过程,研究现状以及发展前景。同时,也对设计中主要用到的AT89C51单片机进行了研究,对其性能、储存器、运行速度、I/O口、定时/计数器、串行接口等方面做了了解。通过查阅文献和资料,我感觉有很大的收获。首先,深刻的认识到光学习课本知识是远远不够的,我们还要多了解和专业相关的一些课外知识,和一些实际应用领域的现状,要不断从各个方面来开阔自己的视野并多做思考。第二,要重视理论和实践相结合,注重自己的实际分析、操作能力。总之,通过参考文献和资料,我对自己的毕业设计——电子密码锁有了初步的理解和构思,为下一步做毕业论文打下了一定的基础。[参考文献][1]石文轩,宋微.基于单片机MCS—51的智能密码锁设计[J].武汉工程职业技术学院学报,2004(1):23~25.[2]祖龙起,刘仁杰.一种新型可编程密码锁[J].大连轻工业学院院报,2002(1):14~15.[3]康华光.电子技术基础[M].第四版.北京:高等教育出版社,1998.[4]梁宗善.新型集成块应用[M].武汉:华中理工大出版社,2004.[5]李光飞,楼然苗.51系列单片机[M].北京:北京航空航天大学出版社,2003.[6]祖龙起,刘仁杰,孙乃凌.一种新颖的电子密码锁[J].电子世界,2001(1):18~19.[7]李华.MSC-51系统单片机使用接口技术[M].北京:北京航空航天大学出版社,1993.[8]何立民.单片机应用技术选编[M].北京:北京航空航天大学出版社,1998.[9]潘永维.新编单片机原理与应用[M].西安:西安电子科技大学出版社,2003.14 [10]李秀忠.单片机应用技术[M].北京:人民邮电出版社,2007.[11]周润景,张丽娜.基于PROTUES的电路及单片机设计与仿真[M].北京:北京航空航天大学出版社,2010.[12]唐继贤.51单片机工程应用实例[M].北京:北京航空航天大学出版社,2009.[13]陈志旺,陈志茹,阎巍山.51系列单片机系统设计与实践[M].北京:电子工业出版社,2010.[14]徐惠民,安德宁.单片微型计算机原理接口与应用[M].北京:北京邮电大学出版社,1996.[15]JONATHAND.NASH,DOUGLASR.CALDWELL.AThermocoupleProbeforHigh-SpeedTemperatureMeasurementintheOcean[M].NewYork:McGraw-HillBookCompany,1987.[16]Jacobmillman,ArvinGrabel.Microelectronics[M].NewYork:McGraw-HillBookCompany,1987.14 本科毕业设计电子密码锁设计14 摘要随着人们生活水平的不断提高,对生活质量的要求也有很大程度上的提高,各种技术和行业都在迅猛发展,防盗也成为了当今社会一个很重要的话题。在这样的社会大背景下,电子密码锁出现在我们的日常生活中,并且在技术和功能方面都在不断的发展。单片机的出现,在很大程度上满足了要求,它不但可以实现传统电子密码锁控制系统的功能,也引入了专家分析系统、红外线测控、智能化管理等一系列功能,使得密码锁控制系统更加的灵活,更加的安全可靠。电子密码锁是基于电子、计算机、数字密码等技术组合而成的机电一体化产品。本设计是以AT89C51单片机为核心,利用PROTUES软件仿真,由单片机系统、LED显示、矩阵键盘、复位电路、晶振电路以及报警系统组合而成。其中,矩阵键盘包括数字键、确认键、修改密码键、复位键和删除键,LED显示由6位数码管组成。在单片机运行的过程中,会接受到输入的密码,并将接受到的数据与储存在单片机内部EEPROM中的密码进行比较,如果输入的密码正确,就将开锁;如果输入的密码不正确,则可以重新输入密码。在密码输入正确的情况下,也可以对密码锁重新设置密码。此密码锁的基本功能包括输入密码、清除密码、修改密码、错误报警。在PROTUES仿真平台,能基本实现这些功能。本次设计的密码锁具有安全性高、使用方便、容易操作、功耗低、成本低的优点。关键词:AT89C51;电子密码锁;仿真14 AbstractWiththedevelopmentofpeople’slife,thequalityoflifeisimproved,technologiesandindustriesaredevelopinginrapidly,securityhasbecomeaveryimportanttopicofmodernsociety.Inthebackground,electronicpassword-lockshaveusedinourdailylife,anddevelopquicklyinthetechnologyandfeature.TheappearanceofSCM,meetingtherequirementsinlargepart,itcannotonlytraditionalelectroniclockcontrolsystemfunctions,butalsointroducedtheexpertanalysissystem,infraredmeasurementandcontrol,intelligencemanagementandotherfunctions,makingthesystemmoreflexible,moresecureandreliable.Electronicpassword-lockisaproductwhichbasedonmechanicalandelectricalintegration,containofthedigitalencryptiontechnology,electronictechnology,computertechnology.ThedesignisbasedonAT89C51microcontrollerasthecore,andapproachPROTUESsoftwaretofinishemulation.ItcontainsoftheSCMsystem,LEDdisplay,matrixkeyboard,resetcircuit,crystaloscillatorcircuit.Thematrixkeyboardcontainsnumberkeysandtheenterkey,thechangepasswordbutton,theresetbutton,thedeletekey,uses6-bitdigitaltubestodisplaytheLED.SCMwillaccepttypedpasswords,andstorethepasswordintheEEPROMtofinishthecomparison,ifthepasswordiscorrect,itiswillbelock;Ifyouenteranincorrectpassword,youcanre-enterthepassword.Intheadvanceofenteringthecorrectpassword,youalsocanresetthepasswordonthepasswordlock.Thebasicfeaturesofpassword-lockincludepassword,clearingpassword,changingpasswordandanerroralarm.IntheplatformofPROTUES,itisabletoachievethesefunctions.Theelectronicpassword-lockhastheadvantagesofsafe,easytouse,easytooperate,lowpowerconsumptionandlowcost.Keywords:AT89C51;electronicpassword-lock;simulation14 目录第1章绪论11.1选题背景11.2电子密码锁的概述11.3电子密码锁的发展趋势11.4本设计所要实现的目标2第2章单片机的相关知识32.1单片机的简介及其发展史32.2单片机的特点32.3单片机的发展前景42.4主控芯片AT89C51性能介绍52.5AT89C51引脚功能说明7第3章系统的硬件构成93.1密码锁总体设计93.2电路总体构成93.2.1电源输入部分103.2.2键盘输入部分113.2.3晶振部分123.2.4复位部位123.2.5报警部分133.2.6开锁部分13第4章系统的软件设计154.1主程序部分的介绍154.1.1主程序的流程图154.1.2主程序的分析164.2子程序部分的分析184.2.1键盘扫描子程序184.2.2密码比较和报警子程序2014 4.2.3密码设置子程序204.3子程序流程图214.3.1键盘扫描流程图214.3.2密码比较和报警流程图224.3.3密码设置流程图234.3.4开锁流程图24第5章系统的仿真与研究255.1关于PROTUES仿真软件以及KEILUVISION2软件的介绍255.2系统仿真及其结果26小结28致谢29参考文献30附录3114 第1章绪论1.1选题背景当今时代,随着人们生活水平的不断提高,对于安全技术防范领域也有了更高的要求。同时,为了克服机械式密码控制的密码量少、安全性能差的缺点,具有防盗报警功能的电子密码控制系统已经逐渐代替了传统的机械式密码控制系统,使得电子密码锁控制系统无论在性能上还是在技术上都有了一步大大的提高。在单片机的出现和不断广泛使用的情况下,带微处理器的智能密码控制系统也相继问世,它不但可以实现传统电子密码锁控制系统的功能,也引入了专家分析系统、红外线测控、智能化管理等一系列功能,使得密码锁控制系统更加的灵活,更加的安全可靠,使用也日益广泛普遍。1.2.电子密码锁的概述电子密码锁的种类很多,有简易的机械密码锁,有靠最简单的模拟电子开关来实现的密码锁,也有靠基于EDA来实现的密码锁。另外,目前使用最为广泛的是基于单片的密码锁。电子密码锁的控制是通过密码输入芯片或者电路来工作的,来控制开关的闭合,完成开锁、闭锁、修改密码等功能。在安全性和性能方面,相较机械锁,已经有了很多的突破和进步,特点如下:(1)使用灵活性好,不必一定要通过钥匙来开锁。(2)没有零件的磨损,只需通过程序来控制,寿命较长。(3)操作简单,容易学会。(4)保密性好,随机开锁的机会很小;编码量大,容易实现较多功能。(5)错误码输入保护,如果输入多次错误密码,密码锁会在一段时间自我锁定。(6)马上启动报警系统。(7)密码可以随时改变,以防密码被盗用,形成不安全因素。1.3电子密码锁的发展趋势在早前,由于电子器件有限,开发的电子密码锁保密性较差,种类也较少,最为基本的是基于最简单的模拟电子开关来实现的,制作虽较为简单,但是安全系数较低。接着,出现了基于EDA的电子密码锁,电子元件繁多,电路结构复杂。也有使用20引脚的2051系列单片机来实现功能的密码锁,但是密码简单,容易破解。随着科技的不断发展和人们对安全的重视程度的提高,IC卡辨认、指纹识别密码锁等电子产品,也在国内外相继出现。但是特定的有效卡和指纹,只适用于保密要求的柜、门、箱等。而且IC卡还存在容易丢失、损坏,指纹识别器如果在公共场所使用存在容易机械损坏等特点。而且,其成本相对来说较高,这些因素都限制了产品的推广和普及。为了使电子防盗密码控制系统有更好的保密性,可以采取综合信息的方式,组合通过字符、数字、人体特征、声音等要素转化得到的电子信息。例如要求安全系数很高的金库,就会使用到复合式的电子密码防盗控制系统。可以看出,这种系统有无穷的发展空间,同时可以看出,组合使用电子信息是电子密码锁控制系统今后的发展趋势。14 综上所述,鉴于目前的技术水平和市场的接收程度,电子密码锁已是电子防盗产品的主流。电子密码锁使用灵活性好,安全系数高,保密性高,因此已经吸引了广大的用户来使用。现在,单片机应用已得到了空前的发展,电子密码锁发展已经到了很高的境界,无论功能性还是稳定性,都比较全面。特别是在保密方面,已经做到了指纹识别,人声识别。电子密码锁在国外发展相对比较早,所以应用也比较广泛,主要使用于家庭安放比较贵重的地方,还有银行、保险柜等应用较多;在国内这方面发展也较迅速,在重要地方应用也较多。另外,在价钱方面电子密码锁要比普通的弹子锁贵,早几年应用较少,现在也是越来越普及到平常化,未来的发展被大众选用的可能性也很大。由于,它的安全、功能都是弹子锁无法相比的,因此,发展的前境是非常良好的。1.4本设计所要实现的目标本设计采用单片机为主控芯片,结合外围电路,形成了电子密码锁的控制系统。首先,将编好的程序导入单片机,单片机处于待密码输入状态。如果用户想开锁,必须先通过键盘输入正确的密码才能通过。如果密码输入有误,系统则会报警。用户也可以在把锁打开的状态下自己修改、设定密码。14 第2章单片机的相关知识2.1单片机的简介及其发展史单片机是集成在一个芯片上的计算机,全称为单片机微型计算机SCMC(SingleChipMicro-Computer)。从单片机的功能来看,控制是其的主要应用。因为这个特点,单片机也称为微型控制MCU(MicroControllerUnit)或是单片机微型控制SMCU(SingleMicroControllerUnit)。无论国外还是国内,“微控制器”的称呼已十分普遍。单片机自20世纪70年代末,问世以来,已有30多年的发展历程。虽然,曾经出现过很多种字长的单片机,但是,目前仍然使用最多的是8为单片机。而在8位单片机中,具有典型意义和基础的是8051以及改进型80C51,相比较,80C51的使用更加的广泛些。单片机的发展史中有4位单片机、8位单片机、16位单片机、32位单片机、64位单片机。其中,4位单片机于1975年,由美国德克萨斯仪器公司首次推出,并且命名为TMS-1000,此后,各个计算机公司竞相推出四位单片机。1972年,美国Intel公司首先推出了8位微处理器8008,并与1976年率先推出NCS-48系列的单片机。在1983年以后,于1983年由Intel公司推出的MCS-96系列和1987年Intel推出的80C96为代表行产品的各16位单片机也相继问世。随着高新技术智能机器人、激光打印机、数据与图像实时处理,网络服务器等领域的应用与发展。20实际80年代末,推出了32位单片机,例如Intel的80960系列,Motorlora公司的MC683XX系列,及其近年来流行的ARM系列单片机。近些年来,以Inmos公司的TransputerT800为代表的64位单片机也出现了。在智能机器人,语音图像通信,实时控制等场合已有应用。2.2单片机的特点单片机是在一块集成电路芯片上,装有CPU、程序存储器、数据存储器、输入/输出接口电路、定时/计数器、中断控制器、模/数转换器、数/模转换器、调制解调器以及其他部件的系统。单片机的结构特点如下:(1)单片机的引出管脚一般情况下都设计成多功能;(2)单片机内部设置了可以位寻址的位地址空间,并且有丰富的指令系统;(3)单片机在存储器结构上,将数据存储器RAM和程序存储器ROM在空间上严格的分开;(4)为了可以提高存取的速度,单片机片内的RAM采用了寄存器结构形式;(5)单片机内还有21个特殊功能的寄存器;(6)单片机还有了一个全双工的串行接口,以扩充输入/输出口和外接同步输入和输出设备。单片机芯片要控制整个系统的运行,在具有通用微机CPU的数值计算功能的基础上,还必须具有可靠、强大的控制功能,可以实时监测到系统的输入量、控制系统的输出量,实现自动控制。单片机主要将用于工业控制方面,周围的工作环境是恶劣,如强电磁干扰、温度变化,容易遭受腐蚀性物质等等。另外,在特殊环境下,例如在太空中,还要求单片机具有抗辐射能力,也进一步决定了单片机CPU与通用微机CPU14 具有不同的开发领域和技术要求,如下所示: (1)有较强的抗干扰性,有范围较宽的环境温度。(2)指令语句要求比通用微机系统简单。(3)它的可靠性较高。(4)数值计算能力一般,但是控制功能普遍很强。(5)因为对于技术的要求更高,更新的速度通常没有通用微处理器那么快。1980年,Intel公司推出80C51(CHMOS艺)、标准MCS-51内核8051(HMOS工艺)单片机芯片之后,持续生产、使用达十几年。直到1996年3月,出现了增强型MCS-51内核8XC5X系列芯片以后才取代了之前的单片机芯片。由于增强型MCS-51单片机芯片均采用了CHMOS工艺,因此Philips公司将“增强型MCS-51”内核称为“增强型80C51”内核。2.3单片机的发展前景目前,单片机芯片有很多系列,系列中又可以分为很多不同的型号,单片机的种类还是相当多的。从4位单片机开始发展到8位单片机、16单片机位机、新一代8位单片机以及到32位单片机。而且,单片机也已经广泛应用于家用电器、仪器仪表、航空航天、医疗设备、过程控制以及智能化管理等领域。从单片机的应用方面来看,可以作一下的概括。在家用电器方面,现在也已经基本采用单片机,4位单片机应用较为多见,如洗衣机、电冰箱、彩电、空调、电饭煲、音响视频、电子称等等。但是,随着8位单片机价格的不断下降-,在一些家用电器中叶逐步开始使用到了8位单片机,同时,也使功能和技术都有了进一步的提高,并已逐渐的广泛应用。在计算机网络和通信领域中方面,现在的单片机一般都具有通信接口,可以和计算机方便的进行数据通信。现在的通信设备也基本上实现了单片机的智能控制,比如在移动电话、无线对讲机、手机、楼宇自动通信会叫系统等等,都已经比较普遍。在工业控制方面,单片机可以实现多样的数据系统,控制系统等等。例如在电梯系统智能控制及各种报警系统,在工厂生产流水线智能化管理系统,和计算机联网构成二级控制系统等等。在智能仪器仪表方面,单片机体积小、扩展灵活、功耗低、控制功能强、使用方便等优点,都使得单片机在仪器仪表中有广泛的应用。16位单片机虽然出现在市场已经有十几年,但是一直没有取代8位单片机。16位单片机具有较快的反映速度和较强的数值运算能力,常用在实时处理、需要实时控制的系统。然而目前,基本被强化了控制接口功能的新一代8位单片机取代。在医用设备领域方面,在各种检查设备、分析仪器、监护仪器、医用呼吸机、超声波诊断设备以及病床呼叫等等方面,也有了广泛的应用。可以看出,单片机已经进入了人们日常所必须的领域,有着不可替代的位置。在各种大型电器的模块化应用方面,因为单片机独特的性能,可以在各种电路中进行模块化应用,不需要用户了解其内部结构。 因为模块化的应用,在很大程度上使得大型电路缩小了体积,减少了错误率,也更加方便于模块的更换。14 单片机不仅在以上一些方面有广泛的应用,而且在教育、国防、教育科技、工商、航空航天等等很多领域都有十分广泛的用途。这就表明,单片机已经深入我们人类社会的各个方面,已经有了不可替代的地位。另一个方面,单片机出现的时间其实并不长,但发展却是十分迅猛,不可估量的。其中,8位单片机,大致经历了三个发展阶段。首先,是8位单片机系统,如MCS-48系列,在功能方面存在不足,它由输入/输出接口电路和通用CPU单元电路、中断控制系统以及小容量存储器构成,不带A/D、D/A转换器,没有串行通讯功能,中断管理和控制能力也较弱。因此,这些不足的存在,使得其无法继续存在和发展。后来,在第一代的基础上,出现了第二代8位单片机,它的特点是通用性强。另一方面,个性还不突出,控制功能也不全面,还是不能全面的满足不同的测控系统、不同的应用领域的各个要求。20世纪90年代中后期,在第二代单片机的CPU内核基础上,在串行口部件中增加了自动地址识别和错误侦测功能外,进一步强化了原有的功能。根据在不同的领域中使用到的不同功能,第二代单片机CPU内嵌入了不同功能和用途的外部接口电路,就有了品种、规格繁多的新一代8位单片机芯片,如Motorola公司的68HC05、68HC11系列,Atmel、Philips、Intel公司的8XC5X系列,MicroChip公司的PIC16C系列等。在新一代8位单片机中,以增强型MCS-51为内核的8XC5X系列、以6801为内核的68HC05和68HC11系列目前已成为主流单片机芯片。另外,32位单片机的数值计算能力非常强,在各种新生事物的功能不断要求影响下,32位单片机的使用量也在迅猛上升。在以后相当长的一段时间里,8位、16位和32位单片机芯片的销量可能会有不同程度的增长。但是,在目前甚至今后相当长的时间里,或许5年,或许10年的时间里,8位单片机以及一些列的衍生产品,像MC68HC11、80C51系列依然有主导的地位。2.4主控芯片AT89C51性能介绍AT89C51单片机是ATMEL公司生产的一款产品,采用了特有的非易失性存储,高密度技术生产。并且,加有4KBytes的可反复擦写1000次的Flash只读程序存储器,兼容标准8051指令系统及引脚,是一个低功耗,高性能COMS8位单片机。AT89C51单片机集Flash程序存储器,既可用传统方法进行编程,也可在通用8位微处理器或线编程于芯片中。ATMEL公司的芯片功能强大,而且AT89C51单片机的价格,可灵活应用于各种控制领域。AT89C51作为MCS-51系列单片机的一个典型案例,它的构成主要包括中央处理器(CPU)、内部数据存储器、内部程序存储器、定时器、计数器、并行I/O口、串行口、中断控制电路、内部总线等。单片机内部结构示意图见图2.1。14 TINT中断系统定时器/计数器器CPU并行I/O接口并行I/O接口P0~3TXD存储器RXD图2.1单片机内部结构示意图1.中央处理器中央处理器简称CPU,是单片机的核心部件,能处理8位二进制数据或代码,用于完成运算和控制操作。其中,包含控制器、运算器两部分电路。2.内部数据存储器内部数据存储器包括RAM(128×8)和RAM地址寄存器,用于存放可读/写的数据。实际上AT89C51芯片中共有256个RAM单元,但是后128个地址单元是统一编址的,作为专用寄存器,用户不能用于存放用户数据,只能用于访问。3.内部程序存储器内部程序存储器包括ROM(4K×8)和程序地址寄存器等。AT89C51芯片中共有4KB掩膜ROM,最大可扩展64K字节,用于存放用户程序,表格或原始数据。4.定时器、计数器由于控制应用的需要,AT89C51有两个16位的定时器/计数器,用定时器/计数器0和定时器/计数器1表示,以实现计数或定时产生中断实现转向。5.并行I/O口AT89C51芯片中共有4组8位并行I/O口(P0、P1、P2或P3),用于和外部数据进行传输。6.中断系统AT89C51单片机由于实际情况需要,中断功能较强,有5个中断源,分别为一个串行中断、两个外中断和两个定时/计数器中断。为了满足不同的控制要求,中断分为高、低两个优先级别。14 2.5AT89C51引脚功能说明图2.2为AT89C51芯片外形结构和引脚分布图,同时说明了各个引脚的名称,对其功能做了简单的介绍。图2.2AT89C51芯片外形结构和引脚分布输入/输出口线:P0.0—P0.7P0口8位双向口线P1.0—P1.7P1口8位双向口线P2.0—P2.7P2口8位双向口线P3.0—P3.7P3口8位双向口线RST:复位输入,当输入的复位信号延续2个机器周期以上高电平时即为有效,来完成单片机的复位操作。ALE:地址锁存控制信号,ALE用于控制吧P0口输出的低8位地址送入锁存起来,来实现地位地址和数据的分时传送。PSEN:外部程序存储器读选通信号,程序存储允许输出是外部程序存储器的读选通型号,在读外部ROM时,PSEN低电平有效,以实现外部ROM单元的读操作。EA:访问程序存储器控制信号,当EA保持低电平(接地)时,允许CPU仅访问外部程序存储器。而当EA信号为高电平时,对ROM的读操作是从内部程序存储器开始的,并且可以延续至外部程序存储器。XTAL1:外部晶体引线端,振荡器反相放大器及内部时钟发生器输入端。XTAL2:外部晶体引线端,振荡器反相放大器输出端。Vcc:电源电压GND:地14 掉电模式:在掉电模式下,振荡器停止工作,需要通过硬件复位来退出掉电模式。89C51的程序存储器阵列是采用字节写入方式来编程的,必须使用片擦除的方法将整个存储器的内容清除。随着单片机功能的增强,对芯片引脚的需求不断增强,但是由于芯片的引脚数目总是有限的。因此,引脚复用的现象在单片机中也是十分常见的。80C51的引脚复用主要集中在P3口线上。详见表2-1。表2.1P3口线的第二功能口线第二功能信号第二功能信号名称P3.0RXD串行数据接收P3.1TXD串行数据发送P3.2INT0外部中断0申请P3.3INT1外部中断1申请P3.4T0定时器/计数器0计数输入P3.5T1定时器/计数器1计数输入P3.6WD外部RAM写选通P3.7RD外部RAM读选通14 第3章系统的硬件构成3.1密码锁总体设计本设计是以AT89C51单片机为核心,由单片机系统、LED显示、矩阵键盘以及报警系统组合而成。其中,矩阵键盘用于输入数字密码和进行各种功能的实现。用户通过连接在单片机上的矩阵键盘输入密码,然后单片机对用户输入的密码和自己本身的密码做对比,并且判断密码是否正确。如果密码正确,则控制引脚的高低电平传到开锁电路。如果密码错误,报警电路就会报警。本设计系统,由硬件部分和软件部分两个部分组合而成。其中,硬件部分包括电源输入部分、键盘输入部分、晶振部分、复位部分、报警部分和显示部分。软件部分包括主程序、键盘扫描程序、密码设置程序、报警程序、EEPROM读写程序和延时程序等组成。本设计的总体设计框图如图3.1所示。AT89C51电源输入按键电路显示电路晶振电路报警电路复位电路开锁电路图3.1总体设计框图3.2电路总体构成本设计采用的方法是通过Protues软件仿真,首先画出硬件电路原理图,然后把KeiluVision3中的Keil项目导入到Protues硬件电路原理图中的AT89C51单片机中。并且设置好要运行的环境,例如晶振参数,支持与Keil进行联合调试的参数等等。本设计采用的方法是通过Protues软件仿真,以AT89C51作为CPU运行的,用4×4阵键盘作为0~9数字键和确认键,修改密码键,复位键,删除键。用6数码管组成显示电路,当输入密码时只有“—”,防止密码不被泄露,当密码输入完毕后按确认键确认,如果密码正确,则开锁,数码管显示为“8”;如果密码错误,数码管显示为“F“,并且报警电路会发出“滴滴”的报警声报警。硬件电路原理图如图3.2所示:14 图3.2硬件电路原理图3.2.1电源输入部分密码锁主控部分的电源需要用5V直流电源,要得到幅值5V的稳定直流电压,可以通过把有效值为220V、频率为50HZ的单相交流电压转化得到。转化的主要原理是把单相交流电经过电源变压器、滤波电路、整流电路、稳压电路转换得到。但是,一般情况下,5V电源输入时往往伴有杂波,所以加一个2.2uF的电容滤波。这样输出的电压一般能满足要求,其电路如图3.3所示。14 图3.3电源输入电路原理图3.2.2键盘输入部分本设计采用的是矩阵式键盘,在Protues中找到KEYPAD-SMALLCALC来实现,矩阵式键盘有行线和列线之分,在行线和列线的交点处有一个键。这种排列符合本设计要使用到较多按键的特点。与独立的按键键盘相比,矩阵式键盘就可以节省很多I/O口。在本设计中,4×4阵式键盘除了输入数字功能外,还可以作为其他特殊功能键使用,例如,密码确认,密码修改,清除输入内容等。键盘输入原理图如图3.4所示。按键功能说明见表3-1。图3.4键盘输入原理图14 表3.1按键功能表图中的按键相对应的功能0~90~9数字键÷修改密码键+复位或密码一次全部删除键=密码删除键(一次删一位)ON/C确认键3.2.3晶振部分晶振、电容C2和C3及片内与非门(作为反馈、放大元件)构成了电容三点式振荡器,振荡信号频率与晶振频率及电容C2、C3的容量有关,但主要由晶振频率决定,范围在0~33MHz之间,电容C2、C3取值范围在5~30pF之间。根据实际情况,本设计中采用12MHZ做为系统的外部晶振。电容取值为20pF。AT89C1引脚XTAL1和XTAL2与晶体振荡器及电容C2、C3按图3.5所示方式连接。图3.5晶振电路原理图3.2.4复位部位让单片机的CPU及其系统中其他功能部分都处于一个固定的初始状态就是单片机的复位,然后从这个固定的初始状态开始工作。单片机在接上电源,发生故障后或者断电后都需要进行复位操作。在复位过程中,RST为高电平,P0口处于高阻态,P1-P3口输出高电平;外部程序存储器读选通信号PSEN无效,地址锁存信号ALE也为高电平。结合实际情况选择了图3.6所示的复位电路。该电路是在最基本的复位电路上,增加了一个手动复位开关。增加手动复位按键是为了避免死机时无法可靠复位。在接通电源的瞬间,电容C1上的电压接近于0,复位下拉电阻上的电压接近于电源电压,即RST为高电平。在电容充电的过程中RST端的电压逐渐开始下降,当RST端的电压小于某一个数值以后,CPU就脱离复位状态。另外,由于电容C1足够大,可以保证RST高电平有效时间大于24个振荡周期,CPU就能够可靠复位。当复位按键按下后电容C1通过R5放电。当电容C1放电结束后,RST端的电位由R5与R6分压比决定。由于R5<#defineucharunsignedchar#defineuintunsignedintuintnum=10;//开始让数码管什么都显示bitset=0;//定义设置密码的位charcount=-1;//开始让COUNT=-1,方便后面显示数码管sbitBeep=P1^2;//蜂鸣器uchartemp;ucharpws[6]={3,6,2,3,3,0};//原始密码ucharpwx[6];//按下的数字存储区bitrightflag;//密码正确标志位ucharworkbuf[6];ucharcodetabledu[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x00,0x40};//段选码,共阴极ucharcodetablewe[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf};//位选码uintkeyscan();voiddelay(ucharz)//延时,ms级{uchary;for(;z>0;z--)for(y=120;y>0;y--);}voidsetpw()//设置密码函数{keyscan();}uintkeyscan()//键盘扫描函数{P3=0xfe;temp=P3;temp=temp&0xf0;if(temp!=0xf0){delay(5);//键盘去抖,最好20ms以上,这里用了5ms39 temp=P3;temp=temp&0xf0;if(temp!=0xf0){count++;//按键计数加1temp=P3;switch(temp){case0xee:{num=7;if(count<6)//六位密码,所以COUNT<6{if(set==0)//设置密码键没有按下时pwx[count]=num;//存储按下的数字elsepws[count]=num;//设置密码键按下时,设置新密码workbuf[count]=tabledu[11];//相应位的数码管显示"--",不显示相应的数字,密码是保密的}}break;case0xde:{num=8;if(count<6)//以下扫描键盘的原理差不多同上{if(set==0)pwx[count]=num;elsepws[count]=num;workbuf[count]=tabledu[11];}}break;case0xbe:{num=9;39 {if(count<6){if(set==0)pwx[count]=num;elsepws[count]=num;workbuf[count]=tabledu[11];}}}break;case0x7e://设置密码键按下{set=1;//设置密码标志位置1P1_3=0;//设置密码指示灯亮workbuf[0]=0x00;//数码管第一位不显示workbuf[1]=0x00;//......workbuf[2]=0x00;//......workbuf[3]=0x00;workbuf[4]=0x00;workbuf[5]=0x00;//......count=-1;//按键计数复位为-1if(count<6)//密码没有设置完,继续设置密码{setpw();//设置密码}}break;}while(temp!=0xf0)//按键抬起检测{temp=P3;temp=temp&0xf0;}}}P3=0xfd;39 temp=P3;temp=temp&0xf0;if(temp!=0xf0){delay(5);temp=P3;temp=temp&0xf0;if(temp!=0xf0){count++;temp=P3;switch(temp){case0xed:{num=4;if(count<6){if(set==0)pwx[count]=num;elsepws[count]=num;workbuf[count]=tabledu[11];}}break;case0xdd:{num=5;if(count<6){if(set==0)pwx[count]=num;elsepws[count]=num;workbuf[count]=tabledu[11];}}39 break;case0xbd:{num=6;if(count<6){if(set==0)pwx[count]=num;elsepws[count]=num;workbuf[count]=tabledu[11];}}break;}while(temp!=0xf0){temp=P3;temp=temp&0xf0;}}}P3=0xfb;temp=P3;temp=temp&0xf0;if(temp!=0xf0){delay(5);temp=P3;temp=temp&0xf0;if(temp!=0xf0){count++;temp=P3;switch(temp){case0xeb:{39 num=1;if(count<6){if(set==0)pwx[count]=num;elsepws[count]=num;workbuf[count]=tabledu[11];}}break;case0xdb:{num=2;if(count<6){if(set==0)pwx[count]=num;elsepws[count]=num;workbuf[count]=tabledu[11];}}break;case0xbb:{num=3;if(count<6){if(set==0)pwx[count]=num;elsepws[count]=num;workbuf[count]=tabledu[11];}}break;}39 while(temp!=0xf0){temp=P3;temp=temp&0xf0;}}}P3=0xf7;temp=P3;temp=temp&0xf0;if(temp!=0xf0){delay(5);emp=P3;temp=temp&0xf0;if(temp!=0xf0){count++;temp=P3;switch(temp){case0xd7:{num=0;if(count<6){if(set==0)pwx[count]=num;elsepws[count]=num;workbuf[count]=tabledu[11];}}break;case0xe7:num=20;break;//确定键按下检测case0x77://复位键或者输入密码全部一次删除{P1_1=0;//锁关39 P1_3=1;//密码设置指示灯灭set=0;//不设置密码num=10;//num复位count=-1;//COUNT复位workbuf[0]=tabledu[10];//第一位数码管不显示workbuf[1]=tabledu[10];//第二位数码管不显示workbuf[2]=tabledu[10];workbuf[3]=tabledu[10];workbuf[4]=tabledu[10];workbuf[5]=tabledu[10];//......P1_0=1;//锁关}break;case0xb7://输入密码删除键(一位一位删除){count--;workbuf[count]=0x00;//因确定键按下时,COUNT也会加1,而确定键不是密码,所以这里是COUNT,而不是COUNT+1count--;//因确定键按下时,确定键不是密码,COUNT也会加1,这里COUNT再自减1if(count<=-1)count=-1;}break;}while(temp!=0xf0){temp=P3;temp=temp&0xf0;}}}return(num);}voidinit()//利用定时显示数码管{TMOD=0x01;TH0=(65536-500)/200;TL0=(65536-500)%200;39 ET0=1;EA=1;TR0=1;}bitcompare()//密码比较函数{if((pwx[0]==pws[0])&(pwx[1]==pws[1])&(pwx[2]==pws[2])&(pwx[3]==pws[3])&(pwx[4]==pws[4])&(pwx[5]==pws[5]))rightflag=1;elserightflag=0;return(rightflag);}voidmain(){uinti,j;init();P0=0;P1_1=0;//锁关while(1){keyscan();if(num==20)//如果确定键按下(修改密码和输入密码共用的确定键){if(count==6){if(set==1)//修改密码确定{P1_3=1;workbuf[0]=0;workbuf[1]=0;workbuf[2]=0;workbuf[3]=0;workbuf[4]=0;workbuf[5]=0;}else//输入密码确定{39 set=0;compare();if(rightflag==1)//如果密码正确{P1_0=0;//锁开P1_1=1;workbuf[0]=tabledu[8];//数码管第一位显示"8"workbuf[1]=tabledu[8];//数码管第二位显示"8"workbuf[2]=tabledu[8];workbuf[3]=tabledu[8];workbuf[4]=tabledu[8];workbuf[5]=tabledu[8];//......}ese{P1_1=0;//锁仍然是关workbuf[0]=0X71;//数码管第一位显示"F"workbuf[1]=0X71;workbuf[2]=0X71;workbuf[3]=0X71;workbuf[4]=0X71;workbuf[5]=0X71;//......for(i=0;i<1000;i++)//密码错误报警{for(j=0;j<80;j++);Beep=~Beep;}break;}}}else//若输入的密码位数不为6位时{P1_1=0;//锁仍然关workbuf[0]=0X71;//数码管第一位显示"F"workbuf[1]=0X71;workbuf[2]=0X71;workbuf[3]=0X71;39 workbuf[4]=0X71;//......workbuf[5]=0X71;//密码错误报警for(i=0;i<1000;i++){for(j=0;j<80;j++);Beep=~Beep;}break;}}}voidtimer0()interrupt1//显示数码管{uchari;TH0=(65536-500)/200;TL0=(65536-500)%200;for(i=0;i<6;i++){P0=workbuf[i];P2=tablewe[i];delay(5);P0=0;}}39

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
关闭