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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

电子密码锁设计与实现.docx

1、电子密码锁设计与实现南 阳 理 工 学 院本科生毕业设计 (论文)学 院:电子与电气工程学院专 业: 自 动 化 学 生: 指导教师: 完成日期 2014 年 5 月南阳理工学院本科生毕业设计(论文) 电子密码锁设计与实现Design and implementation of Electric Password Lock 总 计: 29页 表 格: 2个 插 图: 21幅南 阳 理 工 学 院 本 科 毕 业 设 计(论文) 电子密码锁设计与实现Design and implementation of Electric Password Lock 学 院: 电子与电气工程学院 专 业: 自

2、动 化 学 生 姓 名: 学 号: 指 导 教 师(职称): 评 阅 教 师: 完 成 日 期: 南阳理工学院 Nanyang Institute of Technology电子密码锁设计与实现摘 要 随着人们生活水平的提高,如何实现家庭防盗这一问题也变得尤为突出。在科学技术不断发展的今天,电子密码防盗锁作为防盗卫士的作用显得日趋重要。系统由AT89S51与 AT24C02作为主控芯片与数据存储器单元,结合外围的矩阵键盘输入、LCD显示、报警、开锁等电路模块。它能完成以下功能:正确输入密码前提下,开锁;错误输入密码情况下,报警;密码可以根据用户需要更改。用C语言编写的主控芯片控制程序与EEPR

3、OM AT24C02读写程序相结合,并用Keil软件进行编译,设计了一款可以多次更改密码,具有报警功能的电子密码控制系统。关键词 电子密码锁;报警;LCD显示;矩阵键盘 Design and implementation of Electric Password Lock Automation Specialty JIANG Zhong-yangAbstract:As peoples living standards improve, the question how to achieve home security has become particularly prominent. In

4、science and technology is developing continuously, electronic code lock as a security guards role is increasingly important. This article from the economical point of view, the system by the AT89S51 he master chip and the data memory unit, combined with the external keyboard, LCD display, alarm, unl

5、ock and other circuit modules. It performs the following functions: enter the password correctly under the premise of unlocking; wrong password case the alarm; password can be changed according to user needs. Master in C language control program and EEPROM AT24C02 chip to read and write process are

6、combined and compiled with the Keil software, designed a number you can change the password, the password with an electronic alarm control system. Key Words:Electric Password lock; Alarm; LCD Display; Matrix keyboard 目录1 引言在当今社会,安全防盗已成为社会问题,而锁自古以来就是防盗的重要工具,目前国内大部分人使用的还是传统的机械锁,然而,眼下假冒伪劣的机械锁互开率非常之高,此外

7、,即使是一把质量过关的机械锁,通过急开锁,甚至可以在不损坏锁的前提下将锁打开。机械锁的这些弊端为一种新型的锁电子密码锁,提供了很大的发展空间。从目前的技术水平和市场认可程度看,使用最为广泛的是键盘式电子密码锁,该产品主要应用于保险箱、保险柜和取款机,由于人们对安全的重视和科技的发展,许多电子智能锁(指纹识别、IC卡辨认)已在国内外相继面世。但是这些产品的特点是针对特定的指纹和有效卡,只能适用于保密要求的箱、柜、门等。而且指纹识识别器在公共场所使用存在容易机械损坏,IC卡还存在容易丢失、损坏等缺点,再加上其成本较高,一定程度上限制了这类产品的普及和推广。鉴于目前的技术水平与市场的接受程度,键盘式

8、电子密码锁是这类电子防盗产品的主流。在科学技术不断发展的今天,电子密码防盗锁作为防盗卫士的作用也日趋重要。电子密码锁是集计算机技术、电子技术、数字密码技术为一体的机电一体化高科技产品,具有安全性高,使用方便等优点。电子密码锁是一种通过密码输入来控制电路或是芯片工作,从而控制机械开关的闭合,完成开锁、闭锁任务的电子产品。它的种类很多,有简易的电路产品,也有基于芯片的性价比较高的产品。现在应用较广的电子密码锁是以芯片为核心,通过编程来实现的。其性能和安全性已大大超过了机械锁。本次毕业论文主要分为两大模块,一是硬件系统电路部分,另一个是用C语言编写的软件程序部分,基本能完成电子密码锁的开锁、修改密码

9、、密码错误报警等主要功能,成本低,可靠性高,具有很好的市场应用价值。1.1 课题背景和意义20世纪30年代以前锁不论其形状如何,都是把守门户的铁将军。随着科学的发展、社会的进步,锁不仅要具有高度的安全性而且要方便携带。这就暴露出传统式机械锁的一些弊病,例如:携带不便和安全性不高。因此,具有高安全性和不需携带的电子类密码锁就出现了。这种锁可以避免携带时钥匙易丢失,或者锁很容易被损坏而使物件被盗。鉴于以上,电子密码锁被很多的国家和地区作为重点发展对象。电子密码锁不仅因其以上特点而广泛运用还因其可以随意改密而倍受青睐。用户可以根据自己意愿来修改密码,这也是电子密码锁区别于传统锁的一个显著特点。电子锁

10、的类型很多,例如:生物式锁,电子密码锁等。但较大部分购买者在选购时,会选择后者。1.2 国内外发展现状20世纪末至今以来,随着电子事业的发展,集成电路的出现,致使电子密码锁的安全性不断提高,体积不断缩小,但是成本较高,只应用于安全要求较高的场合。由于其运用时需要供电,因此其应用具有一定的局限行,难以大规模实用,以至于电子密码锁的发展没有飞跃性的进展。放眼观看电子密码锁的发展情景,西方发达国家在这方面处于顶尖地位,种类不仅齐全,而且被广泛的应用在智能防盗系统中,可以选择多种加密方式,更安全、更可靠。而国内的这方面研究并不尽如人意,技术落后、其成本很高。至于国内关于电子锁的研究,主要在于键盘式的,

11、其他形式的电子锁虽然也有涉及但是成就不高。目前国内电子锁行业的发展前景非常可观。国内自行研发的电子锁有不少引进世界先进的科学技术,市场前景非常乐观。希望通过国内电子锁类产品的不断发展,使我国的在这方面的研究跃居前列。1.3 电子密码锁的特点 随着电子密码锁的发展,不管是集成电路型的,还是芯片型的,其特点大体相同。基于芯片的密码锁不仅价格低廉,而且其安全性能也好不逊色。因此,以芯片为主要组成部分的电子密码锁得到了广泛的应用。其种类繁多,构造简单,可通过软件编程来实现其加密功能。所以其大致有如下特点:(1)安全性能高:用户可自定多种密码,比机械式锁安全。(2)可以修改密码:用户可以根据自己意愿随时

12、修改密码,这样不用担心密码被盗用或者因为人员调用致使锁的保密性降低。(3)易学易懂:电子密码锁的操作只需用户按照操作步骤操作即可实现解密和加密功能。(4)可实现自我安全保护:如果用户连续错误输入超过规定误输范围,则会自动锁屏。(5)紧急救济功能:当遇到突发时间如火灾等,用户只需要特定的动作,即可用手机械式开锁,使人员迅速逃生。(6)防偷盗、破碎功能:当密码锁处于正常工作状态时,有人恶意损毁时会自动鸣笛警告。(7)具有火灾报警功能:当室内失火并达到规定范围时,会自动报警,并开起密码门锁。(8)具有内外锁定功能:外部锁定;当用户外出时内部强制关闭,以防外人入侵。2 系统整体方案设计2.1 设计方案

13、 本设计采用AT89S51单片机为主控芯片,结合外围电路矩阵键盘、液晶显示器LCD1602和密码存储AT24C02等部分组成。其中矩阵键盘用于输入数字密码和进行各种功能的实现。由用户通过连接单片机的矩阵键盘输入密码,后经过单片机对用户输入的密码与自己保存的密码进行对比,从而判断密码是否正确,然后控制引脚的高低电平传到开锁电路或者报警电路控制开锁还是报警,组成的电子密码锁系统,系统整体设计框图如图1所示。 图1 系统整体设计框图2.2 主控部分的选择 选用单片机作为系统的核心部件,实现控制与处理的功能。单片机具有资源丰富、速度快、编程容易等优点。利用单片机内部的随机存储器(RAM)和只读存储器(

14、ROM)及其引脚资源,外接液晶显示(LCD),键盘输入等实现数据的处理传输和显示功能,基本上能实现设计指标。因此综合考虑,本系统采用采用以单片机为核心的控制方案。3 硬件系统设计3.1 主控芯片AT89S51 AT89S51是一个低功耗,高性能CMOS 8位单片机,片内含4k Bytes ISP(In-system programmable)的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISP Flash存储单元,功能强大的微型计算机的AT89S51可为许

15、多嵌入式控制应用系统提供高性价比的解决方案。AT89S51具有如下特点:40个引脚,4k Bytes Flash片内程序存储器,128 bytes的随机存取数据存储器(RAM),32个外部双向输入/输出(I/O)口,5个中断优先级2层中断嵌套中断,2个16位可编程定时计数器,2个全双工串行通信口,看门狗(WDT)电路,片内时钟振荡器。其引脚图如图2所示。图2 AT89S51引脚分布图 AT89S51具体介绍如下: 主电源引脚(2根)VCC(Pin40):电源输入,接5V电源GND(Pin20):接地线外接晶振引脚(2根)XTAL1(Pin19):片内振荡电路的输入端XTAL2(Pin20):片

16、内振荡电路的输出端控制引脚(4根)RST/VPP(Pin9):复位引脚,引脚上出现2个机器周期的高电平将使单片机复位。ALE/PROG(Pin30):地址锁存允许信号PSEN(Pin29):外部存储器读选通信号EA/VPP(Pin31):程序存储器的内外部选通,接低电平从外部程序存储器读指令,如果接高电平则从内部程序存储器读指令。可编程输入/输出引脚(32根)AT89S51单片机有4组8位的可编程I/O口,分别位P0、P1、P2、P3口,每个口有8位(8根引脚),共32根。P0口(Pin39Pin32):8位双向I/O口线,名称为P0.0P0.7P1口(Pin1Pin8):8位准双向I/O口线

17、,名称为P1.0P1.7 P2口(Pin21Pin28):8位准双向I/O口线,名称为P2.0P2.7 P3口(Pin10Pin17):8位准双向I/O口线,名称为P3.0P3.73.2 液晶显示模块电路设计(1)LCD1602字符型模块的性能与其他的相比要轻所占面积小;耗电量小;可显示内容多可以显示多种代码;可满足使用者的显示需求;可与微处理器连接使用;其工作温度范围广;省点,抗干扰性能强,连续工作量强;LCD1602实物图如图3所示。 图3 LCD1602正反面图 (2)LCD1602各引脚说明如下表1所示。表1 LCD1602各引脚说明编号符号引脚说明编号符号引脚说明1VCC电源地9D2

18、数据2VDD电源正极10D3数据3VL液晶显示偏低11D4数据4RS数据/命令选择12D5数据5R/W读/写的选择13D6数据6E使能信号14D7数据7D0数据15A背光源正极8D1数据16K背光源负极 其中4号为数据命令选择端,5号为数据读写选择端,6号为使能端,D0-D7数据输入端其对应接在单片机P1.0-P1.7端,V0为液晶显示偏压,A、K分别为背光正极和背光负极。(4)光敏电阻 为了延长液晶的使用寿命,使其能自动因光线的强弱来调节液晶亮暗,本电路中采用的光敏电阻是GL5528。当光强时RG1的电阻减小液晶变亮,当光弱时RG1的电阻变大液晶变暗。电路如图4所示。图4 GL5528在电路

19、中的应用3.3 存储模块电路设计(1)24C02描述 24C02是可以进行存储的一个器件,其不但可以进行读操作,也可以进行写操作。是一个可以进行读写操作的存储芯片。(2)24C02特点工作时的电压范围广泛;低电压技术:1mA典型工作电流,1A典型工作电流;存储器组织结构256 X 8(2K bits);2线串行接口,完全兼容IC总线;I2C时钟频率为1MHz(5V),400kHz(1.8V,2.5V,2.7V);施密特触发输入噪声抑制;硬件数据写保护;可按字节写;页写:8字节页;可按字节,随机和序列读;自动递增地址;ESD保护大于2.5KV;擦可写寿命100万次,数据保持时间100年;8-pi

20、n DIP和8-pin SOP封装。(3)24C02引脚功能如下表2所示。表2 24C02各引脚功能说明引脚引脚功能A0-A2地址输入端SDA串行地址和数据输入输出端,SDA是双向数据传输引脚,漏极开路,需外接上拉电阻到VCCSCL串行时钟输入,SCL同步数据传输,上升沿数据写入,下降沿数据读出。WP写保护,WP引脚提供硬件数据保护,WP接地时,允许数据正常读写操作,当WP接VCC时,写保护,只读。(4)24C02在电路中的连接如图5所示。图5 24C02连接图如上图所示SCL接P3.4口,SDA接P3.5口;单片机是通过数据输入/输出端进行数据传输的,WP接地此时允许单片机进行读写操作,A0

21、-A2接地说明此时的地址为000H。在使用这部分时,我是先让单片机读取按键编码,然后单片机再从24C02中读取存储密码,与按键输入的密码进行比对,如果一致则开锁,不同则报错。3.4 矩阵键盘电路的设计为何选用图3的接法呢?假设一个端口接一个按键,那么51单片机最多也就只能接32个按键而已。如果一项工程需要33个按键或者更多,仅以一个端口接一个按键的形式恐怕工程量将会非常的浩大。如果以矩阵的形式进行设计,那么33个按键也就仅需要在16个按键上多加几条线而已所需也不过几个端口而已,其在一个单片机上就能轻易的实现。而且所用键盘数越多其优势也就越突出。由此可见,在本次设计中采用下图这种接法是合理的。在

22、本次设计中我采用的是44的矩阵键盘。其列线接的是P1.0-P1.3口,行线接的是P1.4-P1.5口其连接方式如图6所示。图6 键盘输入原理图3.5 报警电路设计报警部分由陶瓷压电发声装置及外围电路组成,加电后不发声,当有键按下时,“叮”声,每按一下,发声一次,密码正确时,不发声直接开锁,当密码输入错误时,单片机的P2.1引脚为低电平,三极管T3导喇叭发出噪鸣声报警。如图7所示。图7 报警电路原理图3.6 开锁模块的设计通过单片机开锁执行机构,电路驱动电磁锁吸合,从而达到开锁的目的。其原理如图8所示。图8 密码锁开锁机构示意图 当用户输入的密码正确时,单片机便输出开门信号,送到开锁驱动电路,然

23、后驱动电磁锁,达到开门的目的。其实际电路如图9所示。电路由驱动和开锁两级组成。由D1、R12、Q1组成驱动电路,其中Q1可以选择普通的小功率三极管如8050、9018都可以满足要求。D1是开锁指示灯;由D2、C5组成开锁。其中D2、C5是为了消除电磁锁可能产生的反向高电压以及可能产生的电磁干扰。电磁锁的选用要视情况而定,但是吸合力要足够且有一定的余量。在设计中,暂时用发光二极管代替电磁锁,发光管亮,表示开锁;灭,表示没有开锁。原理图如9所示。图9 开锁电路原理图4 软件程序设计4.1主程序设计本系统软件设计由主程序、初始化程序、LCD显示程序、键盘扫描程序、键功能程序、密码设置程序、EEPRO

24、M读写程序和延时程序等组成。如图10所示为主程序流程图,开始接上电源,程序进行初始化设置,然后在键盘上输入密码,此系统进行键盘扫描,密码正确,开锁成功,密码错误3次出错报警,选择是否修改密码,若要修改密码,先输入旧密码密码,密码正确后设置新密码,错误时报警,需要两次确认新密码,确认后,密码修改成功,否则结束最终返回。然后启动程序,进行保护,再次在键盘上输入密码,系统进行扫描,如果和之前一样,则执行相同程序,如不是,则执行另一种程序。主程序流程图如图10所示。 图10主程序流程图4.2 按键软件设计如图11为按键功能流程图,在按键当中,有与输入、开锁、清除、设置、确认的程序相对应的按键,并按顺序

25、与输入的数相比较,当输入正确时,进入密码程序,错误时进行清除,输入两次新密码正确时,可进行重新设置密码,最后确认程序。按键功能流程图如图11所示。图11 按键功能流程图4.3 密码设置软件设计如图12为密码设置流程图,开始按下设置键,输入旧密码,如果错误累计三次,进行报警程序。如输入正确,可以修改密码,确认后再次输入新密码,如两次输入一样,则更改成功。如果两次输入的新密码不一样,则修改密码失败,重新返回设置新密码。密码设置流程图如图12所示。图12 密码设置流程图4.4 开锁软件设计如图13为开锁流程图,开始时按开锁键,输入密码,如果输入正确,则开锁成功。如果输入错误累计达到三次,则执行报警程

26、序。开锁流程图如图13所示。图13开锁流程图5 系统仿真与调试5.1 程序调试经过以上的理论分析,在进行硬件系统组装、软件编程,然后就进入调试阶段。从下面的运行情况来看,软件编译成功。从图14可以看出编译链接成功,其效果如图14所示。图14 程序编译成功经过上步编译成功之后,就可进行下步生成二进制文件如图15所示图15 生成HEX文件5.2 仿真调试程序检测无误后,进行仿真测试,将各个模块连接,仿真测试结果如图16所示。图16 Proteus仿真图5.3 调试结果及分析程序导入单片机成功后,要输入初始化密码,通过按键输入6位初始化密码,我输入131420,就会显示“Init password”

27、、当我再输入开锁密码008888时,就会出现图17所示的现象。 图17 密码锁打开开锁的密码为008888,我现在先后输入111111按号键会出现图18显现。图18 报警时的效果图 接着上面的步骤再输入123456和789456时后出现图19所示的现象。图19 密码输入超过3次当两次输入008888并按下重置键时输入新密码111111,屏幕上会出现input again,如图20所示。图20 显示再此输入新密码的提示接着上面的步骤,再次输入111111并按下D号键会出现图21所示现象。图21 重置密码成功 注意此时密码并不是111111,而是01111111(要在1分钟之后,2分钟之前完成重置

28、功能,初始化程序时,过一分钟,进行重置成功的话,其密码前两位就变为01,而后四位是用户自己设定的,故密码变为011111。)附录A附录B #include#define uchar unsigned charsbit e=P27;sbit rw=P26;sbit rs=P25;void relay();void wcode(uchar c);void wdata(uchar w);int kbscan();void mima(int w,int k);void zf(int w);void wait();void init();void zfc(int x,uchar idata *s);vo

29、id kai();void cuo();void she();void xiu();void zisuo();uchar idata shu15=0x45,0x6e,0x74,0x65,0x72,0x20,0x50,0x61,0x73,0x73,0x77,0x6f,0x64,0x3a,0x00;uchar idata ture6=0x72,0x69,0x67,0x68,0x74,0x00;uchar idata error6=0x65,0x72,0x72,0x6f,0x72,0x00;uchar idata b6=1,2,3,4,5,6;uchar idata new13=0x6e,0x65,

30、0x77,0x20,0x50,0x61,0x73,0x73,0x77,0x6f,0x64,0x3a,0x00;uchar idata new16=0x61,0x67,0x61,0x69,0x6e,0x00;uchar a6;uchar idata zs5=0x57,0x41,0x49,0x54,0x00;uchar idata open7=0x4f,0x50,0x45,0x4e,0x45,0x44,0x00;uchar idata close6=0x43,0x4c,0x4f,0x53,0x45,0x00;main() while(1) int z=0; int k=0; int c=0; int w=0; int s=0; int i=0; int f=0; while(z=0) a5=20; s=0; init(); while(k!=15) k=kbscan(); wcode(0x0f); zfc(0,shu); while(c=0&k=0&k=

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

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