收藏 分享(赏)

基于单片机的数字密码锁设计毕业设计.doc

上传人:无敌 文档编号:636964 上传时间:2018-04-16 格式:DOC 页数:29 大小:2.62MB
下载 相关 举报
基于单片机的数字密码锁设计毕业设计.doc_第1页
第1页 / 共29页
基于单片机的数字密码锁设计毕业设计.doc_第2页
第2页 / 共29页
基于单片机的数字密码锁设计毕业设计.doc_第3页
第3页 / 共29页
基于单片机的数字密码锁设计毕业设计.doc_第4页
第4页 / 共29页
基于单片机的数字密码锁设计毕业设计.doc_第5页
第5页 / 共29页
点击查看更多>>
资源描述

1、 毕业设计论文题目 基于单片机的数字密码锁设计 学生姓名 李苏喜 学 号 1110064055 所在院系 物理与电信工程学院 专 业 电子信息科学与技术 班 级 电信 1102 指导教师 周平和 2015 年 6 月陕西理工学院毕业设计基于单片机的数字密码锁李苏喜(陕西理工学院物电学院电子信息科学与技术专业 1103班级,陕西 汉中 723000)指导教师:周平和摘要伴随我们生活水平的提高,电子数字密码锁慢慢取代了普通的锁具,电子密码锁在安全性能上比普通锁具更好,普通的机械锁其机构非常的简单,从而在安全性能方面得不到保障,电子密码锁使得我们在安全保障方面更有自信,并且电子密码锁还有不用钥匙、无

2、锁孔、无机械传动、不易损坏、不磨损等优点,很多用户都想简单出门,电子密码锁就能满足他们。本次设计的系统由单片机系统、矩阵键盘、显示电路和报警提示系统组成,系统能完成开锁、密码保护、密码正确与否的提示。单片机是采用的美国 Atmel公司的单片机 AT89C52;矩阵键盘采用44矩阵键盘;显示电路主要是采用液晶显示,具有设计简单、工作电压低、响应速度快、价格低廉等特点;报警系统采用的是 LED指示灯。设计采用 C语言作为主片控制程序,因其具有方法合理、简单易行、成本低、实用等特点。关键词AT89S51 单片机;LCD1602;电子密码锁;44 矩阵键盘The No. three soft land

3、ing trajectory design and control strategyLi Suxi(Grade11, Class1102, Electronic Information Science and Technology, School of Physics and Telecommunication Engineering, Shaanxi University of Technology, Hanzhong 723000, Shaanxi)Tutor: Zhou PingheAbstract:With the improvement of our living standards

4、, the electronic digital lock slowly replaces the ordinary mechanical lock, the electronic password lock is better than the ordinary mechanical lock on the safety factor, the institution of ordinary mechanical lock is very simple, so that it can not guarantee the safety, and electronic lock makes us

5、 more confidence on safety, and the electronic lock has an advantage that without a key, keyhole, mechanical transmission, which is difficult to damage, wearing, and can not easily be deciphered, Many users want to go out simple, the electronic lock can meet their needs. The system consists of MCU s

6、ystem, matrix keyboard, the showing of circuit and alarm system components. password-protected and the showing of password whether it is correct or not. The design uses the C language as the main chips control procedures, which is proved that the design of rational design method is simple, safe and

7、practical.Key words:MCU AT89S51; LCD1602; Electronic lock; 4x4 Matrix keyboard陕西理工学院毕业设计目录引言 .11 数字密码锁功能要求 .12 总体方案 .12.1 方案选择 .22.2 方案实现 .22.3 方案结构框图 .23 硬件电路的设计 .33.1 单片机及单片机最小系统 .33.2 键盘电路 .53.2.1 键盘接口 .53.2.2 键盘的识别方式 .63.2.3 按键去抖动 .63.2.4 44行列式键盘电路 .63.3 LCD1602显示电路 .63.3.1 LCD1602的介绍 .63.3.2 LC

8、D1602显示的外围电路 .83.4 报警提示电路 .83.5 电源输入及电源指示电路 .94 软件设计 .104.1 软件设计思路 .104.2 软件设计的流程图 .10陕西理工学院毕业设计5 系统调试 .125.1 基于单片机的数字密码锁硬件调试 .135.2 基于单片机数字密码锁的软件调试 .135.3 基于单片机数字密码锁的总体调试 .135.3.1 Proteus仿真调试 .135.3.2 软硬联合调试 .146 结论与展望 .14致谢 .14参考文献 .15附录 A .16附录 B .23附录 C .24陕西理工学院毕业设计第 0 页 共 24 页引言在我们日常的生活和工作中,安全

9、防盗已成为社会不可避免的问题。现在的用户都追求具有简洁方便、高安全,易操作等特点的安全锁。因此电子数字密码锁是我们生活中不可少的一部分了,数字密码锁的发展标志着我们生活水平的提高。随着社会经济的日益增长和人们生活水平的提高,安全成为当下人们最关心的问题之一。而锁自古以来就是把守门的铁将军,人们对它要求甚高,即要求可靠地防盗,又要使用方便,这也是制锁者长期以来研制的主题。传统的门锁既要备有大量的钥匙,以及承受钥匙丢失后的麻烦和风险。另外,如:宾馆、办公大楼、仓库、保险柜等,由于装修施工等因素人住时也要把原有的锁胆更换,况且钥匙随身携带也诸多便。随着单片机的问世,出现了带微处理器的密码锁,它除具有

10、电子密码锁的功能外,还引入了智能化、科技化等功能。目前西方发达国家已经大量应用智能门禁系统,可以通过多种的更加安全更加方便可靠的方法来实现大门的管理。但电子密码锁在我国的应用还不广泛,成本还很高,希望通过不断地努力使电子密码锁能够在我国及居民日常生活中得到广泛应用,这也是一个国家生活水平的一种表现。数字密码锁是通过密码输入来控制电路,从而控制机械的闭合,完成开锁和关锁的基本操作的电子产品,它的种类比较多,而此次设计就是基于单片机控制的数字密码锁,它的设计以单片机为核心,通过编程来实现,它负责获取处理用户输入的密码,将其和正确的预置密码比较,产生相应的输出,其性能得到了改善。基于单片机控制的数字

11、密码锁与普通机械锁相比,其具有保密性好、密码可变、寿命长,不用钥匙、无锁孔、无机械传动、不易损坏、不磨损、不易被破译等优点,数字密码锁是利用数字密码来开启的锁具,其重复概率仅为十万分之一,具有很高的安全性;而普通机械锁使用却相对不够安全,通过对社会各阶层千余人的调查,百分之百的人都愿意一身轻松没有任何顾虑的出入家门,都愿意用上一种锁具可使人摆脱钥匙的束缚。因此,设计数字密码锁的市场发展前景极为广阔。1 数字密码锁功能要求本次设计的数字密码锁有密码的输入、有密码的修改功能,并且密码是八位,在输入密码的过程中有显示提示,让用户更好的操作密码锁,而在密码输入正确与否(锁的开否)也需要显示提示,此次设

12、计的时候没有把机械部分设计出来,因此引用了红绿灯的显示(报警提示) ,来代表机械部分的,即表示锁的开闭状态。此次设计实现功能要求如下:1) 加电后,液晶显示英文“Enter Password! ”来欢迎用户。2) 输入密码时,逐位显示“*” ,此次设计的密码为八位,因此为“*” ,以防止泄露密码,这样让用户用的放心。3) 输入密码过程中,如果不小心出现了输入错误,可按“复位”键清除屏幕,取消此次输入,再次输入需要重新输入所有密码。4) 当密码输入完毕时,单片机将输入的密码与设定的密码比较,若密码正确,则绿色发光二极管亮(表示密码锁打开) ,并且显示屏上也有所提示“Password is rig

13、ht!”蜂鸣器报警一秒;若密码不正确,显示屏上同样显示“Password is wrong!”,并且有密码输入错误时,报警三秒,用户可以重新输入,但是一次性有三次输入密码的机会,若是一次性输入了三次错误密码,则报警五秒钟,期间用户就不能再输入密码了,只能等到复位后再重新输入。5) 此次设计的数字密码锁密码可以修改,当输入正确的密码后,你可以根据自己的需要对已设的密码进行修改,修改成功后,有两秒提示音。6) 此次设计的数字密码锁的初始密码为八位密码“11111111” 。2 总体方案陕西理工学院毕业设计第 1 页 共 24 页2.1 方案选择设计本次毕业设计之前构思了两种方案:一种是用以 74L

14、S112 双 JK 触发器构成的数字逻辑电路控制方案;另一种是用以单片机为核心的电子密码锁。第一种方案应用数字电子技术的编、译码技术,并通过按键实现密码的设置、修改及识别功能,在设计的时候考虑到第一种方案需用到较多集成芯片,电路焊接起来很复杂;密码采用脉冲输入法,故对输入脉冲有很高要求,而且密码输入及修改过程也比较繁杂。而第二种方案是采用集成芯片单片机还有其他集成芯片来控制整个电路,灵活准确性好且保密性强还具有扩展功能,并且焊接起来很简单,因此采用了后一种方案,即单片机控制的数字密码锁设计。2.2 方案实现此次设计的基于单片机的数字密码锁,它主要由单片机、矩阵键盘、液晶显示和报警提示等部分组成

15、。单片机作为本设计的核心元件,利用单片机灵活的编程设计和丰富的 I/O 端口,及其控制的准确性,实现基本的密码锁功能,其原理图如图 2.1 所示。矩阵键盘用于输入数字密码和进行各种功能的实现,主要有数字输入按键、确认按键、密码修改按键等,用户可以通过连接单片机的矩阵键盘输入密码,液晶显示屏提示一些输入,让用户更方便的操作电子密码锁锁,当你输入的密码位数达到所需要输入的密码位数后,单片机对用户输入的密码与自己内部设置保存的密码进行对比,从而判断密码是否正确,液晶显示屏提示你输入的密码是否错误,然后控制其他引脚的高低电平送到报警提示电路控制报警提示(红绿发光二极管显示) ,表示锁的开或者闭合,而在

16、实际使用时只要将单片机的负载换成电子密码锁的电磁铁吸合线圈即可。图 2.1 单片机控制密码锁的原理图2.3 方案结构框图基于单片机控制的数字密码锁结总构框图如图 2.2 所示,框图由电源输入,晶振电路,单片机控制系统,键盘电路,显示电路,报警提示电路构成。电源为单片机控制器和其他芯片提供工作电源,此次设计的时候引用直流电源,但在实际应用到生活中去的时候需要通过交流电源转变为直流电源(降压、整流、滤波等过程) ,并且需要加个备用电源,防止停电或者其他故障而造成无法供电的时候的备用电源。单片机控制系统包括晶振电路和复位电路。密码输入 单片机控制修改密码密码处理锁开是否陕西理工学院毕业设计第 2 页

17、 共 24 页图 2.2 基于单片机控制的数字密码锁总结构框图3 硬件电路的设计3.1 单片机及单片机最小系统单片机选用常用的 Atmel 公司的 51 系列单片机 AT89C52。AT89C52 是 Atmel 公司生产的低电压、高性能 CMOS8 位单片机, AT89C52 采用 24MHZ 或更高频率晶振,以获得较高的刷新频率,时期显示更稳定,单片机 AT89C52 引脚如图 3.1 所示。图 3.1 单片机 AT89C52 引脚 P0 口是双向 8 位三态 I/O 口,此口为地址总线(低 8 位)及数据总线分时复用口,可驱动 8个 LS 型 TTL 负载;P1 口是 8 位准双向 I/

18、O 口,可驱动 4 个 LS 型 TTL 负载;P2 口是 8 位准双向单片机电源输入键盘电路报警指示开锁电路晶振电路显示电路P10567RST/VD9X.INWALGEC陕西理工学院毕业设计第 3 页 共 24 页I/O 口,与地址总线(高 8 位)复用,可驱动 4 个 LS 型 TTL 负载;P3 口是 8 位准双向 I/O 口,双功能复用口,可驱动 4个 LS 型 TTL 负载,并且 P3 口具有特殊功能。P1 口:P1 口是一个内部提供上拉电阻的 8 位双向 I/O 口,P1 口缓冲器能接收输出 4TTL 门电流。P1 口管脚写入“1”后,电位被内部上拉为高,可用作输入,P1 口被外部

19、下拉为低电平时,将输出电流,这是由于内部上拉的缘故。P1 口有 8 路 10 位高速 A/D 转换器,速度可达到250KHz(25 万次 /秒) 。8 路电压输入型 A/D,可做温度检测、电池电压检测、按键扫描、频谱检测等。上电复位后 P1 口为弱上拉型 IO 口,用户可以通过软件设置将 8 路中的任何一路设置为 A/D转换,不须作为 A/D 使用的口可继续作为 IO 口使用。 在 FLASH 编程和校验时,P1 口作为第八位地址接收;P2 口:P2 口为一个内部上拉电阻的 8 位双向 I/O 口,P2 口缓冲器可接收,输出 4 个 TTL 门电流,当 P2 口被写 “1”时,其管脚电位被内部

20、上拉电阻拉高,且作为输入。作为输入时,P2 口的管脚电位被外部拉低,将输出电流,这是由于内部上拉的缘故。P2 口当用于外部程序存储器或 16位地址外部数据存储器进行存取时,P2 口输出地址的高八位。在给出地址“1”时,它利用内部上拉的优势,当对外部八位地址数据存储器进行读写时,P2 口输出其特殊功能寄存器的内容。P2 口在 FLASH 编程和校验时接收高八位地址信号和控制信号;P3 口:P3 口管脚是 8 个带内部上拉电阻的双向 I/O 口,可接收输出 4 个 TTL 门电流。当 P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入时,由于外部下拉为低电平,P3 口将输出电流 (I

21、LL),也是由于上拉的缘故。P3 口也可作为 AT89C51 的一些特殊功能口:P3.0 RXD(串行输入口)P3.1 TXD(串行输出口)P3.2 INT0(外部中断 0)P3.3 INT1(外部中断 1)P3.4 T0(记时器 0 外部输入)P3.5 T1(记时器 1 外部输入)P3.6 WR (外部数据存储器写选通)P3.7 RD (外部数据存储器读选通)同时 P3 口同时为闪烁编程和编程校验接收一些控制信号;RST:复位输入。当振荡器复位器件时,要保持 RST 脚两个机器周期的高平时间;ALE / PROG :当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的低位字节。在FLAS

22、H 编程期间,此引脚用于输入编程脉冲。在平时,ALE 端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的 1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个 ALE 脉冲。如想禁止 ALE 的输出可在 SFR8EH 地址上置0。此时, ALE 只有在执行 MOVX,MOVC 指令时 ALE 才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态 ALE 禁止,置位无效;PSEN:外部程序存储器的选通信号。在由外部程序存储器取址期间,每个机器周期 PSEN 两次有效。但在访问内部部数据存储器时,这两次有效的 PSEN 信号将不出现;

23、EA/VPP:当 EA 保持低电平时,访问外部 ROM;注意加密方式 1 时,EA 将内部锁定为 RESET;当EA 端保持高电平时,访问内部 ROM。在 FLASH 编程期间,此引脚也用于施加 12V 编程电源(VPP);XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入;XTAL2:来自反向振荡器的输出;EA/VPP(31 引脚): “EA”为英文“External Access”的缩写,表示存取外部程序代码之意,低电平动作,也就是说当此引脚接低电平后,系统会取用外部的程序代码(存于外部 EPROM 中)来执行程序。因此在 8031 及 8032 中,EA 引脚必须接低电平,因为其内

24、部无程序存储器空间。单片机最小系统如图 3.2 所示,其中由复位电路和晶振震荡电路组成。复位电路:单片机上电时,当振荡器正在运行时,只要持续给出 RST 引脚两个机器周期的高陕西理工学院毕业设计第 4 页 共 24 页P1.0235678RST/Vpd9XDINWALEOGCUYF位uK电平,便可完成系统复位。外部复位电路是为内部复位电路提供两个机器周期以上的高电平而设计的。其中复位电路通常有上电自动复位和按钮复位两种模式,本次采用的是按键手动复位并是电平复位方式,其中电平复位时通过 RST 端经电阻与电源 VCC 接通而实现的,电源 VCC 取+5V,复位电路的电阻取的 10k,电容取的 1

25、0uF。晶振振荡电路:XTAL1 脚和 XTAL2 脚分别构成片内振荡器的反相放大器的输入端和输出端,外接石英晶体或陶瓷振荡器以及补偿电容 C1、C2 构成并联振荡电路。当外界石英晶体时,电容C1、C2 选 30pF10pF;当外接陶瓷振荡器时,电容 C1、 C2 选 47pF10pF.AT89C52 系统中晶振可在 024MHz 选择。外接电容 C1、C2 的大小会影响振荡器的高低、振荡频率的稳定度、起振时间及温度稳定性。在设计电路板时晶振和电容应靠近单片机芯片,以便减少寄生电容,保证振荡器稳定可靠的工作,并且在系统设计中,为保证串行通信波特率的误差,选择 11.0592MHz 的标准石英晶

26、振,电容应 C1、C2 应选择 20pF。此次设计采用的是 12MHz 的晶振。单片机最小系统如图 3.2 所示,其中由复位电路和晶振震荡电路组成。图 3.2 单片机最小系统图3.2 键盘电路3.2.1键盘接口常用的键盘接口分为独立键盘和行列式键盘两种。独立键盘就是按键相互独立,每个按键各接一根输入线,通过检测输入线的电平状态可以很容易的判断哪个按键被按下。在按键数目较多的时候,独立式键盘电路需要较多的输入口线且电路结构繁杂,此种键盘适用于按键较少或操作速度较高的场合。行列式(也称矩阵式)键盘用于按键数目较多的场合,它由行线和列线组成的按键电路,其按键位于行、列的交叉点上,如图 3.3 所示,

27、一个 44 的行、列式结构可以构成 1 个 16 个键的键盘,很明显节省了很多的 I/O 口线。矩阵式键盘的扫描原理主要是分为两个步骤:首先是确定是否有键闭合,然后逐一扫描以步确定哪一键闭合。陕西理工学院毕业设计第 5 页 共 24 页图 3.3 键盘电路3.2.2键盘的识别方式键盘上的键按行列组成矩阵,在行列的交点上都对应有一个键。为判定有无键按下(闭合键)以及被按键的位置,可使用这种方法:扫描法(常用) 。扫描法就是首先是判定有没有键被按下,键盘的行线一端经上拉电阻接+5V 电源,另一端接单片机的输入口线。各列线的一端接单片机的输出口线,另一端悬空。为判定有没有键被按下,可先经输出口向所有

28、列线输出低电平,然后再输入各行线状态。若行线状态中有低电平,则表示有键被按下。然后再判定被按键的位置。3.2.3按键去抖动当扫描表明有键被按下之后,紧接着应进行去抖动处理。因为常用键盘的键实际上就是一个机械开关结构,被按下时,由于机械接触点的弹性及电压突跳等原因,在触点闭合或断开的瞬间会出现电压抖动,如图 3.4所示。抖动时间长短与键的机械特性有关,一般为 510ms。而键的稳定的闭合时间和操作者按键动作有关,大约为十分之几到几秒不等。图 3.4 键闭合和断开时的电压抖动3.2.444行列式键盘电路此次设计为 44 行列式键盘,由 16 个按键组成的行列式键盘,主要作为用户输入数字密码及确认、取消、修改等功能键,此次设计按键扫描方法采用的是扫描法。44 行列式键盘电路如图 4.4 所示,把芯片 AT89C52 中的 P1.0P1.3 端口用 4 个 10K 的上拉电阻连接到 44 行列式键盘的行线上,把芯片 AT89C52 中的 P1.4P1.7 端口直接连接 44 行列式键盘的列线。 (上拉电阻的作用,就是把电位拉高,比如拉到 VCC。一般就是刚上电的时候,端键按下前沿抖动 后沿抖动x = 0x = 0x = 0x = 0x = 0x = 0x = 0x = 0x = 0x = 0x = 0x = 0x = 0x = 0x = 0x = 012K36789HL

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 学术论文 > 毕业论文

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报