《本科毕业设计---基于单片机的密码锁设计.doc》由会员分享,可在线阅读,更多相关《本科毕业设计---基于单片机的密码锁设计.doc(47页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、 安徽大学经济技术学院 毕 业 论 文(设计) 论文题目 基于单片机的密码锁设计 姓 名 学 号 09531013 院 系 经济技术学院 专 业 电子信息工程 指导教师 李阳 职 称 副教授 中国合肥二0一三年五月 安徽农业大学经济技术学院学士学位论文(设计)开题报告课题名称基于单片机的密码锁设计课题来源导师指定学生姓名专业电子信息工程学号09531013指导教师姓名职称副教授研究内容本系统由STC89C52单片机系统(主要是STC89C52单片机最小系统)、44矩阵键盘、LCD1602显示和报警系统等组成,具有设置、修改六位用户密码、超次报警、超次锁定、密码错误报警等功能(本设计由P0口控制
2、LCD显示,密码正确显示OPEN! 密码错误显示error!超过三次输入错误自动锁定。由P1口控制矩阵键盘含有0-9数字键和A-F功能键。)。除上述基本的密码锁功能外,依据实际的情况还可以添加遥控功能。研究计划3月中3月底 调研、查资料。4月初4月中 确定系统架构、分析并划分各功能模块的接口。4月底5月中 各功能模块软、硬件的设计与开发。5月下5月底 各功能模块及整个系统的调试与运行。撰写毕业设计论文。特色与创新 1.按键设置6位密码,输入密码若密码正确,则锁打开。显示open!2.密码可以自己修改(6位密码),必须是锁打开时才能改密。为防止误操作,修改密码得输入两次。3.若密码输入错误次数超
3、过3次,蜂鸣器报警并且锁定键盘。4.液晶屏亮度会随光线自动调整。计较方便,易懂指导教师意见同意开题。教研室意见 同意开题。学院意见同意开题。目 录第一章 绪论.11.1、课题背景和意义.11.2、电子密码锁发展趋势.2第二章 设计思想.3第三章 系统硬件设计43.1硬件支持.4 3.1.1STC89C52RC 单片机介绍.4 3.1.2液晶显示LCD1602的介绍.5 3.1.3自锁开关说明.5 3.1.4上拉电阻介绍.5 3.1.5三极管介绍.6 3.1.6继电器介绍.8 3.1.7供电方式.9 3.1.8轻触按键.9 3.2功能单元模块设计.10 3.2.1 开锁机构.10 3.2.2 矩
4、阵键盘设计电路.11 3.2.3 声音提示电路设计.11 3.2.4 AT24C02掉电存储单元的设计.12第四章 程序设计与系统仿真.13 4.1 模块介绍. 13 4.1.1 主程序模块. 14 4.1.2 密码比较判断模块.15 4.1.3 键盘扫描模块.15 4.1.4 修改密码模块.16 4.2 电子密码锁原理图.18 4.2.1总店路图.18 4.2.2控制电路.18 4.2.3实物图.19 4.2.4仿真图.19第五章 系统功能.19第六章 设计总结.19致谢.20 参考文献.20附录 .21a 电子密码锁元件清单.21b 源程序.22基于单片机的密码锁设计学生:杨宇,指导教师:
5、李阳(安徽农业大学 经济技术学院 合肥 09531013)摘 要:本设计提出了一种电子密码锁的设计方法。本系统由STC89C52单片机系统、44矩阵键盘、LCD1602显示和报警系统等组成,具有设置、修改六位用户密码、超次报警、超次锁定、密码错误报警等功能。本系统成本低廉,功能实用。关键词:单片机,电子密码锁,44矩阵键盘 AbstractThis paper presents a design method of the design of electronic password lock. The system consists of STC89C52 single-chip microc
6、omputer system, 4 * 4 matrix keyboard, LCD1602 display and alarm system etc., has provided six, modify user password, the alarm, super lock, error alarm passwords and other functions. This system has the advantages of low cost, practical function.Key words :AT89S51 ,Electronic password lock ,44 keyb
7、oard第一章 绪论1.1 课题背景和意义随着电子技术和计算机技术的飞速发展,单片机性能不断完善,性能价格比显著提高,技术日趋完善。由于单片机具有体积小、重量轻、价格便宜、功耗低、控制功能强及运算速度快等特点,因而在国民经济建设、军事及家用电器等各个领域均得到了广泛的应用。本设计利用单片机及附加电子元器件实现数据采集和控制算法,来完成某一实际功能。随着人们生活水平的提高和安全意识的加强,对安全的要求也就越来越高。锁自古以来就是把守护门的铁将军,人们对它要求甚高,既要安全可靠的防盗,又要使用方便,这也是制锁者长期以来研制的主题。随着电子技术的发展,各类电子产品应运而生,电子密码锁就是其中之一。电
8、子锁是通过键盘输入一组密码完成开锁过程。研究这种锁的初衷,就是为提高锁的安全性。由于电子锁的密钥量(密码量)极大,可以与机械锁配合使用,并且可以避免因钥匙被仿制而留下安全隐患。电子锁只需记住一组密码,无需携带金属钥匙,免除了人们携带金属钥匙的烦恼,而被越来越多的人所欣赏。电子锁的种类繁多,例如数码锁,指纹锁,磁卡锁,IC卡锁,生物锁等。但较实用的还是按键式电子密码锁。20世纪80年代后,随着电子锁专用集成电路的出现,电子锁的体积缩小,可靠性提高,成本较高,是适合使用在安全性要求较高的场合,且需要有电源提供能量,使用还局限在一定范围,难以普及,所以对它的研究一直没有明显进展。目前,在西方发达国家
9、,电子密码锁技术相对先进,种类齐全,电子密码锁已被广泛应用于智能门禁系统中,通过多种更加安全,更加可靠的技术实现大门的管理。国内的不少企业也引进了世界上先进的技术,发展前景非常可观。希望通过不断的努力,使电子密码锁在我国也能得到广泛应用。1.2 电子密码锁发展趋势 电子密码锁应用于金融业,其根本的作用是“授权”,即被“授权”的人才可以存取钱、物。广义上讲,金融业的“授权”主要包括以下三种层次的内容:1、授予保管权,如使用保管箱、保险箱和保险柜;2、授予出入权,如出入金库、运钞车和保管室;3、授予流通权,如自动存取款。目前,金融行业电子密码锁的应用主要集中在前两个层面上。下面将介绍几种在金融行业
10、中使用较多的电子密码锁以及它们的技术发展方向。当然,以上所说的授权技术再高超,都必须由精良的“锁具”担当承载结构部件,实现开启、闭锁的功能,而且承担实体防护作用,抵抗住或尽量延迟破坏行为,让电子密码锁“软、硬不吃”。一般情况下,锁具防盗的关键是锁身外壳、闭锁的部件的强度、锁止型式、配合间隙和布局。提高电子密码锁之防护能力的必然途径是报警,在金融业的许多场所有人值守、有电视监控,具有报警功能,可以综合物理防范和人力防范两种作用。报警的前提是具备探测功能,根据电子密码锁的使用场所和防护要求,可选择多种多样的探测手段。在中国的城市金融业中,实现联网报警已经成为对各金融网点的基本要求。根据国内外的实践
11、经验,金融业实行安全防范风险等级很有必要,即依据使用的防盗报警器材的性能、安装布局和人员值守状况等,可以评估被防护物或区域的防护能力,得出风险等级,其中,电子密码锁的性能至关重要。由于数字、字符、图形图像、人体生物特征和时间等要素均可成为钥匙的电子信息,组合使用这些信息能够使电子密码锁获得高度的保密性,如防范森严的金库,需要使用复合信息密码的电子密码锁,这样对盗贼而言是“道高一尺、魔高一丈”。组合使用信息也能够使电子密码锁获得无穷扩展的可能,使产品多样化,对用户而言是“千挑百选、自得其所”。 单显示 键盘 片 机 开锁 图1.1 总体框图 工作过程(1) 按键设置6位密码,输入密码,通过单片机
12、判断,若密码正确,通过则锁打开,显示open!(2) 首次使用时输入:131420,对密码进行初始化,当显示:initpassword,证明密码初始化完成,此时的密码为:000000。第二章 设计思想(1)本设计为了防止密码被窃取要求在输入密码时在LCD屏幕上显示*号。(2)设计开锁密码位六位密码的电子密码锁。(3)能够LCD显示在密码正确时显示open!,密码错误时显示ERROR,输入密码时显示initpassword。(4)实现输入密码错误超过限定的三次电子密码锁定。(5)44的矩阵键盘其中包括0-9的数字键和A-D的功能键(6)本产品具备报警功能,当输入密码错误时蜂鸣器响并且LED灯亮。
13、 (7)密码可以由用户自己修改设定(只支持6位密码),修改密码之前必须再次输入密码,在输入新密码时候需要二次确认,以防止误操作 第三章 系统的硬件设计3.1硬件支持 3.1.1 STC89C52RC 单片机介绍STC89C52是一种低功耗、高性能CMOS8位微控制器,具有 8K 在系统可编程Flash 存储器。在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使得STC89C51为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。 具有以下标准功能: 8k字节Flash,512字节RAM, 32 位I/O 口线,看门狗定时器,内置8KB EEPROM,MAX810复位电路,三个1
14、6 位 定时器/计数器,一个6向量2级中断结构,全双工串行口。另外 STC89X51 可降至0Hz 静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU 停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。最高运作频率35Mhz,6T/12T可选。图3-1 STC89C52单片机引脚图 主要特性如下: (1) 增强型 8051 单片机,6 时钟/机器周期和 12 时钟/机器周期可以任 意选择,指令代码完全兼容传统 8051. (2)工作电压:5.5V3.3V(5V 单片机)/3.8V
15、2.0V(3V 单片机) (3) 工作频率范围:040MHz,相当于普通 8051 的 080MHz,实际工 作频率可达 48MHz (4) 用户应用程序空间为 8K 字节 (5) 片上集成 512 字节 RAM (6) 通用 I/O 口 (32 个) 复位后为: , P1/P2/P3/P4 是准双向口/弱上拉, P0 口是漏极开路输出,作为总线扩展用时,不用加上拉电阻,作为 I/O 口用时,需加上拉电阻。 (7)ISP(在系统可编程)/IAP(在应用可编程) ,无需专用编程器,无 需专用仿真器,可通过串口(RxD/P3.0,TxD/P3.1)直接下载用户程 序,数秒即可完成一片(8)具有 E
16、EPROM 功能 (9)具有看门狗功能 (10)共 3 个 16 位定时器/计数器。即定时器 T0、T1、T2(11)外部中断 4 路,下降沿中断或低电平触发电路,Power Down 模式可 由外部中断低电平触发中断方式唤醒 (12)通用异步串行口(UART) ,还可用定时器软件实现多个 UART (13) 工作温度范围:-40+85(工业级)/075(商业级) (14) PDIP 封装 3.1.2液晶显示LCD1602的介绍(1)LM1602字符型模块的性能重量轻:100g;体积小:11mm 厚;功耗低:1015mW;显示内容:192 种字符(57 点字型);32 种字符(510 点字型)
17、;可自编8(57)或许(510)种字符;指令功能强:可组合成各种输入、显示、移位方式以满足不同的要求;接口简单方便:可与8 位微处理器或微控制器相联;工作温度宽:050oC可靠性高:寿命为50,000 小时(25oC)图3-2 液晶原理图 3.1.3自锁开关说明自锁开关电路中起到电源的开关作用,常开的其中一脚接DC电源插口电源脚,常开的另一脚接电路的VCC 图3-3自锁开关原理图 图3-4 自锁开关硬件图3.1.4上拉电阻介绍 其实排阻就是由8个电阻组成的,其中一端全部接在一起,103为8个10K电阻,102为8个1K电阻,他们在电路中起到“上拉”的作用,又称上拉电阻。上拉就是将不确定的信号通
18、过一个电阻嵌位在高电平,电阻同时起限流作用,下拉同理.上拉是对器件注入电流,下拉是输出电流,弱强只是上拉电阻的阻值不同,没有什么严格区分,对于非集电极(或漏极)开路输出型电路(如普通门电路)提升电流和电压的能力是有限的,上拉电阻的功能主要是为集电极开路输出型电路输出电流通道。上拉,就是把电位拉高,比如拉到VCC下拉,就是把电压拉低,拉到GND一般就是刚上电的时候,端口电压不稳定,为了让他稳定为高或低,就会用到上拉或下拉电阻。 有些芯片内部集成了上拉电阻(如单片机的P1、2、3口),所以外部就不用上拉电阻了。但是有一些开漏的(如单片机的P0口),外部必须加上拉电阻。图3-5 排组上拉电阻原理图3
19、.1.5三极管介绍 常见的三极管为9012、s8550、9013、s8050.单片机应用电路中三极管主要的作用就是开关作用。其中9012与8550为pnp型三极管,可以通用。其中9013与8050为npn型三极管,可以通用。区别引脚:三极管向着自己,引脚从左到右分别为ebc,原理图中有箭头的一端为e,与电阻相连的为b,另一个为c。箭头向里指为PNP(9012或8550),箭头向外指为NPN(9013或8050)。 三极管的工作原理 三极管是电流放大器件,有三个极,分别叫做集电极C,基极B,发射极E。分成NPN和PNP两种。我们仅以NPN三极管的共发射极放大电路为例来说明一下三极管放大电路的基本
20、原理。 (1)电流放大 下面的分析仅对于NPN型硅三极管。如上图所示,我们把从基极B流至发射极E的电流叫做基极电流Ib;把从集电极C流至发射极E的电流叫做集电极电流 Ic。这两个电流的方向都是流出发射极的,所以发射极E上就用了一个箭头来表示电流的方向。三极管的放大作用就是:集电极电流受基极电流的控制(假设电源 能够提供给集电极足够大的电流的话),并且基极电流很小的变化,会引起集电极电流很大的变化,且变化满足一定的比例关系:集电极电流的变化量是基极电流变 化量的倍,即电流变化被放大了倍,所以我们把叫做三极管的放大倍数(一般远大于1,例如几十,几百)。如果我们将一个变化的小信号加到基极跟发射 极之
21、间,这就会引起基极电流Ib的变化,Ib的变化被放大后,导致了Ic很大的变化。如果集电极电流Ic是流过一个电阻R的,那么根据电压计算公式 U=R*I 可以算得,这电阻上电压就会发生很大的变化。我们将这个电阻上的电压取出来,就得到了放大后的电压信号了。(2)偏置电路 三极管在实际的放大电路中使用时,还需要加合适的偏置电路。这有几个原因。首先是由于三极管BE结的非线性(相当于一个二极管),基极电流必须在输入电压 大到一定程度后才能产生(对于硅管,常取0.7V)。当基极与发射极之间的电压小于0.7V时,基极电流就可以认为是0。但实际中要放大的信号往往远比 0.7V要小,如果不加偏置的话,这么小的信号就
22、不足以引起基极电流的改变(因为小于0.7V时,基极电流都是0)。如果我们事先在三极管的基极上加上一 个合适的电流(叫做偏置电流,上图中那个电阻Rb就是用来提供这个电流的,所以它被叫做基极偏置电阻),那么当一个小信号跟这个偏置电流叠加在一起时,小 信号就会导致基极电流的变化,而基极电流的变化,就会被放大并在集电极上输出。另一个原因就是输出信号范围的要求,如果没有加偏置,那么只有对那些增加的 信号放大,而对减小的信号无效(因为没有偏置时集电极电流为0,不能再减小了)。而加上偏置,事先让集电极有一定的电流,当输入的基极电流变小时,集电极 电流就可以减小;当输入的基极电流增大时,集电极电流就增大。这样
23、减小的信号和增大的信号都可以被放大了。(3)开关作用 下面说说三极管的饱和情况。像上面那样的图,因为受到电阻 Rc的限制(Rc是固定值,那么最大电流为U/Rc,其中U为电源电压),集电极电流是不能无限增加下去的。当基极电流的增大,不能使集电极电流继续增大 时,三极管就进入了饱和状态。一般判断三极管是否饱和的准则是:Ib*Ic。进入饱和状态之后,三极管的集电极跟发射极之间的电压将很小,可以理解为 一个开关闭合了。这样我们就可以拿三极管来当作开关使用:当基极电流为0时,三极管集电极电流为0(这叫做三极管截止),相当于开关断开;当基极电流很 大,以至于三极管饱和时,相当于开关闭合。如果三极管主要工作
24、在截止和饱和状态,那么这样的三极管我们一般把它叫做开关管。(4)工作状态 如果我们在上面这个图中,将电阻Rc换成一个灯泡,那么当基极电流为0时,集电极电流为0,灯泡灭。如果基极电流比较大时(大于流过灯泡的电流除以三极管 的放大倍数 ),三极管就饱和,相当于开关闭合,灯泡就亮了。由于控制电流只需要比灯泡电流的分之一大一点就行了,所以就可以用一个小电流来控制一个大电流的通 断。如果基极电流从0慢慢增加,那么灯泡的亮度也会随着增加(在三极管未饱和之前)。 图3-6 三极管引脚介绍 图3-7 PNP型原理图 图3-8 NPN型原理图3.1.6继电器介绍 电磁继电器一般由铁芯、线圈、衔铁、触点簧片等组成
25、的。只要在线圈两端加上一定的电压,线圈中就会流过一定的电流,从而产生电磁效应,衔铁就会在电磁力吸引的作用下克服返回弹簧的拉力吸向铁芯,从而带动衔铁的动触点与静触点(常开触点)吸合。当线圈断电后,电磁的吸力也随之消失,衔铁就会在弹簧的反作用力返回原来的位置,使动触点与原来的静触点(常闭触点)释放。这样吸合、释放,从而达到了在电路中的导通、切断的目的。对于继电器的“常开、常闭”触点,可以这样来区分:继电器线圈未通电时处于断开状态的静触点,称为“常开触点”;处于接通状态的静触点称为“常闭触点”。继电器一般有两股电路,为低压控制电路和高压工作电路。继电器的线圈和接线端子是分立的,互补影响的继电器的触点
26、只相当于开关 图3-9 继电器硬件图 图3-10 继电器原理图3.1.7供电方式 图3-11 DC插头 图3-12 USB电源线3.1.8轻触按键 图3-13 实物图 图3-14 按键原理图 图3-15 按键解析图相赠 图3-16 按键解析图3.2功能单元模块设计 3.2.1 开锁机构 通过单片机送给开锁执行机构,电路驱动电磁锁吸合,从而达到开锁的目的。如下图所示,为密码锁开锁电路原理图。当用户输入的密码正确时,单片机便输出开门信号,送到开锁驱动电路,然后驱动电磁锁,达到开门的目的。本次设计中,基于节省成本考虑,用发光二极管代替电磁锁,信息通过LCD显示,并利用蜂鸣器和二极管声光指示。其中,绿
27、发光二极管亮,表示开锁;否则,表示密码输入错误并开启报警电路。 密 码 密码正确 N 返回 输 入 电 Y磁 锁开锁驱动电路 图3-17 密码锁开锁电路原理图3.2.2 矩阵键盘设计电路 每一条水平(行线)与垂直线(列线)的交叉处不相通,而是通过一个按键来连通,利用这种行列式矩阵结构只需要M条行线和N条列线,即可组成具有MN个按键的键盘。由于本设计中要求使用16个按键输入,为减少键盘与单片机接口时所占用的I/O线的数目,故使用矩阵键盘。本设计中,矩阵键盘行线和单片机P1.0-P1.3相连,列线与单片机P1.4-P1.7相连。矩阵键盘设计电路图,如图4所示。键盘扫描采用行扫描法,即依次置行线中的每一行为低电平,其余均为高电平,扫描列线电平状态,为低电平即表示该键按下。 图3-18 矩阵键盘设计电路3.2.3 声音提示电路设计声音提示电路采用小蜂鸣器提示。蜂鸣器能够根据脉冲信号,以及信号的频率发出各种不同的声音,这样可以根据系统要求在密码出入正确和密码输入错误时发出不同的声音提示,已达到报警的要求。蜂鸣器电路,如下图所示。 图3-19 蜂鸣器电路3.2.4 AT24C02掉电存储单元的设计本设计中掉电存储单元采用AT24C02外部存储器8-9,其作用是在系统电源断开的时候,存储当前设定的密码数据。