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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

基于单片机的电子密码锁设计.docx

1、基于单片机的电子密码锁设计基于单片机的电子密码锁设计摘 要在日常的生活和工作中, 住宅与部门的安全防范、单位的文件档案、财务报表以及一些个人资料的保存多以加锁的办法来解决。若使用传统的机械式钥匙开锁,人们常需携带多把钥匙, 使用极不方便, 且钥匙丢失后安全性即大打折扣。在安全技术防范领域,具有防盗报警功能的电子密码锁逐渐代替了传统的机械式密码锁,电子密码锁具有安全性高、成本低、功耗低、易操作等优点。本文从经济实用的角度出发,采用美国Atmel公司的单片机AT89S51作为主控芯片与数据存储器单元,结合外围的矩阵键盘输入、LCD液晶显示、报警、开锁等,用C语言编写的主控芯片控制程序与EEPROM

2、 AT24C02读写程序相结合,并用Keil软件进行编译,设计了一款可以多次更改密码,具有报警功能的电子密码控制系统。这种密码锁的电路设计具有防试探按键输入、智能控制上锁、开锁、报警、修改密码等多种功能。密码长度可变、保密性强、灵活性高、应用日益广泛。关键字:密码锁;单片机;报警;LCD显示Design of Electric Password Lock Based on MCUABSTRACTIn the daily life and the work, the way to the houses and departments safe guard, units document file

3、, the financial reporting as well as some individual material preservation almost need many locks. If we use tradition mechanical key to open, the people often must carry many keys, but it is not extremely convenient. If the key lost, the security will decline greatly. In the safety work guard domai

4、n, the lock with security warning function electronic combination have replaced the traditional mechanical combination lock gradually, the electronic combination lock have the highly security, the lowly cost , the lowly power wastage, easy to operate and so on merits. This article is based on the ec

5、onomical and practical point of view, uses the United States Atmel Corporation AT89S51 microcontroller as a master chip and the data memory unit, it combines with the external matrix keyboard input, LCD digital display, alarm, unlock and so on circuits, dominates by the C programming language chip E

6、EPROM of the control procedures and carries on the translation with Keil software, the password can be changed many times, the electronic the password control also has the alarming function. This password lock circuit design has anti-test button input, intelligent control lock, unlock, alarm and cha

7、nge the password multiple functions. Password length can be changed, great security and high flexible than others, it is widely used.Key Words:Password lock;MCU;Alarm;LCD Display引言 1 第1章 绪论 2 1.1 选题背景 2 1.2 设计目标 2 1.3 设计方案的选择 2 第2章 硬件系统设计 4 2.1系统芯片介绍 4 2.1.1单片机AT89S51功能介绍 4 2.1.2 存储芯片AT24C02介绍 6 2.1

8、.3 I2C总线介绍 7 2.1.4 LCD1602显示器介绍 8 2.2 硬件电路设计 9 2.2.1 键盘输入电路 10 2.2.2 电源输入电路 10 2.2.3 掉电存储电路 11 2.2.4 复位电路 11 2.2.5 晶振电路 12 2.2.6 显示电路 12 2.2.7 报警电路 13 2.2.8 开锁电路 13 第3章 软件程序设计 15 3.1主程序流程图 15 3.2 按键软件设计 15 3.2.1 按键功能程序流程图 15 3.2.2 按键功能子程序 16 3.3 密码设置软件设计 17 3.3.1 密码设置程序流程图 17 3.3.2 密码设置子程序 18 3.4 开锁

9、软件设计 19 3.4.1 开锁程序流程图 19 3.4.2 开锁功能子程序 19 第4章 调试与实现 21 4.1 硬件调试 21 4.2 软件调试 21 4.3 Proteus仿真 21 结论与展望 23 致 谢 24 参考文献 25 附录A 密码锁电路原理图 26 附录B 一篇引用的外文文献及其译文 27 附录C 主要参考文献的题录及摘要 32 附录D 主要C语言源程序 34 插图清单图2-1 AT89S51芯片引脚图 4 图2-2 AT24C02的芯片引脚图 6 图2-3 开始结束信号图 8 图2-4 电子密码锁原理框图 10 图2-5 键盘输入原理图 10 图2-6 电源输入电路原理

10、图 11 图2-7 掉电存储电路原理图 11 图2-8 复位电路原理图 12 图2-9 晶振电路原理图 12 图2-10 显示电路原理图 13 图2-11 报警电路原理图 13 图2-12 密码锁开锁机构示意图 14 图2-13 开锁电路原理图 14 图3-1 主程序流程图 15 图3-2 按键功能流程图 16 图3-3 密码设置流程图 17 图3-4 开锁流程图 19 图4-1 Proteus仿真电路图 22 插表清单表2-1 P3口管脚备选功能 6 表2-2 LCD1602接口信号说明 9 表2-3 LCD1602基本操作程序 9 引言在当今社会,安全防盗已成为社会问题,而锁自古以来就是防

11、盗的重要工具,目前国内大部分人使用的还是传统的机械锁,然而,眼下假冒伪劣的机械锁互开率非常之高,此外,即使是一把质量过关的机械锁,通过急开锁,甚至可以在不损坏锁的前提下将锁打开。机械锁的这些弊端为一种新型的锁电子密码锁,提供了很大的发展空间。从目前的技术水平和市场认可程度看,使用最为广泛的是键盘式电子密码锁,该产品主要应用于保险箱、保险柜和取款机,由于人们对安全的重视和科技的发展,许多电子智能锁(指纹识别、IC卡辨认)已在国内外相继面世。但是这些产品的特点是针对特定的指纹和有效卡,只能适用于保密要求的箱、柜、门等。而且指纹识识别器在公共场所使用存在容易机械损坏,IC卡还存在容易丢失、损坏等缺点

12、,再加上其成本较高,一定程度上限制了这类产品的普及和推广。鉴于目前的技术水平与市场的接受程度,键盘式电子密码锁是这类电子防盗产品的主流。在科学技术不断发展的今天,电子密码防盗锁作为防盗卫士的作用也日趋重要。电子密码锁是集计算机技术、电子技术、数字密码技术为一体的机电一体化高科技产品,具有安全性高,使用方便等优点。本次毕业论文主要分为两大模块,一是硬件系统电路部分,另一个是用C语言编写的软件程序部分,基本能完成电子密码锁的开锁、修改密码、密码错误报警等主要功能,成本低,可靠性高,具有很好的市场应用价值。第1章 绪论1.1 选题背景在安全技术防范领域,具有防盗报警功能的电子密码控制系统逐渐代替传统

13、的机械式密码控制系统,克服了机械式密码控制的密码量少、安全性能差的缺点,使电子密码控制系统无论在技术上还是在性能上都大大提高了一步。随着大规模集成电路技术的发展,特别是单片机的问世,出现了带微处理器的智能密码控制系统,它除具有传统电子密码控制系统的功能外,还引入了智能化管理、专家分析系统等功能,从而使密码控制系统具有很高的安全性、可靠性,应用日益广泛。电子密码控制是一种通过密码输入来控制电路或是芯片工作,从而控制机械开关的闭合,完成开锁、闭锁任务的电子产品。电子密码控制不论性能还是安全性都已大大超过了机械类。其特点如下:1) 保密性好,远远高于机械锁控制。随机开锁成功率几乎为零。2) 密码可变

14、,用户可以随时更改密码,防止密码被盗,同时也可以避免因人员的更替而使控制的保密性下降。3) 误码输入保护,当输入密码多次错误时,报警系统自动启动。4) 无活动零件,不会磨损,寿命长。5) 使用灵活性好,不像机械锁必须佩带钥匙才能开锁。6) 电子密码控制系统具有操作简单易行,一学即会的特点。1.2 设计目标本设计采用单片机为主控芯片,结合外围电路,组成电子密码控制系统,用户想要打开锁,必先通过提供的键盘输入正确的密码才可以,密码输入错误有提示,为了提高安全性,当密码输入错误三次将报警。密码可以由用户自己修改设定,锁打开后才能修改密码。修改密码之前必须再次输入密码,在输入新密码时候需要二次确认,以

15、防止误操作。1.3 设计方案的选择方案一:采用数字电路控制方案用以74LS112双JK触发器构成的数字逻辑电路作为密码控制系统的核心控制,共设了9个用户输入键,其中只有4个是有效的密码按键,其它的都是干扰按键,若按下干扰键,键盘输入电路自动清零,原先输入的密码无效,需要重新输入;如果用户输入密码的时间超过10秒,电路将报警20秒,若电路连续报警三次,电路将锁定键盘2分钟,防止他人的非法操作 。采用数字电路设计方案时设计虽然简单,但控制的准确性和灵活性差。故不采用。方案二:采用单片机控制方案由于单片机种类繁多,各种型号都有其一定的应用环境,因此在选用时要多加比较,合理选择,以期获得最佳的性价比。

16、一般来说在选取单片机时从下面几个方面考虑:性能、存储器、运行速度、I/O口、定时/计数器、串行接口、模拟电路功能、工作电压、功耗、封装形式、抗干扰性、保密性,除了以上的一些还有一些最基本的,比如:中断源的数量和优先级、工作温度范围、有没有低电压检测功能、单片机内有无时钟振荡器、有无上电复位功能等。在开发过程中单片机还受到:开发工具、编程器、开发成本、开发人员的适应性、技术支持和服务等等因素 。基于以上因素本设计选用单片机AT89S51作为本设计的核心元件,利用单片机灵活的编程设计和丰富的I/O端口,及其控制的准确性,实现基本的密码控制功能。在单片机的外围电路外接输入键盘用于密码的输入和一些功能

17、的控制,外接LCD显示器用于显示作用。当用户需要开锁时,先按键盘开锁键之后按键盘的数字键09、AF输入密码。密码输完后按下确认键,如果密码输入正确则开锁,不正确时显示灯不亮,重新输入密码,当三次密码错误则发出报警;当用户需要修改密码时,先按下键盘设置键后输入原来的密码,只有当输入的原密码正确后才能设置新密码,新密码要二次确认,两次新密码输入无异后按确认键使新密码将得到存储,密码修改成功。明显可以看出方案二的控制灵活,准确性好,且保密性强还具有扩展功能,根据现实生活的需要此次设计采用方案二,即利用单片机AT89S51以及其外围接口电路完成电子密码锁的设计。第2章 硬件系统设计2.1系统芯片介绍2

18、.1.1单片机AT89S51功能介绍AT89S51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROMFalsh Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器,俗称单片机。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89S51是一种高效微控制器,为很多嵌入式控制系统提供了一种灵活性高且价廉的方案,AT89S51芯片引脚图如图2-1所示。主要特性:与MCS-51 兼容 4K字节可编程闪烁存储器

19、 寿命:1000写/擦循环数据保留时间:10年全静态工作:0Hz-24Hz三级程序存储器锁定128*8位内部RAM32可编程I/O线两个16位定时器/计数器5个中断源 可编程串行通道低功耗的闲置和掉电模式片内振荡器和时钟电路 管脚说明:下面按其引脚功能分为四部分叙述这40条引脚的功能。 1、主电源引脚VSS和VSS 图2-1 AT89S51芯片引脚图VSS(40脚)接+5V电压;VSS(20脚)接地。 2、外接晶体引脚XTAL1和XTAL2 XTAL1(19脚)接外部晶体的一个引脚。在单片机内部,它是一个反相放大器的输入端,这个放大器构成了片内振荡器。当采用外部振荡器时,对HMOS单片机,此引

20、脚应接地;对SHMOS单片机,此引脚作为驱动端。 XTAL2(18脚)接外晶体的另一端。在单片机内部,接至上述振荡器的反相放大器的输出端。采用外部振荡器时,对HMOS单片机,该引脚接外部振荡器的信号,即把外部振荡器的信号直接接到内部时钟发生器的输入端;对XHMOS,此引脚应悬浮。 3、控制或与其它电源复用引脚RST/VPD、ALE/PROG、PSEN和EA/VPP RST/VPD(9脚)当振荡器运行时,在此脚上出现两个机器周期的高电平将使单片机复位。推荐在此引脚与VSS引脚之间连接一个约8.2k的下拉电阻,与VSS引脚之间连接一个约10F的电容,以保证可靠地复位。 VSS掉电期间,此引脚可接上

21、备用电源,以保证内部RAM的数据不丢失。当VSS主电源下掉到低于规定的电平,而VPD在其规定的电压范围(50.5V)内,VPD就向内部RAM提供备用电源。 ALE/PROG(30脚):当访问外部存贮器时,ALE(允许地址锁存)的输出用于锁存地址的低位字节。即使不访问外部存储器,ALE端仍以不变的频率周期性地出现正脉冲信号,此频率为振荡器频率的1/6。因此,它可用作对外输出的时钟,或用于定时目的。然而要注意的是,每当访问外部数据存储器时,将跳过一个ALE脉冲。ALE端可以驱动(吸收或输出电流)8个LS型的TTL输入电路。 对于EPROM单片机(如8751),在EPROM编程期间,此引脚用于输入编

22、程脉冲(PROG)。 PSEN(29脚):此脚的输出是外部程序存储器的读选通信号。在从外部程序存储器取指令(或常数)期间,每个机器周期两次PSEN有效。但在此期间,每当访问外部数据存储器时,这两次有效的PSEN信号将不出现。PSEN同样可以驱动(吸收或输出)8个LS型的TTL输入。 EA/VPP(引脚):当EA端保持高电平时,访问内部程序存储器,但在PS(程序计数器)值超过0FFFH(对851/8751/80S51)或1FFFH(对8052)时,将自动转向执行外部程序存储器内的程序。当EA保持低电平时,则只访问外部程序存储器,不管是否有内部程序存储器。对于常用的8031来说,无内部程序存储器,

23、所以EA脚须常接地,这样才能只选择外部程序存储器。 对于EPROM型的单片机(如8751),在EPROM编程期间,此引脚也用于施加21V的编程电源(VPP)。4控制或与其它电源复用引脚 RST/Vpd,ALE/PROG,PSEN 和EA/Vpp。RST/Vpd 当振荡器运行时。在此引脚上出现两个机器同期的高电平(由低到高跳变),将使单片机复位。在 VSS掉电期间,此引脚可接上备用电源,由 Vpd向内部 RAM提供备用电源,以保持内部RAM中的数据。ALE/PROG 正常操作时为ALE功能(允许地址钱存),提供把地址的低字节锁存到外部锁存器。ALE引脚以不变的频率(振荡周期的1/6)周期性地发出

24、正脉冲信号。因此,它可用作对外输出的时钟,或用于定时目的。但要注意,每当访问外部数据存储器时,将跳过一个 ALE脉冲。 ALE端可以驱动(吸收或输出电流)八个 LSTTL电路。对于 EPROM型单片机,在 EPROM编程期间,此引脚接收编程脉冲(PROG功能)。PSEN 外部程序存储器读选通信号输出端。在从外部程序存储器取指令(或数据)期间;PSEN 在每个机器周期内两次有效。 PSEN 同样可以驱动八个LSTTL输入。EAVpp EA为内部程序存储器和外部程序存储器选择端。当EA为高电平时,访问内部程序存储器(PS值小于4K)。当EA为低电平时,则访问外部程序存储器。对于EPROM型单片机,

25、在EPROM编程期间,此引脚上加21VEPROM编程电源(Vpp)。5、输入/输出(I/O)引脚P0、P1、P2、P3(共32根) P0口(39脚至32脚):是双向8位三态I/O口,在外接存储器时,与地址总线的低8位及数据总线复用,能以吸收电流的方式驱动8个LS型的TTL负载。 P1口(1脚至8脚):是准双向8位I/O口。由于这种接口输出没有高阻状态,输入也不能锁存,故不是真正的双向I/O口。P1口能驱动(吸收或输出电流)4个LS型的TTL负载。对8052、8032,P1.0引脚的第二功能为T2定时/计数器的外部输入,P1.1引脚的第二功能为T2EX捕捉、重装触发,即T2外部控制端。对EPRO

26、M编程和程序验证时,它接收低8位地址。 P2口(21脚至28脚):是准双向8位I/O口。在访问外部存储器时,它可以作为扩展电路高8位地址总线送出高8位地址。在对EPROM编程和程序验证期间,它接收高8位地址。P2可以驱动(吸收或输出电流)4个LS型的TTL负载。 P3口(10脚至17脚):是准双向8位I/O口,在MSS-51中,这8个引脚还用于专门功能,是复用双功能口。P3能驱动(吸收或输出电流)4个LS型的TTL负载。 作为第一功能使用时,就作为普通I/O口用,功能和操作方法与P1口相同。作为第二功能使用时,各引脚的定义如表所示。 值得强调的是,P3口的每一条引脚均可独立定义为第一功能的输入

27、输出或第二功能。表2-1 P3口管脚备选功能P3.0RXD(串行输入口)P3.1TXD(串行输出口)P3.2/INT0(外部中断0)P3.3/INT1(外部中断1)P3.4T0(记时器0外部输入)P3.5T1(记时器1外部输入)P3.6/WR(外部数据存储器写选通)P3.7/RD(外部数据存储器读选通)2.1.2 存储芯片AT24C02介绍如图2-2为AT24C02的芯片引脚图。图2-2 AT24C02的芯片引脚图特点:低压和标准电压运行模式 2.7 (VCC = 2.7V to 5.5V) 1.8 (VCC = 1.8V to 5.5V)内建128x8存储序列,2线制串行接口,双向数据传送协

28、议,100kHz(1.8V,2.5V,2.7V) 和400kHz(5V)兼容,写同步时钟(最大10ms),高可靠性,极限:1M写时钟周期,数据保存:100年,不断推进的芯片等级扩大了设备的可用温度范围。AT24C02提供电可擦除的串行1024位存储或可编程只读存储器(EEPROM)128字(8位/字)。芯片在低压的工业与商业应用中进行了最优化。设备操作:CLOCK 和DATA变化:SDA管脚通常外部要拉高。SDA管脚上的数据只能在SCL低期间改变。数据在SCL高期间改变定义为一个开始或停止信号。开始状态:在任何操作之前必须有一个开始信号-在SCL为高时SDA上产生一个下降沿。停止状态: SCL

29、为高时SDA产生一个上升沿是停止信号,停止信号后将停止所有通信。在一个读的序列之后,停止信号将让EEPROM进入备用电源模式。2.1.3 I2C总线介绍I2C(InterIntegrated Circuit)总线是一种由PHILIPS公司开发的两线式串行总线,用于连接微控制器及其外围设备。I2C总线产生于在80年代,最初为音频和视频设备开发,如今主要在服务器管理中使用,其中包括单个组件状态的通信。例如管理员可对各个组件进行查询,以管理系统的配置或掌握组件的功能状态,如电源和系统风扇。可随时监控内存、硬盘、网络、系统温度等多个参数,增加了系统的安全性,方便了管理。I2C总线的硬件结构:I2C串行

30、总线一般有两根信号线,一根是双向的数据线SDA,另一根是时钟线SCL。所有接到I2C总线设备上的串行数据SDA都接到总线的SDA上,各设备的时钟线SCL接到总线的SCL上。为了避免总线信号的混乱,要求各设备连接到总线的输出端时必须是开漏输出或集电极开路输出。设备上的串行数据线SDA接口电路应该是双向的,输出电路用于向总线上发送数据,输入电路用于接收总线上的数据。而串行时钟线也应是双向的,作为控制总线数据传送的主机。 总线的运行(数据传输)由主机控制。所谓主机是指启动数据的传送(发出启动信号)、发出时钟信号以及传送结束时发出停止信号的设备,通常主机都是微处理器。被主机寻访的设备称为从机。为了进行

31、通讯,每个接到I2C总线的设备都有一个唯一的地址,以便于主机寻访。主机和从机的数据传送,可以由主机发送数据到从机,也可以由从机发到主机。凡是发送数据到总线的设备称为发送器,从总线上接收数据的设备被称为接受器。总线的构成及信号类型:I2C总线是由数据线SDA和时钟SCL构成的串行总线,可发送和接收数据。在CPU与被控IC之间、IC与IC之间进行双向传送,最高传送速率100kbps。各种被控制电路均并联在这条总线上,但就像电话机一样只有拨通各自的号码才能工作,所以每个电路和模块都有唯一的地址,在信息的传输过程中,I2C总线上并接的每一模块电路既是主控器(或被控器),又是发送器(或接收器),这取决于它所要完成的功能。CPU发出的控制信号分为地址码和控制量两部分,地址码用来选址,即接通需要控制的电路,确定控制的种类;控制量决定该调整的类别(如对比度、亮度等)及需要调整的量。这样,各控制电路虽然挂在同一条总线上,却彼此独立,互不相关。I2C总线在传送数据过程中共有三种类型信号, 它们分别是:开始信号、结束信号和应答信号。开始信号:SCL为高电平时,SDA由高电平向低电平跳变,开始传送数据。结束信号:SCL为高电平时,SDA由低电平向高电平跳变,结束传送数据。 应答信号:接收数据的IC

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2