曾晗 王赛 刘元浩
【摘 要】本文设计了一种基于单片机的电子密码锁。该密码锁以AT89C52为核心,采用LCD显示和EEPROM存储密码,通过矩阵键盘输入密码来解锁,实现了密码开锁、修改密码、多次输入错误锁定并报警等基本功能,并用Proteus进行仿真,验证其功能,具有成本低、易用性好等特点。
【关键词】电子密码锁;矩阵键盘;单片机;LCD
随着技术的快速发展,各式各样高科技产品层出不穷,使人们的生活变得愈加智能和便捷,锁具也逐渐从传统的机械锁逐步向电子密码锁转变。但目前市场上机械锁仍占有大量比例,且质量参差不齐,大部分锁的安全性不是很高;而用户一旦忘记携带钥匙,便无法开锁,十分不便。电子密码锁在提高安全性的同时,能通过密码、指纹等多种方式进行开锁,大大提高了便捷性,是未来锁具的发展方向。本文的电子密码锁基于单片机进行设计,实现密码开锁、修改密码、多次输入错误锁定并报警等基本功能,具有成本低、易用性好等特点。
1.总体设计方案
本设计由AT89C52单片机、LCD显示屏、4×4矩阵键盘、EEPROM、蜂鸣器等部分组成,其中AT89C52单片机为核心控制元件。当通过键盘输入密码时,单片机将密码与预先存储在EEPROM中的密码进行比对,若相同则通过开锁驱动模块控制锁具开锁,若错误则通过LCD显示屏提示并要求重新输入密码,多次输入错误则锁定系统并报警。
2.电路设计
2.1 LCD显示电路
LCD显示器以其微功耗、体积小、显示内容丰富、超薄轻巧的诸多优点,在袖珍式仪表和低功耗应用系统中得到越来越广泛的应用。
本次设计采用的字符型液晶模塊LM016L能够同时显示16×2即32个字符(16列2行),采用标准的14脚接口。D0~D7为8位双向数据线,与AT89C52的P0.0-P0.7口连接,传输显示字符。RS、RW和使能端E端分别与P3.0-P3.2口连接,控制显示字符的输出。
2.2 锁芯驱动电路
用继电器来控制门锁的开关,采用一个小功率三极管来构成驱动电路,由P1.1口来控制三极管的导通和关断,从而达到控制门锁的目的。
2.3 EEPROM电路
EEPROM是一种掉电后数据不丢失的存储芯片,可通过高于普通电压的作用来擦除和重写,用于存储密码。芯片的SCK和SDA分别与P3.6、P3.7口连接,用于密码的读取和写入,每次输入时从EEPROM读出密码进行密码核对,修改密码时又可以重新写入新密码。
2.4 键盘电路
键盘电路采用4×4矩阵式键盘,4条行线和4条列线通过一个按键连通,分别连接AT89C52的P2.0-P2.7口。键盘上0-9键用于密码的输入,此外设置有退格、确认、退出和修改密码四个功能键。
2.5 报警电路
报警电路包含LED灯和蜂鸣器,采用小功率三极管构成驱动电路,P1.0口来控制三极管的导通和关断,从而达到控制蜂鸣器的目的。P1.2口连接LED灯控制灯的开断。
3.软件设计
软件系统主要包含下列部分:
主程序:负责系统初始化和调用各子程序,控制整个系统的工作流程,实现密码的核对和修改、控制门锁的开关等功能。开锁流程图如图3所示。
LCD显示子程序:实现LCD的初始化和显示。
键盘扫描子程序:包括消除键盘抖动、检测键盘是否按下和弹起以及返回用户按下的键盘所对应的键盘号。
读写EEPROM子程序:实现EEPROM中数据的读出和写入。
4.系统仿真
采用Proteus软件对设计进行仿真。将HEX文件导入AT89C52中验证是否满足设计要求。
(1)密码输入正确后开锁。系统启动后LCD屏提示输入密码,键盘输入密码后,按确定键,屏幕显示密码正确,锁芯驱动电路控制门锁打开,如图4所示。
(2)密码多次错误后锁定。输入错误密码后,屏幕显示密码错误,然后自动清除密码,提示重新输入,此时可再次输入密码。 当错误输入超过3次,系统锁定并启动蜂鸣器进行报警。
(3)修改密码。按修改密码功能键,进入密码修改模式。按照屏幕提示首先通过键盘输入原密码,若密码错误,则按照(2)的流程进行;若密码正确,则进入密码修改流程。按照屏幕提示两次输入新密码,若两次输入一致则密码修改成功,若两次输入不一致则提示重新输入。
5.结语
电子密码锁是未来锁具的发展方向,具有较大的市场前景。本设计实现了密码开锁、修改密码、多次输入错误锁定并报警等电子密码锁的基本功能,具有成本低、易用性好等特点,但在智能和人性化上还有很大的提升空间,例如加入指纹识别模块通过指纹解锁、加入蓝牙或WiFi模块通过手机实现无线连接和控制,使电子密码锁的使用更加智能和便捷。
【参考文献】
[1]金桂,向国梁.基于C语言STC89C52单片机电子密码锁的设计与仿真[J].现代电子技术,2010,33(19):176-178+182.
[2]韩团军.基于单片机的电子密码锁设计[J].国外电子测量技术,2010,29(07):58-61.
[3]李建波.基于STC89C52单片机的电子密码锁[J].现代电子技术,2008(23):154-156.