基于C语言STC89C52单片机电子密码锁的设计与仿真
2.2.5 定时模块
本模块用于对密码输入时间控制。在程序开始运行时首先对定时器进行了初始化,从按下PUT IN键开始,系统开始计时,当输入的时间达到规定的时间将立即报警。
2.2.6 液晶显示模块
此模块包括液晶初始化、命令的输入、显示数据的输入。其中命令是用于控制液晶状态是否显示光标,光标是否闪烁,是否清除原来数据以及显示的具体位置。数据显示主要是将要显示的信息按需要准时显示出来。
3 系统仿真
为了方便程序调试,本文采用了Proteus仿真,仿真图如图2所示。

3.1 系统介绍
图2中U1为STC89C52是整个系统的核心,编写的程序以二进制的文件导入其中;U2为AT24C02,第5和第6个引脚分别与单片机的P1.2和 P1.3相连;LCD1为1602液晶显示器,引脚连接如图2所示;独立按键DOOR,当门关上为键按下状态;D1为模拟开锁灯,当密码正确,按下BE- SURE键D1将亮;BUZ1为蜂鸣器报警。当程序编写好并导入到单片机里后,按下图2最下面的开始按钮,1602液晶显示器将提示密码锁的运行状态,系统开始工作。
3.2 开锁功能
当电源开启时,1602液晶显示Welcome欢迎界面,当按下PUT IN键后,显示器显示PUT IN CODES提示使用者输入密码,如图3所示。几秒后液晶显示器上提示将自动消失。此时可输入正确密码,且密码输入时显示*而不会将输入的数据显示出来。当输入密码完毕后,按下BESURE键,如果输入的密码正确D1将亮(D1作为开锁的模拟开关)。若密码错误,可以按下BACK键,程序将跳到loop(开始界面),重新输入密码,同时输入次数将增加一次。当3次都输入错误则自动报警,并且输入密码的时间必须在规定的时间完成,否则也会报警。

3.3 密码设定
在密码输入正确后,按下SET键可对密码进行重新设置,液晶显示器显示SET CODS。同样几秒后提示信息将自动消失,此时开始重设密码。在密码设定过程中会将设定的数字显示出来,每输入一位密码需按下YES键确定,当设置的密码达到6位将自动回到启动界面。
4 结论
(1)成功仿真实现了1602液晶显示,密码开锁,密码设置,防止多次试探,报警等功能。
(2)采用C语言编写程序,具有很强的移植性,为系统增减和修改功能带来了方便。
本文引用地址:https://www.eepw.com.cn/article/173072.htm
手机电池相关文章:手机电池修复
c语言相关文章:c语言教程
蜂鸣器相关文章:蜂鸣器原理
评论