ImageVerifierCode 换一换
格式:DOCX , 页数:26 ,大小:960.34KB ,
资源ID:20535544      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/20535544.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(承德市中考满分作文基于单片机的电子密码锁论文改3文档格式.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

承德市中考满分作文基于单片机的电子密码锁论文改3文档格式.docx

1、其性能和安全性已大大超过了机械锁。其特点如下:(1)保密性好,编码量多,远远大于弹子锁。随机开锁成功率几乎为零。(2)密码可变,用户可以随时更改密码,防止密码被盗,同时也可以避免因人员的更替而使锁的密级下降。(3)误码输入保护,当输入密码多次错误时,报警系统自动启动。(4)无活动零件,不会磨损,寿命长。(5)使用灵活性好,不像机械锁必须佩带钥匙才能开锁。(6) 电子密码锁操作简单易行,一学即会1.2 电子密码锁的发展趋势在日常生活和工作中,住宅与部门的安全防范、单位的文件档案、财务报表以及一些个人资料的保存多以加锁的办法来解决。目前门锁主要用弹子锁,其钥匙容易丢失;保险箱主要用机械密码锁,其结

2、构较为复杂,制造精度要求高,成本高,且易出现故障,人们常需携带多把钥匙,使用极不方便,且钥匙丢失后安全性即大打折扣。针对这些锁具给人们带来的不便若使用机械式钥匙开锁,为满足人们对锁的使用要求,增加其安全性,用密码代替钥匙的密码锁应运而生。它的出现为人们的生活带来了很大的方便,有很广阔的市场前景。由于电子器件所限,以前开发的电子密码锁,其种类不多,保密性差,最基本的就是只依靠最简单的模拟电子开关来实现的,制作简单但很不安全,在后为多是基于EDA来实现的,其电路结构复杂,电子元件繁多,也有使用早先的20引角的2051系列单片机来实现的,但密码简单,易破解。随着电子元件的进一步发展,电子密码锁也出现

3、了很多的种类,功能日益强大,使用更加方便,安全保密性更强,由以前的单密码输入发展到现在的,密码加感应元件,实现了真真的电子加密,用户只有密码或电子钥匙中的一样,是打不开锁的,随着电子元件的发展及人们对保密性需求的提高出现了越来越多的电子密码锁。出于安全、方便等方面的需要许多电子密码锁已相继问世。但这类产品的特点是针对特定有效卡、指纹或声音有效,且不能实现远程控制,只能适用于保密要求高且供个人使用的箱、柜、房间等。由于数字、字符、图形图像、人体生物特征和时间等要素均可成为钥匙的电子信息,组合使用这些信息能够使电子防盗锁获得高度的保密性,如防范森严的金库,需要使用复合信息密码的电子防盗锁,这样对盗

4、贼而言是“道高一尺、魔高一丈”。组合使用信息也能够使电子防盗锁获得无穷扩展的可能,使产品多样化,对用户而言是“千挑百选、自得其所”。可以看出组合使用电子信息是电子密码锁以后发展的趋势。1.3 本设计所要实现的目标本次设计使用 ATMEL公司的 AT89S51 实现一基于单片机的电子密码锁的设计,其主要具有如下功能: (1)密码通过键盘输入,若密码正确,则将锁打开。(2)报警、锁定键盘功能。密码输入错误数码显示器会出现错误提示,若密码输入错误次数超过 3 次,蜂鸣器报警并且锁定键盘。电子密码锁的设计主要由三部分组成:44 矩阵键盘接口电路、密码锁的控制电路、输出八段显示电路。另外系统还有 LED

5、 提示灯,报警蜂鸣器等。密码锁设计的关键问题是实现密码的输入、清除、更改、开锁等功能:(1)密码输入功能:按下一个数字键,一个“”就显示在最右边的数码管上,同时将先前输入的所有“”向左移动一位。(2)密码清除功能:当按下清除键时,清除前面输入的所有值,并清除所有显示。(3)开锁功能:当按下开锁键,系统将输入与密码进行检查核对,如果正确锁打开,否则不打开。主要的设计实施过程:首先,选用 ATMEL公司的单片机 AT89S51,以及选购其他电子元器件。第二步,使用 DXP 2004设计硬件电路原理图,并设计 PCB图完成人工布线(后因 PCB 板损坏决定采用万能板焊接的方法)。第三步,使用 Kei

6、l uVision3 软件编写单片机的 C 语言程序、仿真、软件调试。第四部,使用 PROTEUS 软件进行模拟软、硬件调试。最后,联合软、硬件调试电路板,完成本次毕业设计。第二章 系统方案选择与论证2.1系统基本方案2.1.1系统框图简易电子密码锁是由5 个部分组成,如图2.1 所示:图2.1 电子密码锁控制系统电源模块:由+5V 的直流稳压电源供电给整个系统工作。键盘模块:由16 个轻触式开关组成。单片机控制模块:采用支持ISP 在线编程技术的单片机AT89S51 便于烧写程序。显示模块:采用六个数码管时时显示当前输入数据;报警模块:采用发光二极管和蜂鸣器做声光报警。2.1.2 各模块方案

7、选择与论证(1)单片机的选择方案一:采用AT89C51 单片机,它可以与其它51 系列的单片机兼容、内部ROM 全部采用FLASH ROM、最高时钟频率可达24MHz 且能以3V 超低压工作。但不支持ISP 在线编程技术、内部ROM 仅为4KB 不利于功能扩展。方案二:采用AT98S51 单片机,它具同时被AT98C51 的全部功能外,还支持ISP 在线编程技术且内部ROM 为8KB 有利于功能扩展。(2)键盘的选择使用独立式按键来控制使用独立式按键来控制数码管的显示,这样需要很多的按键,每个按键实现一个能,易于控制,程序编写简单,但是每个按键都要接上拉电阻,占用了单片机大量的I/O 接口资源

8、,要对单片机外扩I/O 口,并且在电路焊接方面又不方便,还要浪费大量的资源,提高了成本。采用矩阵式键来控制把按键按行列组成矩阵,在行列交点上都对应有一个键,这样使用的按键要少,为判定有无键被按下以及被按键的位置,这种称为键扫描法。这样虽然提高了编程难度,但是节约了单片机大量的I/O 口,免去了上拉电阻为焊接带来了方便,提高了整块电路板的美观度。(3)显示模块的选择数码管静态显示采用LED 数码管静态显示方法,电路容易理解,驱动程序简单,但需要每个数码管都要一块74LS47 来驱动显示,增高了成本,浪费系统硬件资源,而需要占用单片机多个I/O 口。数码管动态显示采用LED 数码管动态扫显示方法,

9、只需一块数码管驱动器芯片和一块译码器芯片就可以驱动多个数码管,价格便宜,只需要7 个I/O 口就可以同时驱动8 个数码管显示。硬件利用效率高,驱动程序容易理解和编程。方案三:液晶显示采用LCD 液晶显示,显示的位数多,由单片机驱动。此方案有美观、显示清晰多样的优点。但同时液晶显示器的驱动程序复杂,编程困难,成本高,价格昂贵,浪费大量的资源。(4)数码管驱动选择采用74LS47 驱动数码管和74LS138 译码器来控制数码管的COM 端,因为74LS47 只能驱动共阳数码管,而74LS138 的输出为低电平有效。因此,在74LS138 的输出端加入反向器才可以接到数码管的COM 端。74LS04

10、 芯片的选择采用74LS04 芯片做反向器,74LS47 是集成六反向器芯片,刚好可驱动六个数码管,但是它的输入输出引脚两边均分布,造成跳线较多给电路焊接时带来麻烦影响了整块电路的美观度。三极管的选择三极管也具有反向的功能,采用的是PNP 管,电路的连接中又方便,减少了跳线提高美观度。(5)报警模块的选择采用语音报警,虽然可以使整个系统更加完美,但是会使程序更加复杂而且提高了整个系统的造价。采用发光二极管和蜂鸣器来报警,可以发出声光报警且降低了成本。2.1.3系统各模块的最终方案结合整个系统的功能、成本、美观度等综合考虑,用AT89S51 单片机为主控模块、用44 键盘输入、用74LS47、7

11、4LS138 和三极管来驱动六个数码管做显示模块、用发光二极管和蜂鸣器做为报警模块。系统框图如图2.2图2.2系统框图第三章 系统的硬件设计与实现3.1 系统硬件概述 本系统是通过键盘扫描模块,既能够显示数据并且还能修改密码,开锁密码,具有强大的功能,通过键盘扫描模块输入到单片机控制系统AT89S52 中。然后通过数码显示模块来显示我们所要有数据,还有一个就是报警模块,当输入的密码相同时,则显示模块的灯点亮,当输入的密码是错误时,绿灯点亮,报警模块立刻发出声音报警。为了达到设定的功能,本装置键盘扫描模块、单片机控制模块、数码管显示模块,声光报警模块等4 模块组成。3.2主要单元电路的设计3.2

12、.1键盘扫描模块电路的设计如图3.1 所示,本模块的作用是进行键盘的扫描,首先判定有没有键被按下,然后再判定被按键的位置,因为键盘矩阵有键被按下时,被按键处的行线和列线被接通,使得开关之间接通。当扫描表明有按键被按下之后,紧接着应是进行去抖动处理,一般我们采用的是软件来去抖动,软件方法则是采用时间延迟以躲过抖动,待行线上状态稳定之后,再进行行状态输入。 图3.1 键盘扫描模块3.2.2单片机控制模块电路的设计单片机作为本装置的核心器件,在系统中起到控制声光报警、以及数码动态显示的作用,其中采用的是AT89S51,AT89S51 是标准的40 引脚双列直插式集成电路芯片,有4 个八位的并行双向I

13、/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

14、声光报警模块电路的设计图3.3 声光报警模块如图3.3 所示,本模块的作用是当开锁按钮被按下时,如果数码管当前显示值相同,则绿灯点亮,当输入的数与密码不同时,则红灯点亮并且蜂鸣器立刻发出声音报警。3.2.4数码显示模块电路的设计如图3.4 所示,该模块主要由74LS47 译码器,74LS138 译码器和6 个8 段数码显示管组成,如图所示,从编码器输送过来的数据经过两片74LS47 芯片和74LS138 蕊片译码后,传送到8 段数码显示管,显示管根据接收到数据电平的高低来显示不同的数据。图3.4 数码显示模块从图中可以看到单片机P2 口低4 位连接一片74LS47 七段译码器,由于74LS47

15、 是共阳极数码管的七段译码器,因此要选用共阳极的数码管。单片机P2.0-P21.3 的输出信号经过74LS47 译码后就可以驱动数码管的段码显示相应的数字,另外在74LS47 的输出与数码管之间还要接上7 个470 欧姆的限流电阻,以防止有过大的电流流过时烧坏数码管。P2.4-P2.6 口接于3-8 译码器74LS138 的三个输入端,而74LS138 的输出端通过三极管分别接于八个数码管的公共极。通过由P1.4-P1.6 口的输出量来控制74LS138 选择点亮某一个数码管。由于74LS138 是低电位有效,所以应该采用PNP 型的三极管来驱动数码管,在此三极管相当于一个开关的作用依靠这两块

16、芯片就可以控制数码管实现动态扫描显示。例如:使六个数码管显示123456。在第一时刻输出“0001”给74LS47,让数码管显示“1”,同时输出“000” 给74LS138,选择第一个数码管工作,其余数码管不工作,这样第一时刻就只有第一个数码管显示“1”,其余数码管均不显示。同理第二时刻也只有第二个数码管显示“2”,依次类推第N 时刻就只有第N 个数码管显示“N”。人的肉眼只能分辨0.1 秒内的变化,所以如果以每一时刻0.01 秒的频率循环变化,看起来就感觉每一个数码管都被点亮了,显示“123456”。 第4章 系统的软件设计 4.1系统软件的概述本系统的工作流程为:通过键盘扫描来实现三种不同

17、的功能,刚开始是设置的初始密码123456 通过数码管来显示,用10 个按键来输入0 到9 这从右到左依次输入,还用三个按键来显示密码,修改密码,开锁等。当开锁按钮被按下时,如果数码管与当前显示值相同,则点亮LED1;当数码管值不同时,则点亮LED2,并且立刻发出报警声音。主程序流程图图4.1 主程序流程图主程序说明:单片机复位后进入初始化把初始密码“123456”依次存放到40H 到45H六个单元中,把30H 到35H 六个单设置为六位数码管显示数据的存放地址,设置完毕调用自检子程序进入自检状态,自检完毕调用扫描子程序对键盘进行扫描,如果有按键被按下则跳转到相应的子程序,再调用显示子程序把3

18、0H 到35H 六个单元的数据给六个数码管显示出来。显示完毕就跳加扫描子程序继续对键盘进行扫描,如此循环。4.2子程序的设计4.2.1自检子程序图4.2 自检子程序流程图自检子程序说明:进入自检子程序后先把循环次数30 赋给38H 单元,把移位次数6 赋给R0,再把08H 赋给P2 口显示,把08H 移位后再赋给P2 口,循环6 次完成一次显示,循环显示完30 次完成自检。4.2.2键盘扫描子程序图4.3 键盘扫描子程序流程图键盘扫描程序说明:给键盘所连接的P2 口赋扫描码,例如:MOV P2,#0FEH,则扫描最后一行按键。写入这个扫描码后P2 口的高4 位写入“1”,被设为输入状态,低4位

19、中只有P2.0 为“0”。而P2 口的高4 位通过按键与低4 位相连,所以此时从P2 口的高4位就可以读入低4 位的数据。与被按下的键相连接的高位口,读入的数据为“0”,其它高位口读入的为“1”从而识别出是哪一个按键被按下。随后再依次对P2 口写入FDH、FBH、07H,分别扫描第三、第二、第一行,这样交替循环便可完成对44 键盘的扫描。4.2.3移位子程序图4.4 移位子程序流程图移位程序说明:进入移位子后就把30H 到35H 六个单元里的数据向右移一位,移位完毕后把35H 单元里的数据推出去,把30H 单元空出。4.2.4开锁子程序开锁程序说明:判断30H 到35H 单元里的数据与40H

20、到45H 单元里的数据是否相同,如果相同,开锁成功绿灯亮;如果不相同,开锁不成功报警红灯亮且蜂鸣器响。如图4.5所示图 4.5 开锁子程程序流程图4.2.5修改密码子程序图 4.6 修改密码子程序流程图修改密码程序说明:判断绿灯是否已点亮,点亮则说明已开锁成功可修改密码,否则不修改。第5章系统仿真与调试5.1系统仿真过程开始时的数码管显示“-”,等待输入密码。如图5.1所示:图5.1 数码管显示密码输入时显示F并依次左移,如密码输入错误可以使用“clr”键进行清除,然后可以从新输入。如图5.2所示:图5.2 数码管显示 F密码输入正确时,数码管显示简单的便是“pass”,同时绿色指示灯亮起,开

21、锁电路运行,锁被打开。如图5.3所示:图5.3 数码管显pass密码是输入错误时,数码管提示“error 1”,如果继续输入第二次、第三次错误的时,数码管将提示“error 2”和“error 3”,同时报警器报警提示,红色指示灯闪烁,键盘锁死,防止继续操作。如图5.4所示:图5.4数码管显示当需要关闭密码锁的时候,直接按下键盘上的“lock”键即可锁定。数码管恢复初始“-”,黄色指示灯亮起。如图5.5所示:图5.55.2仿真调试中遇到的困难及解决方法(1)问题描述:密码在未输入6位的情况下,摁下“enter”键, 数码管显示“false”,无法返回初始输入界面“-”。解决办法:“enter”

22、键跳转时,跳转到开始即可。(2)问题描述:密码正确输入,“enter”键确认后,数码管显示“pass”,这时直接按“clr”键,屏幕上显示“error 1”,并且报警,数码管无法恢复正常状态。原因及解决办法:“clr”的后面跳转不对,需要加一个标志位使数码管的显示恢复“pass”。 (3)问题描述:在系统正常运行后,如果密码锁被用户打开,此时用户可以按下“lock”键对其重新上锁,但在运行过程中,虽然系统可以重新上锁,但会在重新上锁前,出现报警,并且数码管显示“error 1”。因为系统运行的速度较快,按键还没有复原,键盘的检测便又一次检测到了该按键,重复的操作了“lock”键,系统提示错误。

23、所以应在检测按键时,等待按键的复原,再进行跳转执行该按键的程序指令。结 论在没有做毕业设计前觉得毕业设计只是对所学知识的单纯总结,但是通过这次做毕业设计发现自己的看法有点太片面。毕业设计不仅是对前面所学知识的一种检验,而且也是对自己能力的一种提高。通过这次毕业设计使我明白了自己原来知识还比较欠缺。自己要学习的东西还太多,以前老是觉得自己什么东西都会,什么东西都懂,有点眼高手低。通过这次课程设计,我才明白学习是一个长期积累的过程,在以后的工作、生活中都应该不断的学习,努力提高自己知识和综合素质。在这次毕业设计中也使我们的同学关系更进一步了,同学之间互相帮助,有什么不懂的大家在一起商量,听听不同的

24、看法对我们更好的理解知识。在多人做项目的时候,队员的交流是非常重要的,是很关键的部分。这次的毕业设计也让我看到了团队的力量,我认为我们的工作是一个团队的工作,团队需要个人,个人也离不开团队,必须发扬团结协作的精神。刚开始的时候,大家就分配好了各自的任务,大家有的绘制原理图,进行仿真实验,有的积极查询相关资料,并且经常聚在一起讨论各个方案的可行性。在毕业设计中只有一个人知道原理是远远不够的,必须让每个人都知道,否则一个人的错误,就有可能导致整个工作失败。团结协作是我们成功的一项非常重要的保证。不管学会的还是学不会的的确觉得困难比较多,真是万事开头难,不知道如何入手。最后终于做完了有种如释重负的感

25、觉。此外,还得出一个结论:知识必须通过应用才能实现其价值!有些东西以为学会了,但真正到用的时候才发现是两回事,所以我认为只有到真正会用的时候才是真的学会了。程序的设计思想的精巧的重要性,是不管怎么说都不为过的,好的设计可以让大家很快的明白你的思想,而且很方便的来实现它。良好的编程习惯,它可以使你的程序很方便的被别人阅读,也很方便的被更改,所以可以的话,尽可能多的写出注释,没有人会闲你写的太多。在设计过程中,通过查阅大量有关资料,与同学交流经验和自学,并向老师请教等方式,使自己学到了不少知识,也经历了不少艰辛,但收获同样巨大。在整个设计中我懂得了许多东西,也培养了我独立工作的能力,树立了对自己工

26、作能力的信心,相信会对今后的学习工作生活有非常重要的影响。而且大大提高了动手的能力,使我充分体会到了在创造过程中探索的艰难和成功时的喜悦。虽然这个设计做的也不太好,但是在设计过程中所学到的东西是这次毕业设计的最大收获和财富,使我终身受益。对我而言,知识上的收获重要,精神上的丰收更加可喜。让我知道了学无止境的道理。我们每一个人永远不能满足于现有的成就,人生就像在爬山,一座山峰的后面还有更高的山峰在等着你。挫折是一份财富,经历是一份拥有。致 谢本论文虽然凝聚着自己的汗水,但却不是个人智慧的产品,没有父母和朋友的帮助和支持,我在大学的学术成长肯定会大打折扣。当我打完毕业论文的最后一个字符,涌上心头的不是长途跋涉后抵达终点的欣喜,而是源自心底的诚挚谢意。我首先要感谢我的导师李洁老师,对我的构思以及论文的内容不厌其烦的进行多次指导和悉心指点,李老师多次询问进程,并为我指点迷津,帮助我开拓研究思路,精心点拨、热忱鼓励。李老师一丝不苟的作风,严谨求实的态度,踏踏实实的精神,不仅授我以文,而且教我做人,虽历时三载,却给以终生受益无穷之道。对李老师的感激之情是无法用言语表达的,使我在完成论

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1