基于51单片机密码锁的设计

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

基于51单片机密码锁的设计电子密码锁是一种通过输入密码来控制芯片或电路工作,从而控制机械开关的闭合,完成密码锁的开锁、闭锁任务的电子产品。它有很多的种类,包括简易的电路产品,也有性价比比较高的基于芯片的产品。现在应用比较多的电子密码锁主要以芯片为主,内部通过编程实现实际功能。本次毕业设计通过单片机C51语言编写密码程序,用3-8译码器和74LS138驱动的数码管来显示密码数字数码管以“—”来实时显示当前输入密码的个数。{94%:当输入密码正确时,对应的指示灯变亮;当密码不正确时,另一个对应的指示灯变亮并且发出蜂鸣声报警。}关键词:AT89S51;单元电路;密码程序;C51语言;电子密码锁目录第一章绪论11.1电子密码锁的背景11.2电子密码锁的发展趋势11.3本设计要实现的目标2第二章系统方案对比与确认42.1系统基本方案42.1.1系统框图42.1.2各模块方案选择与论证52.1.3系统各模块的最终方案5第三章系统的硬件设计与实现113.1系统硬件概述113.2主要单元电路的设计123.2.1键盘扫描模块电路的设计113.2.2单片机控制模块电路的设计113.2.3声光报警模块电路的设计113.2.4数码显示模块电路的设计11第四章系统软件设计174.1系统软件的概述174.2子程序的设计194.2.1自检子程序174.2.2键盘扫描子程序174.2.3位移子程序184.2.4开锁子程序174.2.5修改密码子程序18第五章系统仿真与调试215.1系统仿真过程215.2仿真调试过程中遇到的困难及解决方法21致谢22参考文献22附录1系统电路图22附录2系统程序22附录3系统使用说明书22第一章绪论1.1电子密码锁的背景{44%:由于应用科技的不断发展,锁的成员已经包括声控锁、电子锁、磁性锁、密码锁、机械锁等等。}{46%:开锁时,在金属钥匙的基础上,添加一种或多种密码,并组合不同图像,不同声音等(如视网膜、指纹等)来控制锁的开启。}大大提高了锁的安全等级,人们对自己的财产安全也有了更多的保障。现如今越来越多的人开始应用安全信息系统,尤其是在财产安全、隐私保护。机密保护等方面发挥了重大的作用。{41%:在安全系统的组成部分中,电子密码锁是不可或缺的,因此对于电子密码锁的研究和设计是有很大价值的。}1.2电子密码锁的发展趋势在实际生活中,家庭住宅和公司的安全防范,以及公司文档文件,各种收据报表等的存储安全都需要用锁来进行保证。传统锁具主要有弹子锁,机械密码锁等,结构简单的安全性得不到保证,结构复杂的成本却不是一般人能负担得起的。{46%:如果使用多个传统锁具的时候,用户就需要携带多把钥匙。}{66%:携带不方便且一旦钥匙丢失,安全性也会大打折扣。}正是由于传统锁具功能的不完善和一些无法改进的特性,用“密码”来代替传统锁具的关键“钥匙”的功能,这种新的概念一被人提出,就受到很大的关注。{47%:密码锁的出现为人们的工作生活带来了极大的便利,带来的是锁具行业的一次全面升级。}当然。由于前期电子器件的限制,只能依靠最简单的模拟电子开关来控制锁的开关,制作工序也相对简单,所以初期的电子锁的安全性差,种类也比较少。{87%:后来出现基于EDA来实现的电路,结构复杂电子元件繁多,也有使用早先的20引角的2051系列单片机来实现的,缺点是密码简单,易破解。}{89%:随着电子元件的进一步发展,电子密码控制系统也出现了很多种类,功能日益强大,}使用更加方便,安全保密性更强,出现了感应原件加密码的双重保护,真正意义上实现了电子加密,{70%:用户使用密码或电子钥匙其中的任意一种,都是打不开锁的。}{66%:随着电子元件的发展和人们对安全性要求的不断提高出现了各种各样类型的电子密码锁。}包括更多的特定需求的电子密码锁逐渐被发明出来,它们同样具有安全,方便等特性。{56%:但这类产品有自己的局限性,只能针对特定声音、指纹或有效卡有效,且不能实现远程控制,适应于小众,即安全性要求高并且由个人使用的柜、箱、房门等。}实际生活中人体生物特征、图形图像和数字、字符、时间等要素均能成为钥匙的电子信息,对这些电子信息进行实际业务需求的组合和融合,{64%:可以使电子密码锁获得更高等级的安全性。}目前应用此类电子密码锁比较多的有银行金库等,其安全等级要求高,且防范非常严,需要使用多种组合信息密码吗才能打开相应的电子密码锁,这对于不法之徒来说就是不可跨过的鸿沟。组合使用各种电子密码锁的开锁信息,对于电子密码锁产品的多样化有很大的促进作用,{60%:可以预见,组合各种电子信息将是电子密码锁的未来发展方向。}1.3设计实现功能和效果{43%:此次设计的电子密码锁的核心芯片为AT89S51,结合数码管显示电路、声光报警电路、键盘扫描电路等,}{74%:实现电子密码锁的基本功能,主要具有如下功能:}{73%:(1)密码通过数字键盘输入,当输入密码正确时,将锁打开。}(2)键盘锁定和报警。{69%:首次密码输入错误数码管显示错误提示,密码输入次数超过3次,蜂鸣器报警同时锁定键盘。}(3)输入密码功能:{57%:当按下一位数字键时,最右边的数码管显示一个“—”,同时将已经输入的所有“—”依次向左移动一位。}(4)清除密码功能:{73%:按下清除键时清除输入的所有值并清除所有显示。}第二章系统方案对比与确认2.1系统基本方案2.1.1系统设计框图{91%:电子密码锁由以下5个部分组成,如图2.1所示:}图2.1电子密码锁系统图键盘部分:由4×4数字按键开关组成。电源部分:{79%:由+5V的直流稳压电源给整个系统运行供电。}单片机控制部分:{60%:采用单片机AT89S51,支持ISP在线编程技术,便于烧写程序。}显示部分:{79%:采用六个数码管实时显示输入的数据;}报警部分:{采用发光二极管和蜂鸣器做声光报警。}2.1.2各部分方案对比与确认(1)单片机的选择方案一:{采用AT89C51单片机,它可以与其它51系列的单片机兼容、内部ROM全部采用FLASHROM、最高时钟频率可达24MHz且能以3V超低压工作。}{但不支持ISP在线编程技术、内部ROM仅为4KB不利于功能扩展。}方案二:{采用AT98S51单片机,它具同时被AT98C51的全部功能外,还支持ISP在线编程技术且内部ROM为8KB有利于功能扩展。}(2)键盘的选择方案一:使用独立式按键来控制{93%:使用独立式按键来控制数码管的显示,这样需要很多的按键,每个按键实现一个能够实现,易于控制,}{程序编写简单,但是每个按键都要接上拉电阻,占用了单片机大量的I/O接口资源,要对单片机外扩I/O口,}{并且在电路焊接方面又不方便,还要浪费大量的资源,提高了成本。}方案二:采用矩阵式键来控制{把按键按行列组成矩阵,在行列交点上都对应有一个键,这样使用的按键要少,为判定有无键被按下以及被按键的位置,这种称为键扫描法。}{这样虽然提高了编程难度,但是节约了单片机大量的I/O口,免去了上拉电阻为焊接带来了方便,提高了整块电路板的美观度。}(3)显示模块的选择方案一:数码管静态显示{采用LED数码管静态显示方法,电路容易理解,驱动程序简单,但需要每个数码管都要一块74LS47来驱动显示,}{增高了成本,浪费系统硬件资源,而需要占用单片机多个I/O口。}方案二:数码管动态显示{采用LED数码管动态扫显示方法,只需一块数码管驱动器芯片和一块译码器芯片就可以驱动多个数码管,}{价格便宜,只需要7个I/O口就可以同时驱动8个数码管显示。}{硬件利用效率高,驱动程序容易理解和编程。}方案三:液晶显示{采用LCD液晶显示,显示的位数多,由单片机驱动。}此方案有美观、显示清晰多样的优点。{但同时液晶显示器的驱动程序复杂,编程困难,成本高,价格昂贵,浪费大量的资源。}(4)数码管驱动选择{采用74LS47驱动数码管和74LS138译码器来控制数码管的COM端,}{因为74LS47只能驱动共阳数码管,而74LS138的输出为低电平有效。}{因此,在74LS138的输出端加入反向器才可以接到数码管的COM端。}方案一:74LS04芯片的选择{采用74LS04芯片做反向器,74LS47是集成六反向器芯片,刚好可驱动六个数码管,但是它的输入输出引脚两边均分布,}{造成跳线较多给电路焊接时带来麻烦影响了整块电路的美观度。}方案二:三极管的选择{三极管也具有反向的功能,采用的是PNP管,电路的连接中又方便,减少了跳线提高美观度。}(5)报警模块的选择方案一:{采用语音报警,虽然可以使整个系统更加完美,但是会使程序更加复杂而且提高了整个系统的造价。}方案二:{采用发光二极管和蜂鸣器来报警,可以发出声光报警且降低了成本。}2.1.3系统各模块的最终方案{结合整个系统的功能、成本、美观度等综合考虑,用AT89S51单片机为}主控模块、用4×4键盘输入、用74LS47、74LS138和三极管来{驱动六个数码管做显示模块、用发光二极管和蜂鸣器做为报警模块。}系统框图如图2.2图2.2系统框图第三章系统的硬件设计与实现3.1系统硬件概述{97%:本系统是通过键盘扫描模块,既能够显示数据并且还能修改密码,开锁密码具有强大的功能,通过键盘扫描模块输入到单片机控制系统AT89S52中。}{然后通过数码显示模块来显示我们所要有数据,还有一个就是报警模块,当输入的密码相同时,则显示模块的灯点亮,当输入的密码是错误时,绿灯点亮,报警模块立刻发出声音报警。}{为了达到设定的功能,本装置键盘扫描模块、单片机控制模块、数码管显示模块,声光报警模块等4模块组成。}3.2主要单元电路的设计3.2.1键盘扫描模块电路的设计{如图3.1所示,本模块的作用是进行键盘的扫描,首先判定有没有键被按下,}{然后再判定被按键的位置,因为键盘矩阵有键被按下时,被按键处的行线和列线被接通,}使得开关之间接通。{当扫描表明有按键被按下之后,紧接着应是进行去抖动处理,一般我们采用的是软件来去抖动,}{软件方法则是采用时间延迟以躲过抖动,待行线上状态稳定之后,再进行行状态输入}图3.1键盘扫描模块3.2.2单片机控制模块电路的设计{单片机作为本装置的核心器件,在系统中起到控制声光报警、以及数码动态显示的作用,其中采用的是AT89S51,}{AT89S51是标准的40引脚双列直插式集成电路芯片,有4个八位的并行双向I/O端口,}分别记作P0、P1、P2、P3。第20引脚为接地端;第40引脚为电源端;{第31引脚需要接高电位使单片机选用内部程序存储器;}{第18、19脚之间接上一个12MHz的晶振为单片机提供时钟信号;}{第9脚为复位脚,当其接高电位时,单片机停止工作。}{P0口接两个发光二极管和一个蜂鸣器以实现声光报警功能,}{P2口连接一片七段译码器和一片3-8译码器以动态扫描方式同时驱动六个数码管,}{P1口与16个阵列式按键相连实现对键盘的扫描。}{通过编程既能识别从译码器来驱动数码管来显示数据,同时也通过运行指令来达到完成声光报警及动态显示数码管等功能。}如图3.2所示图3.2单片机控制模块3.2.3声光报警模块电路的设计图3.3声光报警模块{如图3.3所示,本模块的作用是当开锁按钮被按下时,如果数码管当前显示值相同,则绿灯点亮,当输入的数与密码不同时,则红灯点亮并且蜂鸣器立刻发出声音报警。}3.2.4数码显示模块电路的设计{如图3.4所示,该模块主要由74LS47译码器,74LS138译码器和6个8段数码显示管组成,}{如图所示,从编码器输送过来的数据经过两片74LS47芯片和74LS138蕊片译码后,传送到8段数码显示管,}{100%:显示管根据接收到数据电平的高低来显示不同的数据。}图3.4数码显示模块{从图中可以看到单片机P2口低4位连接一片74LS47七段译码器,}{由于74LS47是共阳极数码管的七段译码器,因此要选用共阳极的数码管。}{单片机P2.0-P21.3的输出信号经过74LS47译码后就可以驱动数码管的段码显示相应的数字,}{另外在74LS47的输出与数码管之间还要接

1 / 40
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功