基于单片机电子密码锁设计毕业论文.doc
- 文档编号:2613861
- 上传时间:2023-05-04
- 格式:DOC
- 页数:53
- 大小:9.17MB
基于单片机电子密码锁设计毕业论文.doc
《基于单片机电子密码锁设计毕业论文.doc》由会员分享,可在线阅读,更多相关《基于单片机电子密码锁设计毕业论文.doc(53页珍藏版)》请在冰点文库上搜索。
(2012届)
专科毕业设计(论文)资料
题目名称:
基于单片机电子密码锁设计
学院(部):
电气与信息工程学院
专业:
应用电子技术
学生姓名:
班级:
学号
指导教师姓名:
职称
最终评定成绩:
湖南工业大学教务处
2012届
专科毕业设计(论文)资料
第一部分毕业论文
(2012届)
专科毕业设计(论文)
学院(部):
电气与信息工程学院
专业:
应用电子技术
学生姓名:
班级:
学号
指导教师姓名:
职称
最终评定成绩
2012年6月
湖南工业大学专科毕业设计(论文)
摘要
随着人们生活水平的提高,如何实现家庭防盗这一问题也变得尤其突出,传统的机械锁由于其构造简单,安全性能低,无法满足人们的需求。
随着电子产品向智能化和微型化的不断发展,单片机已成为电子产品研制和开发中首选的控制器,所以具有防盗报警功能的电子密码控制系统逐渐代替传统的机械式密码控制系统,克服了机械式密码控制的密码量少,安全性能差的缺点。
通过单片机编写密码程序,并用74LS47和3-8译码器74LS138驱动的数码管来显示密码。
数码管可以时时显示当前输入的四位数字。
当输入密码正确时,对应的指示灯亮;当密码不正确时,另一个对应的指示灯亮且并且发出声音报警。
关键词:
密码锁,单片机,报警
IV
湖南工业大学专科毕业设计(论文)
ABSTRACT
Withtheimprovementofpeople'slivingstandards,ithasbecomeparticularlyprominentabouthowtoachieveAnti-theftfamily.Thetraditionalmechanicallockhassuchshortcomingassimplestructure,Lowsecurity,itcan'tmeetpeople'sdemands.Aselectronicproductsaredevelopingtowardsintelligenceandminimization,single-chipcomputers(SCM)havebecomethefirstchoiceforcontrollersinthedevelopmentofelectronicproducts.Therefore,theelectronicanti-theftalarmfunctionpasswordcontrolsystemandgraduallyreplacethetraditionalmechanicalpasswordcontrolsystem,Overcomethelowmechanicalpasswordcontrolpasswordandtheshortcomingsofpoorsafetyperformance,thepasswordprogramwrittenbySCM,and3-8with74LS47Decoder74LS138-drivendigitalcontroltodisplaythepassword。
Digitaltubecanalwaysdisplaythecurrentinputofsixdigits。
Whenyouenterthepasswordcorrectly,thecorrespondingindicatorlight;Whenthepasswordisincorrect,theother,andthecorrespondingindicatorlightandsoundalarm。
Keywords:
Combinationlock,Single-chipmicrocomputer,alarm
目录
摘要 I
ABSTRACT II
目录 III
第1章绪论 1
1.1电子密码锁简介 1
1.2电子密码锁的发展趋势 1
1.3本设计所要实现的目标 2
第2章系统方案选择与论证 3
2.1系统基本方案 3
2.1.1系统框图 3
2.1.2各模块方案选择与论证 3
2.1.3系统各模块的最终方案 5
第三章系统的硬件设计与实现 6
3.1系统硬件概述 6
3.2主要单元电路的设计 6
3.2.1键盘扫描模块电路的设计 6
3.2.2单片机控制模块电路的设计 7
3.2.3声光报警模块电路的设计 8
3.2.4数码显示模块电路的设计 8
第4章系统的软件设计 10
4.1系统软件的概述 10
4.2子程序的设计 11
4.2.1自检子程序 11
4.2.2键盘扫描子程序 12
4.2.3移位子程序 13
4.2.4开锁子程序 13
4.2.5修改密码子程序 14
第5章系统仿真与调试 15
5.1系统仿真过程 15
5.2仿真调试中遇到的困难及解决方法 16
结论 17
致谢 18
参考文献 19
附录1系统电路图 20
附录2系统程序 21
附录3实物图 27
附录4系统使用说明书 30
湖南工业大学专科毕业设计(论文)
第1章绪论
1.1电子密码锁简介
电子密码锁是一种通过密码输入来控制电路或是芯片工作,从而控制机械开关的闭合,完成开锁、闭锁任务的电子产品。
它的种类很多,有简易的电路产品,也有基于芯片的性价比较高的产品。
现在应用较广的电子密码锁是以芯片为核心,通过编程来实现的。
其性能和安全性已大大超过了机械锁。
其特点如下:
(1)保密性好,编码量多,远远大于弹子锁。
随机开锁成功率几乎为零。
(2)密码可变,用户可以随时更改密码,防止密码被盗,同时也可以避免因人员的更替而使锁的密级下降。
(3)误码输入保护,当输入密码多次错误时,报警系统自动启动。
(4)无活动零件,不会磨损,寿命长。
(5)使用灵活性好,不像机械锁必须佩带钥匙才能开锁。
(6)电子密码锁操作简单易行,一学即会
1.2电子密码锁的发展趋势
在日常生活和工作中,住宅与部门的安全防范、单位的文件档案、财务报表以及一些个人资料的保存多以加锁的办法来解决。
目前门锁主要用弹子锁,其钥匙容易丢失;保险箱主要用机械密码锁,其结构较为复杂,制造精度要求高,成本高,且易出现故障,人们常需携带多把钥匙,使用极不方便,且钥匙丢失后安全性即大打折扣。
针对这些锁具给人们带来的不便若使用机械式钥匙开锁,为满足人们对锁的使用要求,增加其安全性,用密码代替钥匙的密码锁应运而生。
它的出现为人们的生活带来了很大的方便,有很广阔的市场前景。
由于电子器件所限,以前开发的电子密码锁,其种类不多,保密性差,最基本的就是只依靠最简单的模拟电子开关来实现的,制作简单但很不安全,在后为多是基于EDA来实现的,其电路结构复杂,电子元件繁多,也有使用早先的20引角的2051系列单片机来实现的,但密码简单,易破解。
随着电子元件的进一步发展,电子密码锁也出现了很多的种类,功能日益强大,使用更加方便,安全保密性更强,由以前的单密码输入发展到现在的,密码加感应元件,实现了真真的电子加密,用户只有密码或电子钥匙中的一样,是打不开锁的,随着电子元件的发展及人们对保密性需求的提高出现了越来越多的电子密码锁。
出于安全、方便等方面的需要许多电子密码锁已相继问世。
但这类产品的特点是针对特定有效卡、指纹或声音有效,且不能实现远程控制,只能适用于保密要求高且供个人使用的箱、柜、房间等。
由于数字、字符、图形图像、人体生物特征和时间等要素均可成为钥匙的电子信息,组合使用这些信息能够使电子防盗锁获得高度的保密性,如防范森严的金库,需要使用复合信息密码的电子防盗锁,这样对盗贼而言是“道高一尺、魔高一丈”。
组合使用信息也能够使电子防盗锁获得无穷扩展的可能,使产品多样化,对用户而言是“千挑百选、自得其所”。
可以看出组合使用电子信息是电子密码锁以后发展的趋势。
1.3本设计所要实现的目标
本次设计使用ATMEL公司的AT89S51实现一基于单片机的电子密码锁的设计,其主要具有如下功能:
(1)密码通过键盘输入,若密码正确,则将锁打开。
(2)报警、锁定键盘功能。
密码输入错误数码显示器会出现错误提示,若密码输入错误次数超过3次,蜂鸣器报警并且锁定键盘。
电子密码锁的设计主要由三部分组成:
4×4矩阵键盘接口电路、密码锁的控制电路、输出八段显示电路。
另外系统还有LED提示灯,报警蜂鸣器等。
密码锁设计的关键问题是实现密码的输入、清除、更改、开锁等功能:
(1)密码输入功能:
按下一个数字键,一个“-”就显示在最右边的数码管上,同时将先前输入的所有“-”向左移动一位。
(2)密码清除功能:
当按下清除键时,清除前面输入的所有值,并清除所有显示。
(3)开锁功能:
当按下开锁键,系统将输入与密码进行检查核对,如果正确锁打开,否则不打开。
主要的设计实施过程:
首先,选用ATMEL公司的单片机AT89S51,以及选购其他电子元器件。
第二步,使用DXP2004设计硬件电路原理图,并设计PCB图完成人工布线(后因PCB板损坏决定采用万能板焊接的方法)。
第三步,使用KeiluVision3软件编写单片机的C语言程序、仿真、软件调试。
第四部,使用PROTEUS软件进行模拟软、硬件调试。
最后,联合软、硬件调试电路板,完成本次毕业设计。
第2章系统方案选择与论证
2.1系统基本方案
2.1.1系统框图
简易电子密码锁是由5个部分组成,如图2.1所示:
键盘模块
电源模块
报警模块
显示模块
单
片
机
控
制
模
块
图2.1电子密码锁控制系统
电源模块:
由+5V的直流稳压电源供电给整个系统工作。
键盘模块:
由16个轻触式开关组成。
单片机控制模块:
采用支持ISP在线编程技术的单片机AT89S51便于烧写程序。
显示模块:
采用六个数码管时时显示当前输入数据;
报警模块:
采用发光二极管和蜂鸣器做声光报警。
2.1.2各模块方案选择与论证
(1)单片机的选择
方案一:
采用AT89C51单片机,它可以与其它51系列的单片机兼容、内部ROM全部采用FLASHROM、最高时钟频率可达24MHz且能以3V超低压工作。
但不支持ISP在线编程技术、内部ROM仅为4KB不利于功能扩展。
方案二:
采用AT98S51单片机,它具同时被AT98C51的全部功能外,还支持ISP在线编程技术且内部ROM为8KB有利于功能扩展。
(2)键盘的选择
方案一:
使用独立式按键来控制
使用独立式按键来控制数码管的显示,这样需要很多的按键,每个按键实现一个能,易于控制,程序编写简单,但是每个按键都要接上拉电阻,占用了单片机大量的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
4×4键盘输入
AT89S51
六位数码管显示
直流稳压电源
声光报警
图2.2系统框图
第三章系统的硬件设计与实现
3.1系统硬件概述
本系统是通过键盘扫描模块,既能够显示数据并且还能修改密码,开锁密码,
具有强大的功能,通过键盘扫描模块输入到单片机控制系统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段数码显示管,显示管根据接收到数据电平的高低来显示不同的数据。
图3.4数码显示模块
从图中可以看到单片机P2口低4位连接一片74LS47七段译码器,由于74LS47是共阳极数码管的七段译码器,因此要选用共阳极的数码管。
单片机P2.0-P21.3的输出信号经过74LS47译码后就可以驱动数码管的段码显示相应的数字,另外在74LS47的输出与数码管之间还要接上7个470欧姆的限流电阻,以防止有过大的电流流过时烧坏数码管。
P2.4-P2.6口接于3-8译码器74LS138的三个输入端,而74LS138的输出端通过三极管分别接于八个数码管的公共极。
通过由P1.4-P1.6口的输出量来控制74LS138选择点亮某一个数码管。
由于74LS138是低电位有效,所以应该采用PNP型的三极管来驱动数码管,在此三极管相当于一个开关的作用依靠这两块芯片就可以控制数码管实现动态扫描显示。
例如:
使六个数码管显示123456。
在第一时刻输出“0001”给74LS47,让数码管显示“1”,同时输出“000”给74LS138,选择第一个数码管工作,其余数码管不工作,这样第一时刻就只有第一个数码管显示“1”,其余数码管均不显示。
同理第二时刻也只有第二个数码管显示“2”,依次类推第N时刻就只有第N个数码管显示“N”。
人的肉眼只能分辨0.1秒内的变化,所以如果以每一时刻0.01秒的频率循环变化,看起来就感觉每一个数码管都被点亮了,显示“123456”。
第4章系统的软件设计
4.1系统软件的概述
本系统的工作流程为:
通过键盘扫描来实现三种不同的功能,刚开始是设置的初始密码123456通过数码管来显示,用10个按键来输入0到9这从右到左依次输入,还用三个按键来显示密码,修改密码,开锁等。
当开锁按钮被按下时,如果数码管与当前显示值相同,则点亮LED1;当数码管值不同时,则点亮LED2,并且立刻发出报警声音。
主程序流程图
开始
初始化
自检子程序
键盘扫描子程序
有按键按下
显示子程序
循环
相应子程序
图4.1主程序流程图
主程序说明:
单片机复位后进入初始化把初始密码“123456”依次存放到40H到45H六个单元中,把30H到35H六个单设置为六位数码管显示数据的存放地址,设置完毕调用自检子程序进入自检状态,自检完毕调用扫描子程序对键盘进行扫描,如果有按键被按下则跳转到相应的子程序,再调用显示子程序把30H到35H六个单元的数据给六个数码管显示出来。
显示完毕就跳加扫描子程序继续对键盘进行扫描,如此循环。
4.2子程序的设计
4.2.1自检子程序
开始
30H→38H
移位次数6→R0
08H→P1显示
移位
R0=0?
(38H)=0?
关闭自检
返回
NO
NO
YES
YES
图4.2自检子程序流程图
自检子程序说明:
进入自检子程序后先把循环次数30赋给38H单元,把移位次数6赋给R0,再把08H赋给P2口显示,把08H移位后再赋给P2口,循环6次完成一次显示,循环显示完30次完成自检。
4.2.2键盘扫描子程序
开始
初始化
输入扫描码
第一列按键
第二列按键
第三列按键
第四列按键
下一行
超过四行
防抖
取出键值
跳转相应子程序
YES
YES
YES
YES
YES
NO
NO
NO
NO
NO
图4.3键盘扫描子程序流程图
键盘扫描程序说明:
给键盘所连接的P2口赋扫描码,例如:
MOVP2,#0FEH,
则扫描最后一行按键。
写入这个扫描码后P2口的高4位写入“1”,被设为输入状态,低4位中只有P2.0为“0”。
而P2口的高4位通过按键与低4位相连,所以此时从P2口的高4位就可以读入低4位的数据。
与被按下的键相连接的高位口,读入的数据为“0”,其它高位口读入的为“1”从而识别出是哪一个按键被按下。
随后再依次对P2口写入FDH、FBH、07H,分别扫描第三、第二、第一行,这样交替循环便可完成对4×4键盘的扫描。
4.2.3移位子程序
开始
(34H)→(35H)
(33H)→(34H)
(32H)→(33H)
(31H)→(32H)
(30H)→(31H)
相应数据→(30H)
返回
图4.4移位子程序流程图
移位程序说明:
进入移位子后就把30H到35H六个单元里的数据向右移一位,移位完毕后把35H单元里的数据推出去,把30H单元空出。
4.2.4开
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 单片机 电子 密码锁 设计 毕业论文