绿灯亮表示电子锁已经打开;红灯亮表示密码输入错误;黄灯亮表示设置密码阶段,允许修改密码;白灯亮表示单片机已锁且正常工作。 (5)ULN2003AG电路
ULN2003AG是提高控制信号的驱动能力(即驱动芯片),用来作输出瑞驱 动,单片机通过控制ULN2003AG的输入来控制是哪一个数码管亮。 (6)PCB图
软件设计
1、 软件框图
(1)键盘扫描
(2)LED显示
(3)密码比较与报警
2、 流程图
4、 设计体会
这是一次理论结合实践的课程设计,而且对于实践的要求特别强,需要接触实际的器件和电路,查阅相关资料,并动手设计电路图和PCB图,这次硬件电路的设计,让我学会了用PADS 软件自己去设计一块满足要求的电路板,在老师的示范下,一步一步的按照要求如何画原理图。刚刚开始时,使用软件还不熟练,有的地方画错了而不自知,或者不知道怎么样画,随着对软件的熟悉,和别的同学请教,慢慢掌握了技巧,比如器件它实际的形状和在电路板上的实际焊接,比如元器件如何画封装,画完图后还检查出很多不知道如何修改的电气错误,请教
别人之后,就换种方法画,把错误一点点的改正,最终达到良好的设计效果,修改过程中是比较繁琐的,要耐着性子,细心认真的修改才行,当最终设计完成后心里是非常自豪和有成就感的。不仅学习了新知识,加强了动手能力,还养成了越是繁琐的工作越要细致的好习惯。
说明
键盘采用行列式矩阵键盘,键盘处理程序首先执行等待按键并确认有无按键按下的程序段,采用中断响应法响应即在有按键按下时中断处理程序才会执行,节省电量。LED显示采用动态扫描显示,一次只显示一个数码管,不同时刻在不同位的数码管上显示相应的数字,但是更新的频率为2ms,所以显示的效果与静态一样。按不同的功能键会调出不同的处理程序,实现相应的功能。
四、调试试验
1、 试验验证方法
设计完硬件后,完成软件的设计,把程序烧录进单片机,就可以直接测试。 首先,正确的输入4 位密码,锁开
在锁开的状态下按下修改密码键,两次真确输入新的密码,按确定键 输入新密码,所重新打开
连续输入错误的密码3 次,键盘锁定
2、 遇到问题及解决方法
新输入的密码无法同时显示,由于数码管只由一个口8 线控制显示,所以显示时一个时间只能显示同一数字。解决方法:使用动态显示,修改程序。在没有开锁的情况下按修改密码键的时候仍然可以修改。解决办法:无论什么时候按键,首先提示输入以前的密码,如果正确才让修改。有时候会忘记自己的密码。解决办法:在修改密码的时候,连续两次输入新的密码,两次输入的密码一致时,才保存新的密码。在未完全输入密码时,按其他的功能键,有时候系统也会去相应,造成系统发生错误。解决办法:在输入密码时(解锁或者修改密码),屏蔽其他中断,直到输入完毕,按确定键为止。
五、总结分析
1、 性能分析
密码锁的基本功能:解锁,密码修改,电路报警,基本实现。密码设计的是四位十进制密码,碰巧打开的机会很少。由于缺少掉电保护,所以在断电后,再次开启的时候,前面的操作会失效。而且有可能在修改密码后,出现密码复原现象。
2、 试验结果分析
实验过程中,规范的输入密码,开锁,修改密码都会成功。当不按规范输入时,程序有时会出错,数码管出现乱码,需要断电后再开启才能恢复正常。修改完密码后断电,再开启,密码依旧是没有修改的密码。连续输入错误密码3 次