ImageVerifierCode 换一换
格式:DOCX , 页数:14 ,大小:1.27MB ,
资源ID:5104321      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/5104321.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(单片机课程设计可改密码的电子密码锁设计.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

单片机课程设计可改密码的电子密码锁设计.docx

1、单片机课程设计可改密码的电子密码锁设计课程设计(论文)任务书设计题目:可改密码电子密码锁设计任务:以89C52单片机为核心,制作一个能够更改6位密码的模拟电子密码锁。设计要求: 密码位数为6位。 显示利用1602液晶显示。 更改的密码支持断电保留。 支持持续输入三次错误密码报警。 密码输入状态动态显示。 别离利用两个发光二极管表示输入正确和错误密码。可改密码电子密码锁设计报告摘要 本文介绍基于MCS-51单片机的可更改密码的电子密码锁设计,并支持掉电保留密码,程序利用了C语言编写。关键词 单片机 电子密码锁 改变 Abstract: This article describes the MCS

2、-51 microcontroller based on the password change the design of electronic locks, and to support power-down save the password, the program uses the C language.Key word: MCU Electronic code lock Change第一章 概述密码锁是一种通过密码输入来控制电路或是芯片工作,从而控制机械开关的闭合,完成开锁、闭锁任务的电子产品。它的种类很多,有简易的电路产品,也有基于芯片的性价比较高的产品。此刻应用较广的数字密码锁

3、是以芯片为核心,通过编程来实现的。其性能和安全性已大大超过了机械锁。其特点是保密性好,随机开锁成功率几乎为零。密码可变,用户能够随时更改密码,避免密码被盗,同时也能够避免因人员的更替而使锁的密级下降。无活动零件,不会磨损,寿命长。利用灵活性好,不像机械锁必需佩带钥匙才能开锁。数字密码锁操作简单易行,一学就会。本文所涉及的是市场占有率最高的是MCS51系列,因为世界上很多知名的IC生产厂家都生产51兼容的芯片。到目前为止,MCS51单片机已有数百个品种,还在不断推出功能更强的新产品。本设计是基于单片机的密码锁设计方案,按照要求,给出了该单片机密码锁的硬件电路和软件程序,同时给出了单片机型号的选择

4、、硬件设计、软件流程图、单片机存储单元的分派、C语言源程序及详细注释等内容。第二章 系统整体方案设计用以STC89C52为核心的单片机控制方案。利用单片机灵活的编程设计和丰硕的IO端口,及其控制的准确性,不但能实现大体的密码锁功能,还能添加掉电存储。其原理如图所示。 单片机控制方案设计思路如下:一、输入密码用矩形键盘(4*3),包括数字键和功能键。二、LCD1602用来实时显示当前的各操作状态。3、用发光二极管代替开锁的电路,发光表示开锁。4、输入密码错误次数超过3次,系统报警。五、打开电源后,LCD交替显示“Input password, please press 0”和“Change pa

5、ssword,please press 1”,设原始密码为“123456”,只要输入此密码便了开门。如此可预防停电后再来电时无密码可用。六、任何状态下,按“取消”键,LCD返回功能交替选择的初始状态。7、欲从头设定密码,需先输入旧密码后才能更改。八、修改密码时,需输入两次新密码确认一致,若是两次输入的密码不一样则LCD显示“error”并返回初始状态。软件的设计主要包括键盘键值的读取,LCD显示程序,密码比较程序和报警程序等。第三章 硬件电路设计 键盘电路设计利用矩阵键盘,所以本设计就采用行列式键盘,同时也能减少键盘与单片机接口时所占用的I/O线的数量,在按键比较多的时候,通常采用如此方式。其

6、原理如图。本设计中矩阵键盘接在单片机的P1口。图 矩阵键盘每一条水平(行线)与垂直线(列线)的交叉处不相通,而是通过一个按键来连通,利用这种行列式矩阵结构只需要N条行线和M条列线,即可组成具有NM个按键的键盘。在这种行列式矩阵键盘非键盘编码的单片机系统中,键盘处置程序第一执行等待按键并确认有无按键按下的程序段。当确认有按键按下后,下一步就要识别哪个按键按下。对键的识别通常有两种方式:一种是常常利用的逐行扫描查询法;另一种是速度较快的线反转法。对照图所示的43键盘,说明线反转个工作原理。第一辨别键盘中有无键按下,有单片机I/O口向键盘送全扫描字,然后读入行线状态来判断。方式是:向行线输出全扫描字

7、00H,把全数列线置为低电平,然后将列线的电平状态读入累加器A中。若是有按键按下,总会有一根行线电平被拉至低电平从而使行线不全为1。判断键盘中哪个键被按下使通过将列线逐列置低电平后,检查行输入状态来实现的。方式是:依次给列线送低电平,然后查所有行线状态,若是全为1,则所按下的键不在此列;若是不全为1,则所按下的键必在此列,而且是在与零电平行线相交的交点上的那个键。具体的功能设计如表:表 按键功能按 键键 名功 能 说 明09键数 字 键功能选择和输 入 密 码确认键确认键完成并确认当前操作取消键取消键取消当前操作返回初始状态显示电路本系统设计的显示电路是为了给利用者以提示而设置的。本系统的显示

8、采用了LCD1602作为显示模块,其能够同时显示16x02即32个字符。LCD在系统中一共负责显示12条操作提示,其D0-D7引脚别离接单片机的P0口、VSS和VDD别离接电源和地线、VEE为液晶亮度调节按钮(可接电位器)、RS为数据或命令的选择端接、RW为读写的选择端接、E为使能信号接。如图所示。 图 LCD显示电路LCD1602的管角及寄放器介绍如下: 引脚说明 1602字符型LCD通常有14条引脚线或16条引脚线的LCD,多出来的2条线是背光电源线 VCC(15脚)和地线GND(16脚),其控制原理与14脚的LCD完全一样,其中: 引脚符号功能说明1VSS一般接地2VDD接电源(+5V)

9、3V0液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时对比度最高(对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度)。4RSRS为寄存器选择,高电平1时选择数据寄存器、低电平0时选择指令寄存器。5R/WR/W为读写信号线,高电平(1)时进行读操作,低电平(0)时进行写操作。6EE(或EN)端为使能(enable)端,下降沿使能。7DB0低4位三态、 双向数据总线 0位(最低位)8DB1低4位三态、 双向数据总线 1位9DB2低4位三态、 双向数据总线 2位10DB3低4位三态、 双向数据总线 3位11DB4高4位三态、 双向数据总线 4位12DB5高4位三态、 双

10、向数据总线 5位13DB6高4位三态、 双向数据总线 6位14DB7高4位三态、 双向数据总线 7位(最高位)(也是busy flag)15BLA背光电源正极16BLK背光 电源负极寄放器选择控制表 RSR/W操作说明00写入指令寄存器(清除屏等)01读busy flag(DB7),以及读取位址计数器(DB0DB6)值10写入数据寄存器(显示各字型等)11从数据寄存器读取数据注:关于E=H脉冲开始时初始化E为0,然后置E为1,再清0。 busy flag(DB7):在此位为被清除为0时,LCD将无法再处置其他的指令要求。 开锁电路在本次设计中,基于节省材料的原则,暂时用发光二极管代替电磁锁,表

11、示开锁;第二个发光管亮表示密码错误。电路图如所示。当和口输出低电平时,二极管发光,表示开锁或密码错误。 图 开锁电路报警电路 图报警电路报警模块由蜂鸣器和单片机组成。选择一只压电式蜂鸣器,压电式蜂鸣器工作时约需要100mA驱动电流。蜂鸣器电路如图所示。当89C52的口输出为低电平时,蜂鸣器产生蜂鸣音,89C52输出为高电平时,蜂鸣器不发声。本设计中当持续输入三次错误密码时(包括开锁和更改密码两种功能操作),蜂鸣器就会发声表示报警。密码掉电保留电路 本设计中为了在系统掉电时能够保留系统的设置密码,利用了具有I2C总线接口的E2PROM的AT24C02芯片来保留密码锁的密码。如图所示。 图 密码保

12、留电路 AT24C02的介绍如下:管脚描述 管脚名称功能A0 A1 A2器件地址选择SDA串行数据/地址SCL串行时钟WP写保护Vcc+ 工作电压Vss地SCL串行时钟 AT24C02串行时钟输入管脚用于产生器件所有数据发送或接收的时钟,这是一个输入管脚。 SDA串行数据/地址 AT24C02 双向串行数据/地址管脚用于器件所有数据的发送或接收,SDA 是一个开漏输出管脚,可与其它开漏输出或集电极开路输出进行线或(wire-OR)。 A0、A一、A2器件地址输入端 这些输入脚用于多个器件级联时设置器件地址,当这些脚悬空时默许值为0。当利用AT24C02 时最大可级联8个器件。若是只有一个AT2

13、4C02被总线寻址,这三个地址输入脚(A0、A一、A2 )可悬空或连接到Vss,若是只有一个AT24C02被总线寻址这三个地址输入脚(A0、A一、A2 )必需连接到Vss。 WP写保护 若是WP管脚连接到Vcc,所有的内容都被写保护只能读。当WP管脚连接到Vss 或悬空允许器件进行正常的读/写操作第四章 软件设计软件设计思路电子密码锁工作的主要进程是LCD提示开始选择操作功能(选择开锁仍是更改密码),通过键盘输入功能选择键0或1(现在键盘其它按键被暂时屏蔽)。当用户选择开锁时,通过键盘输入开锁密码。若是密码输入正确,则LCD提示密码正确、第二个LED灯亮表示开锁。若是密码输入错误则LCD提示密

14、码错误并亮一个LED灯亮。当输入密码持续输入错误3次时,系统报警。当用户选择更改密码功能时,要求用户先输入当前密码。当密码正确时LCD提示用户进一步操作,且用户必需输入两次新密码用以确认。当两次输入的新密码一致时,单片机想AT24C02写入新密码,不然提示错误并返回处状态。LCD在提示用户输入密码时,会光标闪烁并逐位显示。当光标没有闪烁时表示已经不能输入数字了,需按“确认”键以告知单片机已完成操作。“取消”键用来消除当前的状态,无论出于系统处于哪个阶段都能返回初始状态。程序设计流程图 程序设计系统的源程序采用了C语言编写,因为C语言具有专门好的模块性,故编写的程序都采用了子程序模块化编写。具体

15、程序及程序说明见附件2。第五章 系统调试1、单片机开发板实物图:2、功能选择时的初始状态:3、开锁状态:3、开锁状态:4、密码输入状态:5、密码正确开锁:6、修改密码状态:7、密码修改失败和成功:第六章 心得体会在着抄本次课程设计时,通过查阅网络与图书馆搜集到的资料,加上指导老师指点,结合生活中对密码锁的功能特性要求,设计出了这一套电子密码锁系统的主要硬件结构和软件结构,大体完成了课题。不过由于了解的专业知识尚浅,对课题的研究经验的不足,使得在技术的解决与运用上显得粗糙了一些,专门是功能键的设定。在设计的进程当中经历和克服了许多困难,暴露咱们知识和经验不足的同时也积累了实践经验,检阅了大学所学

16、的知识,使所学的知识取得温习和巩固。通过这次毕业设计我学到了很多东西,温习了理论知识,专门是单片机外围电路模块电路设计及其应用编程;学会搜集和处置资料的一些大体问题,提高获取新知识的能力、分析和解决问题的能力和交流与合作的能力。这次课程设计终于顺利完成了,在设计中碰到了很多编程问题,在同窗的帮忙下,终于游逆而解。超级感激!致 谢在学习单片微型运算机与接口技术课程,我要感激的指导老师的耳提面命。固然,还要感激的在我完成设计进程中给予我帮忙的同窗们。此刻即将完成我的课程学习,还有我大学第三年的生活,虽然恋恋不舍,可是对未来的路,我充满信心。相信有了这次的实践设计经验,在接下来的学习和以后的工作中,将能更好的将学到的知识应用于实践。也相信在接下来的补充学习与应用中能更好的巩固这门课程的知识。最后,再次感谢老师对我学习的指导和帮忙和同窗们的鼓励!参考文献:一、李群芳 张士军.片微型运算机与接口技术.北京:电子工业出版社,2010.二、郭天祥.51单片机C语言教程.北京:电子工业出版社,2009.3、白延敏.51单片机典型系统开发实例精讲.北京:电子工业出版社,2009.4、XX百科:

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1