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