单片机电子密码锁设计

上传人:公**** 文档编号:512803853 上传时间:2023-09-02 格式:DOC 页数:20 大小:83KB
返回 下载 相关 举报
单片机电子密码锁设计_第1页
第1页 / 共20页
单片机电子密码锁设计_第2页
第2页 / 共20页
单片机电子密码锁设计_第3页
第3页 / 共20页
单片机电子密码锁设计_第4页
第4页 / 共20页
单片机电子密码锁设计_第5页
第5页 / 共20页
点击查看更多>>
资源描述

《单片机电子密码锁设计》由会员分享,可在线阅读,更多相关《单片机电子密码锁设计(20页珍藏版)》请在金锄头文库上搜索。

1、-. z-课程设计任务书 学 院新华学院专 业计算机科学与技术小组成员马欢 雅琴德军 卢银蕊成员分工编写程序:马欢 雅琴 设计电路图:德军 卢银蕊课程设计题目电子密码锁设计实践教学要求与任务:要求:利用51单片机、24C04与1602LCD设计电子密码锁,实现简单的功能。完成以下设计环节: 1使用Proteus 7 Professional仿真软件,设计仿真原理图并运行程序,完成系统仿真。 2使用keiluvision4开发平台,采用C语言设计软件程序。工作方案与进度安排: 第14周:布置课程设计任务,查阅资料,分组设计与调试。 第17周:调试,验收,辩论,编写课程设计报告。指导教师: 年 月

2、 日专业负责人: 年 月 日学院教学副院长: 年 月 日目录1. 系统功能概述22. 开发平台简介22.1系统仿真平台Proteus22.2软件开发平台Keil C23. 系统硬件构造设计33.1总体设计33.2各模块设计44. 软件设计74.1主函数模块设计74.2各子函数模块设计95. 系统仿真运行结果116. 结论137. 参考文献138. 附录141. 系统功能概述 系统采用美国Atmel公司的AT89C51单片机作为系统核心,液晶显示器LCD1602作为输出设备显示系统提示信息,4*4矩阵薄膜键盘作为输入设备,用存储器24c04进展存储密码锁的密码,当用户输入的密码与存储器储存的密码

3、一样时,即可开锁成功,假设不一样,则不能开锁,并提示密码错误。系统软件采用C语言编写。设计的系统液晶显示,密码修改方便,具有报警、锁定等功能,使用便捷简单,符合住宅、办公用锁需求,具有一定的实用价值2. 开发平台简介2.1系统仿真平台ProteusProteus软件是英国Labcenterelectronics公司出版的EDA工具软件。它不仅具有其它EDA工具软件的仿真功能,还能仿真单片机及外围器件。它是目前最好的仿真单片机及外围器件的工具。Protues提供了丰富的资源:仿真元器件资源:仿真数字和模拟、交流和直流等数千种元器件,有30多个元件库。仿真仪表资源:示波器、逻辑分析仪、虚拟终端、S

4、PI调试器、I2C调试器、信号发生器、模式发生器、交直流电压表、交直流电流表。理论上同一种仪器可以在一个电路中随意的调用。Proteus还提供了一个图形显示功能,可以将线路上变化的信号,以图形的方式实时地显示出来,其作用与示波器相似,但功能更多。这些虚拟仪器仪表具有理想的参数指标。另外Proteus还提供了比拟丰富的测试信号用于电路的测试。这些测试信号包括模拟信号和数字信号。在Protues中进展电路仿真时,先绘制好原理图,再调入已编译好的目标代码文件:*.HE*,随后便可在PROTEUS的原理图中模拟的实物运行状态和过程,进展观察从而改进自己的设计方案。操作简单,非常适合初学者进展单片机的仿

5、真,进而了解其原理,增强实践。2.2软件开发平台Keil CKeil uVision2是德国Keil Software公司出品的51系列兼容单片机C语言软件开发系统,使用接近于传统C语言的语法来开发,与汇编相比,C语言在功能上、构造性、可读性、可维护性上有明显的优势,因而易学易用,而且大大的提高了工作效率和工程开发周期,他还能嵌入汇编,您可以在关键的位置嵌入,使程序到达接近于汇编的工作效率。KEILC51标准C编译器为8051微控制器的软件开发提供了C语言环境,同时保存了汇编代码高效,快速的特点。C51编译器的功能不断增强, 使你可以更加贴近CPU本身,及其它的衍生产品。C51已被完全集成到u

6、Vision2的集成开发环境中,这个集成开发环境包含:编译器,汇编器,实时操作系统,工程管理器,调试器。3. 系统硬件构造设计3.1总体设计AT89C51时钟电路模块LCD显示模块密码存储模块 键盘输入模块蜂鸣器图3-1系统构造框图图 3-2硬件原理图总体设计思路:本设计利用单片机灵活的编程设计和丰富的IO端口,及其控制的准确性,不但能实现根本的密码锁功能,还能添加掉电存储。其中,0-9为用户可以输入密码可选择的数字,10号功能为开锁键,11号功能为上锁,12号功能为输入修改后的密码,13号功能为保存密码,14号功能为重新输入。利用LCD来显示提示信息。3.2各模块设计3.2.1 AT89C5

7、1模块AT89C51 P1口通过连接1个矩阵键盘,作为密码输入和功能选择按键;P0口接LCD1602的8位数据通信线;P2.0,P2.1,P2.2接LCD控制端;P3.2和P3.3接24C04。 图3-3 AT89C51引脚图 键盘输入模块使用矩阵键盘,本设计就采用行列式键盘,同时也能减少键盘与单片机接口时所占用的I/O线的数目,其原理如图。本设计中矩阵键盘接在单片机的P1口。每一条水平行线与垂直线列线的穿插处不相通,而是通过一个按键来连通,利用这种行列式矩阵构造只需要4条行线和4条列线,即可组成具有44个按键的键盘。在这种行列式矩阵键盘非键盘编码的单片机系统中,键盘处理程序首先执行等待按键并

8、确认有无按键按下的程序段。当确认有按键按下后,下一步就要识别哪一个按键按下。对键的识别是常用的逐行扫描查询法。图3-4 4*4矩阵键盘 LCD1602本系统设计的显示电路是为了给使用者以提示而设置的。本系统的显示采用了LCD1602作为显示模块,其能够同时显示16*02即32个字符。LCD在系统中,其D0-D7引脚分别接单片机的P0口、VSS和VDD分别接电源和地线、VEE为液晶亮度调节按钮可接电位器、RS为数据或命令的选择端接P2.0、RW为读写的选择端接P2.1、E为使能信号接P2.2。如下图。图3-5 LCD1602 密码存储模块本设计中为了在系统掉电时能够保存系统的设置密码,使用了具有

9、I2C总线接口的E2PROM的24C04芯片来保存密码锁的密码。SCL串行时钟 AT24C02串行时钟输入管脚用于产生器件所有数据发送或接收的时钟,这是一个输入管脚。 DA串行数据/地址 AT24C02 双向串行数据/地址管脚用于器件所有数据的发送或接收,SDA 是一个开漏输出管脚,可与其它开漏输出或集电极开路输出进展线。A0、A1、A2器件地址输入端 这些输入脚用于多个器件级联时设置器件地址,当这些脚悬空时默认值为0。当使用AT24C02 时最大可级联8个器件。如果只有一个AT24C02被总线寻址,这三个地址输入脚A0、A1、A2 可悬空或连接到Vss,如果只有一个AT24C02被总线寻址这

10、三个地址输入脚A0、A1、A2 必须连接到Vss。WP写保护 如果WP管脚连接到Vcc,所有的容都被写保护只能读。当WP管脚连接到Vss 或悬空允许器件进展正常的读/写操作。图3-6 24C04时钟电路模块时钟电路为单片机产生时序脉冲,单片机所有运算与控制过程都是在统一的时序脉冲的驱动下的进展的,如果单片机的时钟电路停顿工作晶振停振,则单片机也就停顿运行了。当采用部时钟时,连接方法如下列图所示,在晶振引脚*TAL119脚和*TAL218脚引脚之间接入一个12MHZ晶振,两个引脚对地分别再接入一个电容即可产生所需的时钟信号,电容的容量一般在几十皮法。图3-7 时钟电路图4. 软件设计4.1主函数

11、模块设计设计思路:电子密码锁工作的主要过程是LCD提示开场选择操作功能选择开锁还是更改密码,通过10号键盘开锁,13号14号进展密码的修改与保存。当用户选择开锁时,通过键盘输入开锁密码。如果密码输入正确,则LCD提示密码正确、LED灯亮表示开锁。如果密码输入错误则LCD提示密码错误。当用户选择更改密码功能时,要求用户先输入当前密码。当密码正确时LCD提示用户进一步操作。单片机向24C04写入新密码,否则提示错误并返回初状态。开场功能键盘扫描检测子程序提示密码修改成功将新密码写入24C02提示输入新密码清单片机RAM密码暂存区LCD用*动态提示已输入数字提示输入开锁密码提示输入旧密码将已输入的数

12、字暂存与单片机RAM判断旧密码是否正确和24C04里密码比拟输入开锁还是改密码完毕LED亮解锁改密错误正确一样不同图4-1系统程序流程图4.2各子函数模块设计键盘扫描子函数模块开场判按键,编码入栈保护调用12ms延时子程序调用6ms延时子程序编码有键按下否.返回有键按下否.按键释放否.是否否是是否图4-2 键盘扫描程序流程图 LCD子函数模块开场输出显示向LCD写数据初始化LCD检测是否繁忙.完毕是否图4-3 LCD输出程序流程图4.2.3 24C04子函数模块开场LCD显示向24c04写密码初始化24c04与初始化密码比拟是否一样.完毕否是图4-4密码存储程序流程图5. 系统仿真运行构造图5

13、-1 程序开场运行图5-2 输入密码开锁图5-3 输入新密码图5-4 保存新密码图5-5 输入错误密码图5-6 连续三次输入错误密码6. 结论课程设计是培养学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程.随着科学技术开展的日新日异,单片机已经成为当今计算机应用中空前活泼的领域,在生活中可以说得是无处不在。因此作为二十一世纪的大学来说掌握单片机的开发技术是十分重要的。回忆起此次单片机课程设计,至今我仍感慨颇多,从理论到实践,在整整两星期的日子里,可以说得是苦多于甜,但是可以学到很多很多的的东西,同时不仅可以稳固了以前所学过的

14、知识,而且学到了很多在书本上所没有学到过的知识。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会效劳,从而提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到问题,可以说得是困难重重,这毕竟第一次做的,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的缺乏之处,对以前所学过的知识理解得不够深刻,掌握得不够结实,通过这次课程设计之后,一定把以前所学过的知识重新温故。7. 参考文献1群芳 士军 黄建 单片微型计算机与接口技术电子工业2谭浩强 C语言程序设计 清华大学 20053维成 家国 单片机原理与应用及C51程序设计 清华大学 20218. 附录

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号