基于C语言STC89C52单片机电子密码锁的设计与总结报告张博,于娇,陈瑶,张舒摘要本设计中,电子密码锁使用STC89C52单片机控制,采用C语言编写,通过Proteus软件仿真并进行了实物焊接
电子密码锁通过矩阵键盘进行密码输入,1602A液晶显示模块进行显示
其可实现的功能有:(1)通过切换,对输入的4位密码进行显示或隐藏;(2)通过发光二极管和蜂鸣器,对解密正确或者错误进行声光报警;(3)4位密码修改;(4)在密码遗失情况下,通过初始密码进行密码再设置;(5)采用AT24C02外部存储器,完成断电密码保护功能;(6)具有1-9次的解锁次数任意设定功能;(7)模拟密码箱随机产生密码,并进行解码
本设计特色为采用1602A液晶显示模块,这使得显示更加直观、使用更加方便
密码可实现显示和隐藏切换,通过隐藏密码实现密码保护
一、方案设计与论证方案一:以STC89C52单片机为电子密码锁系统核心,使用4*4矩阵键盘作为数据输入方式,驱动1602A显示器提示程序运行过程和开锁的步骤,利用AT24C02芯片实现掉电存储
图1为单片机控制密码锁的系统原理框图
图1单片机控制密码锁的系统原理框图方案二:以74LS112双JK触发器构成的数字逻辑电路控制方案,如图2
图2数字逻辑控制方案电子密码锁原理框图STC89C52单片机AT24C02存储芯片矩阵键盘控制LCD1602A蜂鸣器提示电路电源模块LED密码校验提示输入按扭开关5秒定时电路20秒定时电路声光指示电路输入锁存电路密码存储电路开锁控制电路机械动作构件1方案论证:方案一中,利用单片机灵活的编程设计和强大的I/O端口,及其控制的准确性,不但能实现基本的密码锁功能,还可以增添掉电存储、声光提示等功能
方案二中,虽然数字逻辑控制系统中常用的开关电器能够实现本设计中密码锁的逻辑控制,但存在接线复杂、寿命短、可靠性差、维护困难的缺点,给诸