1、四川师范大学成都学院设计报告11四川师范大学成都学院信号分析与处理/电路与电子技术/高级语言程序课程设计基于单片机的电子密码锁系统设计学生姓名 邓洪权学 号 2014101087所在学院 通信工程学院专业名称 通信工程班 级 2014 级广电班指导教师 周炜成 绩四川师范大学成都学院二一六年十二月四川师范大学成都学院设计报告22课程设计任务书学生姓名 邓洪权 学生学号 2014101087学生专业 14 通信工程 学生班级 广电班指导教师 周炜 职 称 讲师发题日期 2016 年 11 月 18 日 完成日期 2016 年 12 月 30 日设计题目 基于单片机的电子密码锁设计目的:设计一个电
2、子密码锁 ,用 51 单片机和部分硬件电路实现密码锁的功能。具体任务及要求:通过单片机编写密码程序,并用74LS47和3-8译码器74LS138驱动的数码管来显示密码。数码管可以时时显示当前输入的四位数字。当输入密码正确时,对应的指示灯亮;当密码不正确时,另一个对应的指示灯亮且并且发出声音报警。课程设计进度安排:序号 内容安排 时间1 公布课程设计题目及任务书,学生选题。 11 月 18 日-22 日2 课程设计具体实施 11 月 23 日-12 月 21 日3 学生提交课程设计报告、总结 12 月 22 日-12 月 25 日4 指导教师提交报告、上报成绩、成绩汇总 12 月 26 日-12
3、 月 30 日课程设计参考文献:1郇玉龙.单片机实验教学仿真系统的设计与开发M.山东:山东师范大学出版社, 2008:51-53,59.2彭为.单片机典型系统设计实例精讲M.北京:电子工业出版社,2006:11-13. 3徐金增.单片机编程仿真实验系统设计与实现M.山东:山东师范大学出版社, 2009: 26-28. 4李广第等.单片机基础M.北京:北京航空航天大学出版社,2001:03-06. 指导教师签字院长审核签字四川师范大学成都学院设计报告33摘 要随着人们生活水平的提高,如何实现家庭防盗这一问题也变得尤其突出,传统的机械锁由于其构造简单,安全性能低,无法满足人们的需求。随着电子产品向
4、智能化和微型化的不断发展,单片机已成为电子产品研制和开发中首选的控制器,所以具有防盗报警功能的电子密码控制系统逐渐代替传统的机械式密码控制系统,克服了机械式密码控制的密码量少,安全性能差的缺点。通过单片机编写密码程序,并用74LS47和3-8译码器74LS138驱动的数码管来显示密码。数码管可以时时显示当前输入的四位数字。当输入密码正确时,对应的指示灯亮;当密码不正确时,另一个对应的指示灯亮且并且发出声音报警。关键词: 密码锁 ,单片机 ,报警四川师范大学成都学院设计报告44ABSTRACTWith the improvement of peoples living standards, it
5、 has become particularly prominent about how to achieve Anti-theft family. The traditional mechanical lock has such shortcoming as simple structure , Low security ,it cant meet peoples demands.As electronic products are developing towards intelligence and minimization, single-chip computers(SCM) hav
6、e become the first choice for controllers in the development of electronic products. Therefore, the electronic anti-theft alarm function password control system and gradually replace the traditional mechanical password control system, Overcome the low mechanical password control password and the sho
7、rtcomings of poor safety performance,the password program written by SCM, and 3-8 with 74LS47 Decoder 74LS138-driven digital control to display the password。Digital tube can always display the current input of six digits。When you enter the password correctly, the corresponding indicator light;When t
8、he password is incorrect, the other, and the corresponding indicator light and sound alarm。Keywords: Combination lock, Single-chip microcomputer, alarm四川师范大学成都学院设计报告55目 录摘 要 .3ABSTRACT .4目 录 .5第 1章 绪论 .61.1 电子密码锁简介 .61.2 电子密码锁的发展趋势 .61.3 本设计所要实现的目标 .7第 2章 系统方案选择与论证 .82.1系统基本方案 .82.1.1系统框图 .82.1.2 各模
9、块方案选择与论证 .82.1.3系统各模块的最终方案 .10第三章 系统的硬件设计与实现 .113.1 系统硬件概述 .113.2主要单元电路的设计 .113.2.1键盘扫描模块电路的设计 .113.2.2单片机控制模块电路的设计 .123.2.3声光报警模块电路的设计 .133.2.4数码显示模块电路的设计 .13第 4章 系统的软件设计 .154.1系统软件的概述 .154.2子程序的设计 .164.2.1自检子程序 .164.2.2键盘扫描子程序 .174.2.3移位子程序 .184.2.4开锁子程序 .184.2.5修改密码子程序 .19第 5章系统仿真与调试 .205.1系统仿真过程
10、 .205.2仿真调试中遇到的困难及解决方法 .21结 论 .22致 谢 .23参考文献 .24附录 1 系统电路图 .25附录 2系统程序 .26附录 3 实物图 .32附录 4 系统使用说明书 .35四川师范大学成都学院设计报告66第 1章 绪论1.1 电子密码锁简介电子密码锁是一种通过密码输入来控制电路或是芯片工作,从而控制机械开关的闭合,完成开锁、闭锁任务的电子产品。它的种类很多,有简易的电路产品,也有基于芯片的性价比较高的产品。现在应用较广的电子密码锁是以芯片为核心,通过编程来实现的。其性能和安全性已大大超过了机械锁。其特点如下:(1)保密性好,编码量多,远远大于弹子锁。随机开锁成功
11、率几乎为零。(2)密码可变,用户可以随时更改密码,防止密码被盗,同时也可以避免因人员的更替而使锁的密级下降。(3)误码输入保护,当输入密码多次错误时,报警系统自动启动。(4)无活动零件,不会磨损,寿命长。(5)使用灵活性好,不像机械锁必须佩带钥匙才能开锁。(6) 电子密码锁操作简单易行,一学即会1.2 电子密码锁的发展趋势在日常生活和工作中,住宅与部门的安全防范、单位的文件档案、财务报表以及一些个人资料的保存多以加锁的办法来解决。目前门锁主要用弹子锁,其钥匙容易丢失;保险箱主要用机械密码锁,其结构较为复杂,制造精度要求高,成本高,且易出现故障,人们常需携带多把钥匙,使用极不方便,且钥匙丢失后安
12、全性即大打折扣。针对这些锁具给人们带来的不便若使用机械式钥匙开锁,为满足人们对锁的使用要求,增加其安全性,用密码代替钥匙的密码锁应运而生。它的出现为人们的生活带来了很大的方便,有很广阔的市场前景。由于电子器件所限,以前开发的电子密码锁,其种类不多,保密性差,最基本的就是只依靠最简单的模拟电子开关来实现的,制作简单但很不安全,在后为多是基于 EDA 来实现的,其电路结构复杂,电子元件繁多,也有使用早先的 20 引角的 2051 系列单片机来实现的,但密码简单,易破解。随着电子元件的进一步发展,电子密码锁也出现了很多的种类,功能日益强大,使用更加方便,安全保密性更强,由以前的单密码输入发展到现在的
13、,密码加感应元件,实现了真真的电子加密,用户只有密码或电子钥匙中的一样,是打不开锁的,随着电子元件的发展及人们对保密性需求的提高出现了越来越多的电子密码锁。出于安全、方便等方面的需要许多电子密码锁已相继问世。但这类产品的特点是针对特定有效卡、指纹或声音有效,且不能实现远程控制,只能适用于保密要求高且供个人使用的箱、柜、房间等。由于数字、字符、图形图像、人体生物特征和时间等要素均可成为钥匙的电子信息,组合使用这些信息能够使电子防盗锁获得高度的保密四川师范大学成都学院设计报告77性,如防范森严的金库,需要使用复合信息密码的电子防盗锁,这样对盗贼而言是“道高一尺、魔高一丈” 。组合使用信息也能够使电
14、子防盗锁获得无穷扩展的可能,使产品多样化,对用户而言是“千挑百选、自得其所” 。可以看出组合使用电子信息是电子密码锁以后发展的趋势。1.3 本设计所要实现的目标本次设计使用 ATMEL 公司的 AT89S51 实现一基于单片机的电子密码锁的设计,其主要具有如下功能: (1)密码通过键盘输入,若密码正确,则将锁打开。 (2)报警、锁定键盘功能。密码输入错误数码显示器会出现错误提示,若密码输入错误次数超过 3 次,蜂鸣器报警并且锁定键盘。 电子密码锁的设计主要由三部分组成:44 矩阵键盘接口电路、密码锁的控制电路、输出八段显示电路。另外系统还有 LED 提示灯,报警蜂鸣器等。 密码锁设计的关键问题
15、是实现密码的输入、清除、更改、开锁等功能: (1)密码输入功能:按下一个数字键,一个“”就显示在最右边的数码管上,同时将先前输入的所有“”向左移动一位。 (2)密码清除功能:当按下清除键时,清除前面输入的所有值,并清除所有显示。(3)开锁功能:当按下开锁键,系统将输入与密码进行检查核对,如果正确锁打开,否则不打开。 主要的设计实施过程:首先,选用 ATMEL 公司的单片机 AT89S51,以及选购其他电子元器件。第二步,使用 DXP 2004 设计硬件电路原理图,并设计 PCB 图完成人工布线(后因 PCB 板损坏决定采用万能板焊接的方法) 。第三步,使用 Keil uVision3 软件编写
16、单片机的 C 语言程序、仿真、软件调试。第四部,使用 PROTEUS 软件进行模拟软、硬件调试。最后,联合软、硬件调试电路板,完成本次毕业设计。四川师范大学成都学院设计报告88第 2章 系统方案选择与论证2.1系统基本方案2.1.1系统框图简易电子密码锁是由 5 个部分组成,如图 2.1 所示:键盘模块电源模块报警模块显示模块单片机控制模块图 2.1 电子密码锁控制系统电源模块:由+5V 的直流稳压电源供电给整个系统工作。键盘模块:由16 个轻触式开关组成。单片机控制模块:采用支持ISP 在线编程技术的单片机AT89S51 便于烧写程序。显示模块:采用六个数码管时时显示当前输入数据;报警模块:
17、采用发光二极管和蜂鸣器做声光报警。2.1.2 各模块方案选择与论证(1)单片机的选择方案一:采用 AT89C51 单片机,它可以与其它 51 系列的单片机兼容、内部 ROM 全部采用FLASH ROM、最高时钟频率可达 24MHz 且能以 3V 超低压工作。但不支持 ISP 在线编程技术、内部 ROM 仅为 4KB 不利于功能扩展。四川师范大学成都学院设计报告99方案二:采用 AT98S51 单片机,它具同时被 AT98C51 的全部功能外,还支持 ISP 在线编程技术且内部 ROM 为 8KB 有利于功能扩展。(2)键盘的选择方案一:使用独立式按键来控制使用独立式按键来控制数码管的显示,这样
18、需要很多的按键,每个按键实现一个能,易于控制,程序编写简单,但是每个按键都要接上拉电阻,占用了单片机大量的I/O 接口资源,要对单片机外扩I/O 口,并且在电路焊接方面又不方便,还要浪费大量的资源,提高了成本。方案二:采用矩阵式键来控制把按键按行列组成矩阵,在行列交点上都对应有一个键,这样使用的按键要少,为判定有无键被按下以及被按键的位置,这种称为键扫描法。这样虽然提高了编程难度,但是节约了单片机大量的 I/O 口,免去了上拉电阻为焊接带来了方便,提高了整块电路板的美观度。(3)显示模块的选择方案一:数码管静态显示采用LED 数码管静态显示方法,电路容易理解,驱动程序简单,但需要每个数码管都要
19、一块74LS47 来驱动显示,增高了成本,浪费系统硬件资源,而需要占用单片机多个I/O 口。方案二:数码管动态显示采用 LED 数码管动态扫显示方法,只需一块数码管驱动器芯片和一块译码器芯片就可以驱动多个数码管,价格便宜,只需要 7 个 I/O 口就可以同时驱动 8 个数码管显示。硬件利用效率高,驱动程序容易理解和编程。方案三:液晶显示采用 LCD 液晶显示,显示的位数多,由单片机驱动。此方案有美观、显示清晰多样的优点。但同时液晶显示器的驱动程序复杂,编程困难,成本高,价格昂贵,浪费大量的资源。(4)数码管驱动选择采用74LS47 驱动数码管和74LS138 译码器来控制数码管的COM 端,因
20、为74LS47 只能驱动共阳数码管,而74LS138 的输出为低电平有效。因此,在74LS138 的输出端加入反向器才可以接到数码管的COM 端。方案一:74LS04 芯片的选择四川师范大学成都学院设计报告1010采用74LS04 芯片做反向器,74LS47 是集成六反向器芯片,刚好可驱动六个数码管,但是它的输入输出引脚两边均分布,造成跳线较多给电路焊接时带来麻烦影响了整块电路的美观度。方案二:三极管的选择三极管也具有反向的功能,采用的是 PNP 管,电路的连接中又方便,减少了跳线提高美观度。(5)报警模块的选择方案一:采用语音报警,虽然可以使整个系统更加完美,但是会使程序更加复杂而且提高了整个系统的造价。方案二:采用发光二极管和蜂鸣器来报警,可以发出声光报警且降低了成本。2.1.3系统各模块的最终方案结合整个系统的功能、成本、美观度等综合考虑,用 AT89S51 单片机为主控模块、用 44 键盘输入、用 74LS47、74LS138 和三极管来驱动六个数码管做显示模块、用发光二极管和蜂鸣器做为报警模块。系统框图如图 2.244 键盘输入AT89S51六位数码管显示直流稳压电源 声光报警图 2.2 系统框图