解翔宇 项远辉 林健谊 朱尚胜 孙薇 张昊 纪娟娟
摘要:该文利用单片机最小系统、液晶显示电路、矩阵键盘模块、蜂鸣器模块、继电器模块、AT24C02C模块以及电源模块等七个模块对智能电子密码锁进行了设计。单片机最小系统是由STC89C52单片机、电阻以及晶体等元器件构成,STC89C52单片机是本设计的核心器件。基于该系统的硬件电路,利用单片机C语言对系统进行软件设计,并实现了系统的开锁、修改密码以及管理员解密等功能的仿真。最后,进行了系统调试,对系统整体功能进行了验证。该设计方案可行,对智能电子密码锁设计的研究具有一定的参考意义。
关键词:STC89C52单片机;密码锁;AT24C02C;矩阵键盘
中图分类号:TP311 文献标识码:A
文章编号:1009-3044(2019)12-0176-05
在以往的生活中,只能在一些比较特殊的场所看到智能电子密码锁的使用,例如:机关办公室、国家机密局、银行等。但随着生活质量的提升,人们逐步走向智能化时代的生活,对于各种锁的需求也不再是局限于传统的机械锁。传统的机械锁只能通过钥匙开锁且容易被撬开,而智能电子密码锁的开锁方式有很多,例如:指纹、按键、面部识别、声控等开锁方式。因此,人们开始围绕怎么样提高锁的安全系数、怎么样让锁变得智能化等问题展开研究。由于计算机占据的面积比较大,所以研究以单片机为核心的智能电子密码锁是非常必要的。单片机不仅体积小,相对计算机来说它的成本很低、精度高以及容易升级完善[1-10]。智能电子密码锁是由矩阵键盘输入的密码通过单片机去支配系统工作,最后实现智能电子密码锁开锁、闭锁等一系列工作的智能电子产品[11]。自智能电子密码锁发明以来,它开始逐渐地占领人们生活中的各个领域为人们的生活带来便利、安全[12],智能电子密码锁已成为我们的生活中非常重要的智能电子产品。
1 设计思路
智能电子密码锁设计的核心是单片机最小系统,以矩阵键盘模块和电源模块作为它的输入部分,以LCD模块、蜂鸣器模块和继电器模块作为它的输出部分,而密码存储模块既作为它的输入部分又作为它的输出部分。系统总设计框图如图1所示。
基于系统框图,文将要完成以下功能:
(1) 在4×4的矩阵键盘上输入6位数的密码,如果密码正确智能电子密码锁将会被打开且指示灯点亮;反之,蜂鸣器将发出报警。
(2) 用户可以根据自己的需求重新设置新的密码。首先,输入正确密码把智能电子密码锁打开;其次,进入重新设置新的密码的界面,并且要求输入两次密码完全一致时新密码才设置成功;反之,新密码设置失败。
(3) 当连续输入的密码错误三次时,智能电子密码锁将会报警并锁死矩阵键盘一段时间用户将无法输入密码。
(4) 当用户忘记电子锁密码时,可以通过管理员密码来恢复电子锁的初始密码“123456”。管理员密码不能用于修改电子锁密码,只能帮助用户恢复初始密码。
(5) 在掉电的情况下,智能电子密码锁能保存密码数据并且支持复位保存。
2 硬件系统设计
本设计利用单片机最小系统、液晶显示电路、矩阵键盘模块、蜂鸣器模块、继电器模块、AT24C02C模块以及电源模块构成整体的硬件电路,系统整体电路原理图如图2所示。
3 软件程序设计
3.1 程序设计思路
当输入密码连续错误三次时,蜂鸣器将会报警并且锁定矩阵键盘锁;当需要重新设置智能电子密码锁的密码时,先将电子锁打开,然后按下修改密码的按键进入重新设置新密码的界面,最后需要输入两次新密码且输入的完全一致新密码修改成功;当忘记智能电子密码锁的密码时,通过管理员密码去恢复电子锁的初始密码“123456”。
3.2 程序设计流程图
基于前文的程序设计思路,本系统的流程图如图3所示。
4 系统仿真
5 系统测试实物图
5.1 输入正确密码
当上电时如图15示,输入正确密码时如图16所示,输入正确密码后如图17所示,液晶显示器呈现的电子智能密码锁状态为“open”并且开锁指示灯亮。
5.2 修改密码
当修改密码时,先将智能电子密码锁打开,开锁以后按下修改密码的按键进入设置新密码的界面要输入两次新设置的密码如图18所示。输入两次密码完全一致时,新密码设置成功如图19所示。
5.3 输入密码错误3次
当第一次输入密码错误时,液晶显示器如图20所示;当第二次输入密码错误时,液晶显示器如图21所示;当输入密码错误次数达到第三次时,液晶显示器如图22所示,此后智能电子密码锁报警、矩阵键盘被锁定如图23所示。
5.4 管理员密码
当忘记电子智能密码锁的密码时,可以通过管理员密码“123123”来恢复智能电子密码锁的初始密码“123456”。首先,在输入密码的界面输入管理员密码“123123”如图24所示;然后,按下管理员密码键;最后,恢复智能电子密码锁的初始密码“123456”成功,此时LCD1602液晶显示器的显示状态为“Into OK”如图25所示。
6 总结
本文以单片机最小系统为核心,以液晶显示器、矩阵键盘模块、蜂鸣器模块、继电器模块、AT24C02C模块以及电源模块这几个部分作为辅助模块,完成了智能电子密码锁设计。本设计主要从硬件电路设计、软件程序编写以及系统仿真、调试三个方面去实现。最后进行电路的焊接实现智能电子密码锁的解锁、修改密码、管理员恢复初始密码以及输入密码次数超过三次报警并锁定矩阵键盘等功能。
参考文献:
[1] 李华.MCS-51系列单片机使用接口技术[M].北京:北京航空航天大学出版社,2003.
[2] 何立民.单片机应用技术选编[M].北京:北京航空大学出版社,2005.
[3] 潘永雄.新编单片机原理与应用[M].西安:西安电子科技大学出版社,2003.
[4] 张毅刚.单片机原理及应用[M].北京:高等教育出版社,2003.
[5] 石文轩,宋薇.基于单片机MCS-51的智能密码锁设计[J].武汉工程职业技术学院学报,2004(01):31-35.
[6] 郭海英.基于单片机的电子安全密码锁的设计[J].现代电子技术,2005(13):95-97.
[7] 李建波.基于STC89C52单片机的电子密码锁[J].现代电子技术,2008(23):154-156.
[8] Juan He,Shu Ai Kang.Intelligent Electronic Code Lock Based on the SCM[J].Applied Mechanics and Materials,2013.
[9] 李朝青.單片机原理及接口技术(简明修订版)[M].北京:北京航空航天大学出版社,1998.
[10] 李全利.单片机原理及接口技术[M].北京:高等教育出版社,2003.
[11] 祖龙起,刘仁杰.一种新型可编程密码锁[J].大连轻工业学院学报,2002(01):41-43.
[12] 李明喜.新型电子密码锁的设计[J].机电产品开发与创新,2004(03):40.
【通联编辑:朱宝贵】