范家明
摘 要:随着电子技术的发展,人们对锁的需求越来越多,所以各种各样的电子锁层出不穷,未来电子密码锁的市场将非常广阔。这次设计是以STC89C51单片机为技术控制核心,显示部分选用了1602液晶显示,密码储存模块采用AT24C02芯片,结合设计的外围报警模块,矩阵键盘输入模块,继电器模块完成了电子密码锁的设计。
关键词:密码锁;单片机;液晶显示
一、引言
(一)设计的背景和研究意义。自从人类脱离原始社会、开始有私有财产的概念以来,锁就成为了人们生活中的重要组成部分。随着科技的发展,电子密码锁被越来越多的人所接受,它已经在生活中随处可见了. 电子密码锁拥有太多机械锁完全无法相比的优点。它不但能完成“锁”自身的功用,还可以具有记忆、辨识、警报等特别的作用。因为电子密码锁的更安全性、更便宜、易操作,越来越多人开始关注这一领域。
随着单片机的迅速发展,其应用领域越来越广泛,将其应用到保密和安全方面是相当可靠,相当有意义的。基于单片机的电子密码锁的研究在保护财产和人身安全方面可以给人们带来更多更好的选择
(二)设计的主要环节。设计的主要方案如下:(1)控制模块采用STC89C51为控制中心模块。(2)键盘输入采用4x3的共阴极键盘输入可以节省IO口的使用。(3)显示模块采用液晶显示密码的输入和修改等提示。(4)报警模块通过蜂鸣器和LED灯闪烁来完成。(5)继电器用来控制密码锁的开关。
二、系统的硬件原理图
硬件设备是以单片机为核心,结合电源电路、密码储存电路、显示电路、报警电路和继电器电路等外围设备来完成设计要求。其原理框图如图1。
三、系统硬件部分设计
(一)AT24C02 EEPROM存储器。用户在使用电子密码锁的时候若更改了系统的初始密码,密码锁系统断电之后密码就容易丢失,而曾加了AT24C02就能把密码储存起来防止丢使。
AT24C02是一个2Kbit串行CMOS EEPROM,内部256个
8位字节。其引脚功能如下串行数据输入/输出引脚(SDA)可实现双向串行数据传输。串行时钟信号引脚(SCL)在SCL输入时钟信号的上升沿将数据送入EEPROM器件,并在下降沿将数据读出。器件/页地址脚(A2、A1、A0)为AT24C02硬件连接的器件地址输入引脚。写保护(WP)引脚。当该引脚接地GND时可以正常的读写,接VCC时,芯片启动写保护功能。
AT24C02与单片机相连时,A0,A1,A2接地,GND接地,VCC接电源,WP接P2^2,SDA接P2^0,SCL接P2^1。
(二)液晶点阵屏1602。1602液晶也叫做1602字符型液晶,它是专门用来显示字母、数字、符号等的点阵式液晶模块。
1602液晶分为背光和不背光两种,带背光的1602液晶采用标准的16脚接口与单片机相连接。
(三)矩阵键盘。为了节省IO的使用,使用共阴极的矩阵键盘作为密码输入端,它将I/O口分别引出线,并分为行线和列线,在每一个行线和列线相交的地方放置一个按键,这种方案下,一个占用7个I/O端口的4×3的行列结构可以构成一个
12键的键盘。通过软件扫描的方法就可以确定是哪个按键按下了。
(四)警铃电路。运用蜂鸣器和计算机软件的控制可以使它发出911报警的声音。通过一个PNP的三级管可以驱动蜂鸣器的工作。当密码输入正确时警铃不工作,同时密码所开。但是如果密码输入错误控制蜂鸣器的P2^4引脚输出低电平,蜂鸣器发出报警的声音将持续5秒。
(五)继电器电路。采用电磁继电器作为密码锁的开关。电磁继电器一般是由铁芯、线圈、衔铁、触电簧片等组成的。只要在线圈两端加上一定的电压,线圈就会流过一定的电流,从而产生电磁效应,衔铁就会在电磁力吸引的作用下克服返回弹簧的压力吸向铁芯,从而带动衔铁的动触点与静触电结合。当线圈断电后,电磁的吸力也随之消失,衔铁就会在弹簧的反作用力下返回原来的位置,使触电释放。这样吸合、释放,从而达到了电路中的导通和切断的作用。在密码输入正确的时候控制继电器的P2^5引脚输出低电平,电子密码锁开。
(六)复位电路。单片机的置位和复位都是为了把电路初始化到一个确定的状态。一般来说,单片机的复位电路的作用就是把单片机的内的各个寄存器装入常山预设的一个值,即让从单片机的第一条指令(0000H单元)开始执行。单片机复位电路的原理就是在单片机的复位引脚RST上外接电阻和电容,让RST(9脚)端出现高电平,并保持两个机器周期以上,单片机就会执行复位操作。
四、系统软件部分设计
如图2所示为主程序流程图,系统上电后将进行初始化,然后开始进行键盘扫描,此时在键盘上输入密码,若密码正确,则开锁成功,播放成功提示音,密码错误则会提示,包括屏幕画面及声音。
五、结论
在本次电子密码锁的设计过程中,通过查阅资料和向老师请教结合实际制作了一款功能比较齐全的电子密码锁。它具有以下的功能:(1) 用户通过矩阵键盘四位密码,并以确认键(#)结束。若需要修改密码,则按修改键(*)进入密码修改状态。(2) 允许密码输入错误的最大次数为三次,口令错误次数超过三次则进入死锁状态,并发出警报,系统将锁定键盘5分钟。(3)初始化密码又系统决定,用户可以根据自己的要求设定密码。修改密码时需要首先正确的输入旧的密码才可以修改,修改新密码需要两次相同的输入新的密码,以防错按键盘而导致的新密码丢失。(4)密码输入以“*”显示,提高密码的安全性,防止别人偷窥。(5)当无密码输入时自动进入节电模式,减少功耗。
参考文献:
[1] 张丽娜.《51单片机系统开发与实践》[M].北京:北京航空航天大学出版社,2013.10
[2] 张建超.《单片机技术及应用》[M].出版地:清华大学出版社,2014
[3] 赵秀岩,于小强《程序设计案例教程》[M].北京:高等教育出版社,2014.2