毕业设计单片机课程设计密码锁设计Word文档格式.docx
《毕业设计单片机课程设计密码锁设计Word文档格式.docx》由会员分享,可在线阅读,更多相关《毕业设计单片机课程设计密码锁设计Word文档格式.docx(25页珍藏版)》请在冰豆网上搜索。
2密码锁硬件系统的设计
2.1密码锁硬件系统各模块功能简要介绍
此次课程设计是基于单片机控制的电子密码锁,结合主要设计条件,本设计由单片机系统、独立式键盘、LED显示和报警系统组成,系统能完成开锁、错误报警、密码修改功能等功能,设计硬件系统如下:
(1)单片机系统:
此次课题采用一种是用以AT89S52为核心的单片机控制方案。
利用单片机灵活的编程设计和丰富的IO端口,及其控制的准确性,进行电子密码锁的设计。
此次课题用单片机P1口与键盘相连,做输入口,P0口与显示器段控相连,输入段控码,P2口输入位控码。
(2)独立式键盘接口电路:
此次课程设计采用独立式键盘,与P1口相连,键按下则会使该端口变成低电平,单片机读P1口,通过对P1口数据的判断来确定哪一个键按下。
(3)数码管显示模块:
此次课程设计采用的是共阴数码管,P0口段控,P2口送位控,八个数码管共用八根段控,由位控决定在哪一位显示。
本次采用的是数码管动态显示法,先给数码管送位控,再送位控,延时1ms左右让显示稳定,利用人眼的视觉反应时间,八位的滚动显示,人眼看来是静态的,从而实现了动态显示的功能。
(4)报警系统:
此次课程设计,当输入密码错误后,系统报警,报警装置由一扬声器实现,给P3.1口规律性的赋低电平,使扬声器鸣报警、二极管发光。
(5)电源电路:
该密码锁设计了一个电源电路用一个发光二级管显示电源电路的通/断情况。
另外,系统也可通过下载口接通电源,且都与单片机EA引脚连接给整个硬件系统供电。
(6)复位及振荡电路:
时钟电路工作后,在REST管脚上加两个机器周期的高电平,芯片内部开始进行初始复位。
本设计晶振选择频率为12MHZ,电容选择33pF。
经计算得单片机工作的机器周期为:
12×
(1÷
12M)=1us。
(7)下载口:
该密码锁系统设计了一个下载口用于单片机系统的程序导入,附带可以作为补充电源只用,即用一个引脚接电源VCC,因此可以实现程序输入和供电。
2.2密码锁电路原理图、PCB图、元器件布局分布图
电路原理图见附录A
PCB顶层图见附录B
PCB底层图见附录B
元器件布局图见附录C
2.3密码锁元器件清单
元器件清单见附录D
3密码锁软件系统的设计
3.1密码锁设计使用单片机资源的情况
原始密码存放在内部程序存储器中,78H-7FH单元做字形代码缓冲区,70H-77H单元做数据比较缓冲区,61H-66H作为新密码存放区,88H-8DH做密码缓冲区。
3.2密码锁设计软件系统各模块功能简介及流程图
密码锁软件的设计主要包括:
键盘扫描、密码显示、密码比较、密码修改、错误报警。
程序设计总流程图如图2所示:
图2程序设计总流程图
3.2.1键盘扫描程序:
本设计采用独立式键盘,共八个按键,程序开始时,先给P1口送高电平,有按键按下后,相应的P1口线会变为低电平,将P1口的电平取反,再送到20H中,20H为可位寻址区,通过查询20H的八位,即可得到是哪个按键按下,就可以转向每个按键所要执行的程序。
键盘扫描程序流程框图如图3所示:
图3键盘扫描程序流程图
3.2.2显示程序:
本设计采用数码管共阳极显示,位控由P0口输出,段控由P2口输出,程序开始后,先对程序初始化,选好寄存器以及查表显示的表地址,先将低位位控码送到P2口,然后通过查表得到段控码,并送到该位,这样依次查完八位,使八位数码管显示,以此循环。
显示程序流程图如图4所示:
图4显示程序流程图
3.2.3密码判断程序:
原密码存放在内部程序存储器中,程序开始后,上电后通过键盘输入六位密码来解锁,六位密码输入完后,会自动判断是否与原始密码相同,相同的话可以解锁,解锁后可以更改用户密码,若与原始密码不同,则出错报警,然后按复位键可以重新输入。
修改完用户密码后若再解锁,步骤与上述相同。
密码判断程序流程图如图5所示:
图5密码判断程序流程图
3.2.4错误报警程序
密码输入错误后,会进入自动错误报警,报警时数码管上会显示“ERROR”字样,蜂鸣器会响,与蜂鸣器连在一起的LED灯也会亮,从而实现错误报警。
错误报警程序流程图如图6所示:
图6密码修改程序流程图
3.3密码锁设计程序清单
程序清单见附录E
4设计结论、缺陷分析、仿真结果、心得体会、教学建议
4.1密码锁设计结论及使用说明
该密码锁基本实现了开锁,修改用户密码,错误报警等功能,具有一定的应用推广价值。
密码锁上电后,屏幕上会显示“P.”,通过键盘可以输入六位密码,保密显示“口”形;
密码输完后,密码正确则自动开锁,出现上“口”形,并可以任意输入1-7在数码管显示,若错误数码管会出现“ERROR”和蜂鸣器与LED灯间歇性鸣叫、闪烁报警,按复位键返回重输。
密码正确后按下第八个键出现六“_”,“口”形显示保密输入六位新密码,完成后按第八个键确认后又可回到输密码状态“P.”;
在修改密码后,如果出现密码输入错误,也会出现“ERROR”字样和蜂鸣器与LED的报警,但可按任意键返回到输密码状态重新输入密码状态;
现在可以摆脱复位键,可重复修改密码。
4.2密码锁设计的缺陷分析
本设计的密码锁不能进行掉电保护,即用户修改密码后不能进行密码保存,掉电后密码就变为原始密码,在实际应用中还须进行改进,例如在硬件电路中加入存储芯片24C02。
由于硬件电路的限制,按键过少,使有些功能缺失或复杂,在实际应用中可采用行列式键盘。
4.3密码锁的仿真结果
为了能让本次课程设计的准确性特用Protues仿真软件做了仿真如图7:
图7仿真图P点的显示
4.4心得体会
本次单片机课程设计安排在临近期末。
由于期末复习紧张,要在短时间内完成程序设计到硬件调试,我遇到很大的困难。
首先在程序设计上,基于强大的网络资源和图书资源我很快的确定了设计方案和总体设计思路——构建一个由数码管和独立按键以单片机为核心的电子密码锁。
但是,从软件设计完成到实现仿真却并不简单。
好在,前期在做单片机实验上积累了一定的程序设计和分析功底,经过反复调试和修改,到底还是实现了当初预定的功能。
通过这次实践课程,我不光学到了很多关于单片机应用的知识,同时也增长见识、开扩了专业方面的视野。
另外,我感觉课程设计与实验课这样的实践课程对理论知识的巩固,动手能力的增强,综合素质的提高有着理论课堂学习无法比拟的效果,是大学,尤其是应用型工科学院必不可少的学习单元。
4.5教学建议
经过为期半年的单片机学习,我们在王老师的指导下对单片机有了较系统的认识,有了一定了程序设计能力,掌握各个应用软件的使用。
但是,我也有个人的感受:
王老师在理论课上教学认真细致,实践课时习惯让同学们自我摸索,也许希望这样锻炼同学们独立解决问题的能力。
但是,我们更希望在实践课时有更多机会得到老师的点拨和指导,这样会令我们的学习效率更高,积极性更高。
那样,我相信我们的学习成绩将会更进一步,老师的教学效果将更突出。
结束语
作为本学期的单片机课程设计,由单片机为控制核心的密码锁从设计方案确定到原理图设计,到程序设计及软硬件结合调试,整个过程有苦有甜,但我收获了颇多,学到了许多课本上没有的东西,增强了自己的动手能力,还培养了自己查阅资料,自学的技能,总之,是获益匪浅的。
尤其在资料查阅和程序设计和调试上能力提高效果明显。
此次设计的密码锁虽然实现了其基本功能,但还有很多要改进的地方,比如掉电保护的实现,必须在原有的电路上增加模块(比如24C52芯片),但由于时间紧凑,资源有限未能完成。
在以后的学习中,我还应该继续努力去完善。
此次课程设计虽然接近尾声,但我对单片机的学习和研究将永远不会停止,我必将努力自我探索,不断自主学习,孜孜以求。
致谢
期末考试结束了,我的单片机课程设计也要完成了。
能够顺利完成密码锁的设计,当然要感谢王韧老师悉心教授单片机的理论知识以及在实验课程上的严格要求。
王老师在课程设计前期的单片机技术课的教授上认真细致,使我们夯实了理论知识基础;
在单片机实验课上,王老师严格要求,使我们强化了实践动手能力、能够熟练的运用各种应用软件。
并且,在我们遇到技术难题和设计瓶颈的时候适当的启发了我们。
另外,在程序设计和硬件调试上,我很大程度上获得了班上同学的帮助,尤其是上期暑假参加过单片机培训的三位同学使我顺利完成了程序的后期完善。
在设计结束之际,祝老师新年快乐,工作顺利,桃李满天下,祝同学们期末考试顺利,学有所成。
参考文献
[1]李广第,朱月秀,冷祖祁.单片机基础[M].北京:
北京航空航天大学出版社,2007.6
LiGuangfirst,ZhuYueXiu,LengZuQi.Singlechipmicrocomputerbased[M].Beijing:
Beijinguniversityofaeronautics&
astronauticspress,2007.6
[2]康华光.电子技术基础模拟部分(第五版)[M].北京:
高等教育出版社,2006
kanguhguano.Electronictechnologyfoundationsimulationpart(fifthedition)[M].Beijing:
highereducationpress,2006
[3]阎石,数字电子技术基础(第五版)[M].北京:
YanShi,digitalelectronictechnologyfoundation(fifthedition)[M].Beijing:
[4]邱光源.电路(第五版)[M].北京:
QiuGuangYuan.Circuit(fifthedition)[M].Beijing:
附录
附录A:
电路原理图
图A密码锁电路原理图
附录B:
PCB图
图B1电子密码锁PCB图顶层
图B2电子密码锁PCB图底层
附录C:
元器件分布图
图C电子密码锁元器件分布3D效果图
附录D:
元器件清单
表D电子密码锁元器件清单
附录E:
程序清单
项目名称:
密码锁
项目功能:
初始自动显示系统提示符“P.”,进入准备工作状态。
具有系统原始密码888888,用户可以设定并存储用户密码,密码输入时应处于保密显示状态,密码输入正确时应显