液晶显示密码锁论文.doc_第1页
液晶显示密码锁论文.doc_第2页
液晶显示密码锁论文.doc_第3页
液晶显示密码锁论文.doc_第4页
液晶显示密码锁论文.doc_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

武 威 职 业 学 院 应用电子技术 专业(专科)毕业设计(论文)题 目 多功能电子密码锁 姓 名 朱三兄 学 号 1402090114 指 导 老 师 郭睿涵 完 成 日 期 2016 .6.24 教 学 系 电子信息工程系 摘 要随着人们生活水平的提高,如何实现家庭防盗这一问题也变得尤为突出,传统的机械锁,由于其构造的简单,安全性能低,无法满足人们的需要。在科学技术不断发展的今天,电子密码防盗锁作为防盗卫士的作用显得日趋重要。本次设计的题目是基于单片机的电子密码锁的设计,系统由AT89S52与低功耗CMOS型EPROM AT24C02作为主控芯片与数据存储器单元,结合外围的键盘输入、LCD显示、报警、开锁等电路模块。它能完成以下功能:正确输入密码前提下,开锁;错误输入密码情况下,报警;密码可以根据用户需要更改。本密码锁具有设计方法合理,简单易行,成本低,安全实用等特点,具有一定的推广价值。关键词 :电子密码锁 报警 液晶显示AT89S52目 录前 言II第1章 绪 论11.1 课题背景11.2 课题设计目标1第2章 系统方案论证22.1 主控部分22.2 密码输入方式的选择2第3章 系统总体设计43.1 系统总体设计43.2 系统硬件设计53.2.1 AT89S5253.2.2 存储芯片AT24C0263.2.3 LCD1602显示器8第4章 硬件设计104.1 键盘输入模块114.2 密码存储模块114.3 复位电路124.4 晶振电路134.5 显示模块134.6 报警电路144.7 开锁控制电路14第5章 系统软件设计155.1 系统程序流程图155.1.1 主程序流程图155.1.2 键功能程序流程图165.1.3 开锁程序流程图17开锁子程序18致 谢20参考文献21II前 言随着科学技术的不断发展,人们对日常生活的安全保险器件的要就越来越高,电子安全密码锁是基于这一要求的保险器件,其设计概念及应用与常见的保安密码锁有所不同。从系统设计观点看,电子安全密码锁是一个实体域定义的概念,比较机械安全密码锁,具有设计/实现简便,密码装定灵活制造成本低廉等优点,每一位解锁意图码在安全密码锁内部引发的试图解锁动作,可称为安全密码的“解锁事件”一个解锁事件序列包含一系列有序的解锁事件。电子安全密码锁完全匹配时方可逐步开启密码锁。当今智能电子密码锁发展已经到了非常高的境界,由于电子元件特别是单片机应用在这几年得到空前发展,无论功能性,稳定性都比较全面,在保密方面已做到人眼识别,指纹识别,人声识别基本上电影上有的现实也有。在国外发展比较早,所以应用也比较广泛,主要在家庭装较贵重地方,银行,保险柜等应用较多,在国内这方面发展也较快,不管自己开发或是引进都有,在重要地方应用也较多,由于价钱比普通电子锁贵,早几年应用较少,现在越来越普及到平常化,未来的发展也会越来越被大众采用,由于它的功能、安全是电子锁无法相比的,发展前境是非常大的。第1章 绪 论1.1 课题背景随着人们生活水平的提高和安全意识的加强,对安全的要求也就越来越高。锁自古以来就是把守护门的铁将军,人们对它要求甚高,既要安全可靠的防盗,又要使用方便,这也是制锁者长期以来研制的主题2。随着电子技术的发展,各类电子产品应运而生,电子密码锁就是其中之一。据有关资料介绍,电子密码锁的研究从20世纪30年代就开始了,在一些特殊场所早就有所应用。这种锁是通过键盘输入一组密码完成开锁过程。研究这种锁的初衷,就是为提高锁的安全性。由于电子锁的密钥量(密码量)极大,可以与机械锁配合使用,并且可以避免因钥匙被仿制而留下安全隐患。电子锁只需记住一组密码,无需携带金属钥匙,免除了人们携带金属钥匙的烦恼,而被越来越多的人所欣赏。电子锁的种类繁多,例如数码锁,指纹锁,磁卡锁,IC卡锁,生物锁等。但较实用的还是按键式电子密码锁。 1.2 课题设计目标本设计采用AT89S52单片机为主控芯片,结合外围电路,通过软件程序组成电子密码锁系统,能够实现:1 正确输入密码前提下,开锁并有正确提示;2 错误输入密码情况下,蜂鸣器报警并短暂锁定键盘;3 密码可以根据用户需要更改。4 为防止误操作,更改密码需有两次确认。5 输出密码错误三次锁死键盘。6 密码掉电保存功能。第2章 系统方案论证2.1 主控部分方案一:采用数字电路控制用以74LS112双JK触发器构成的数字逻辑电路作为密码锁的核心控制,将密码保存在JK触发器中,与输入密码通过比较器比较,判断结果是否相符合4。采用数字电路设计的方案好处就是设计简单,但控制的准确性和灵活性差,故不采用。 方案二:采用以单片机为核心的控制方案选用单片机作为系统的核心部件,实现控制与处理的功能。单片机具有资源丰富、速度快、编程容易等优点。利用单片机内部的随机存储器(RAM)和只读存储器(ROM)及其引脚资源,外接液晶显示(LCD),键盘输入等实现数据的处理传输和显示功能,基本上能实现设计指标,因此综合考虑,本系统采用方案二。2.2 密码输入方式的选择方案一:指纹输入识别 指纹识别技术主要涉及四个功能:读取指纹图像、提取特征、保存数据和比对。通过指纹读取设备读取到人体指纹的图像,然后要对原始图像进行初步的处理,使之更清晰,再通过指纹辨识软件建立指纹的特征数据。软件从指纹上找到被称为“节点”(minutiae)的数据点,即指纹纹路的分叉、终止或打圈处的坐标位置,这些点同时具有七种以上的唯一性特征。通常手指上平均具有70个节点,所以这种方法会产生大约490个数据。这些数据,通常称为模板。通过计算机模糊比较的方法,把两个指纹的模板进行比较,计算出它们的相似程度,最终得到两个指纹的匹配结果,从而判断输入结果的正确与否。考虑到本方案软硬件太过复杂,而且成本也高,故不采用。方案二:矩阵键盘输入识别 由各按键组成的矩阵键盘每条行线和列线都对应一条I/O口线,键位设在行线和列线的交叉点,当一个键按下就会有某一条行线与某一条列线接触,只要确定接触的是哪两条线,即哪两个I/O口线,就可以确定哪一个键被触动。 行线设计成上拉口线,初始时被置高电位,列线悬空,初始置低。通过不断读行线口线,或者中断方式触发键位扫描。当发现有键按下,将列线逐一置低,其他列线置高,读行线口线。当某条列线置低时,某条行线也被拉低,则确定这两条线的交点处的按钮被按下。每个按键都可通过程序赋予功能,从而完成密码识别。本方案简单易行,故采用。第3章 系统总体设计3.1 系统总体设计本设计主要由单片机、矩阵键盘、液晶显示器和密码存储等部分组成。其中矩阵键盘用于输入数字密码和进行各种功能的实现。由用户通过连接单片机的矩阵键盘输入密码,后经过单片机对用户输入的密码与自己保存的密码进行对比,从而判断密码是否正确,然后控制引脚的高低电平传到开锁电路或者报警电路控制开锁还是报警,实际使用时只要将单片机的负载由继电器换成电子密码锁的电磁铁吸合线圈即可。系统整体框图如图3-1所示。显示模块键盘输入模块 AT89S52报警电路复位电路开锁电路密码存储模块 图3-1 系统结构框图各模块功能如下:1键盘输入模块:分为密码输入按键与几个功能按键,用于完成密码锁输入功能。2显示模块:用于完成对系统状态显示及操作提示功能。3复位电路:完成系统的复位。4报警电路:用于完成输错密码时候的警报功能。5密码存储模块:用于完成掉电存储功能,使修改的密码断电后仍能保存。6开锁电路:应用继电器及发光二极管模拟开锁,完成开锁及开锁提示。3.2 系统硬件设计3.2.1 AT89S52AT89S52单片机是一个低功耗,高性能CMOS 8位单片机,片内含8K Bytes ISP(In-system programmable)的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位中央处理器和ISP Flash存储单元,功能强大的微型计算机的AT89S52可为许多嵌入式控制应用系统提供高性价比的解决方案7。AT89S52具有以下标准功能: 8k字节Flash,256字节RAM,32 位I/O 口线,看门狗定时器,2个数据指针,三个16位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。另外,AT89S52可降至0Hz静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。AT89S52的管脚分布如图3-2所示。图3-2 AT89S52芯片管脚P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P3口作为AT89S52的一些特殊功能管脚备选功能,P3.0 RXD(串行输入口)P3.1 TXD(串行输出口)P3.2 /INT0(外部中断0)P3.3 /INT1(外部中断1)P3.4 T0(记时器0外部输入)P3.5 T1(记时器1外部输入)P3.6 /WR(外部数据存储器写选通)P3.7 /RD(外部数据存储器读选通)AT89S52主要特性如表3-1所示。表3-1 AT89S52主要特性兼容MCS-51指令系统8k可反复擦写(1000次)ISP Flash ROM32个双向I/O口4.5-5.5V工作电压3个16位可编程定时/计数器时钟频率0-33MHz全双工UART串行中断口线256x8bit内部RAM2个外部中断源低功耗空闲和省电模式中断唤醒省电模式3级加密位看门狗(WDT)电路软件设置空闲和省电功能灵活的ISP字节和分页编程双数据寄存器指针3.2.2 存储芯片AT24C02 AT24C02是美国Atmel公司的低功耗CMOS型EPROM,内含2568位存储空间,具有工作电压宽(2.55.5 V)、擦写次数多(大于10000次)、写入速度快(小于10 ms)、抗干扰能力强、数据不易丢失、体积小等特点。而且他是采用了IC总线式进行数据读写的串行器件,占用很少的资源和I/O线,并且支持在线编程,进行数据实时的存取十分方便。AT24C02中带有的片内地址寄存器。每写入或读出一个数据字节后,该地址寄存器自动加1,以实现对下一个存储单元的读写。所有字节均以单一操作方式读取。为降低总的写入时间,一次操作可写入多达8个字节的数据。I2C总线是一种用于IC器件之间连接的二线制总线。他通过SDA(串行数据线)及SCL(串行时钟线)两根线在连到总线上的器件之间传送信息,并根据地址识别每个器件。 AT24C02正是运用了IC规程,使用主/从机双向通信,主机(通常为单片机)和从机(AT24C02)均可工作于接收器和发送器状态。主机产生串行时钟信号(通过SCL引脚)并发出控制字,控制总线的传送方向,并产生开始和停止的条件。无论是主机还是从机,接收到一个字节后必须发出一个确认信号ACK。AT24C02的控制字由8位二进制数构成,在开始信号发出以后,主机便会发出控制字,以选择从机并控制总线传送的方向。管脚描述:SCL 为串行时钟:串行时钟输入管脚用于产生器件所有数据发送或接收的时钟这是一个输入管脚。SDL 为串行数据/地址:双向串行数据/地址管脚用于器件所有数据的发送或接收SDL,是一个开漏输出管脚可与其它开漏输出或集电极开路输出进行线或。A0、A1、A2 为器件地址输入端:当使用24C02 时最大可级联8个器件,如果只有一个24C02被总线寻址,这三个地址输入脚A0、A1、A2可悬空或连接到Vss。WP为写保护:如果WP 管脚连接到Vcc 所有的内容都被写保护只能读当WP,管脚连接到Vss 或悬空,允许器件进行正常的读/写操作8。管脚图如图3-3所示。图3-3 AT24C02引脚图3.2.3 LCD1602显示器 现在的字符型液晶模块已经是单片机应用设计中最常用的信息显示器件了。1602型LCD显示模块具有体积小,功耗低,显示内容丰富等特点。1602型LCD可以显示2行16个字符,有8位数据总线D0D7和RS,R/W,EN三个控制端口,工作电压为5V,并且具有字符对比度调节和背光功能。1602型LCD的接口信号说明如表3-2所示。表3-2 1602型LCD的接口信号说明第1脚VSS 电源地第9脚D2双向数据线第2脚VDD +5V电源第10脚D3双向数据线第3脚VEE 液晶显示偏压信号第11脚D4双向数据线第4脚RS 数据/命令选择端第12脚D5双向数据线第5脚R/ W 读/写 选择端第13脚D6双向数据线第6脚E 使能端第14脚D7双向数据线第7脚D0双向数据线第15脚BLA 背光源正极第8脚D1 双向数据线第16脚BLK 背光源负极主要技术参数:1602型LCD的主要技术参数如表3-3所示。表3-3 1602型LCD的主要技术参数显示容量162个字符芯片工作电压4.55.5V工作电流2.0mA(5.0V)模块最佳工作电压5.0V字符尺寸2.954.35(WXH)mm基本操作程序:读状态:令RS=L,RW=L, E=H 输出:D0D7=状态字读数据:令RS=H,RW=H, E=H 输出:无写指令:令RS=L,RW=L,D0D7=指令码,E=高脉冲 输出:D0D7=数据写数据:令RS=H,RW=L, D0D7=数据, E=高脉冲 输出:无 第4章 硬件设计本系统外围电路包括键盘输入部分、密码存储部分、复位部分、显示部分、报警部分、开锁部分组成,根据实际情况键盘输入部分选择44矩阵键盘,显示部分选择字符型液晶显示LCD1602,密码存储部分选用AT24C02芯片来完成。其原理图如图4-1所示。图4-1 电路原理图4.1 键盘输入模块由于本设计所用到的按键数量较多而不适合用独立按键式键盘。采用的是矩阵式按键键盘,它由行和列组成,也称行列式键盘,按键位于行列的交叉点上,密码锁的密码由键盘输入完成,与独立式按键键盘相比,要节省很多I/O口。本设计中使用的这个44键盘不但能完成密码的输入还能作特别功能键使用。键盘的每个按键功能在程序设计中设置。它与单片机的连接如图4-2所示。图4-2 键盘输入模块4.2 密码存储模块图4-3所示AT24C02的1、2、3脚是三条地址线,用于确定芯片的硬件地址。在AT89S52试验开发板上它们都接地,第5脚和第8脚分别为正、负电源。第8脚SDL为串行数据输入/输出,数据通过这条双向IC总线串行传送,在AT89S52试验开发板上和单片机的P3.6连接。第6脚SCL为串行时钟输入线,在AT89S52试验开发板上和单片机的P3.7连接。SDL和SCL都需要和正电源间各接一个5.1K的电阻上拉。第6脚接P3.5。AT24C02中带有片内地址寄存器。每写入或读出一个数据字节后,该地址寄存器自动加1,以实现对下一个存储单元的读写。所有字节均以单一操作方式读取。为降低总的写入时间,一次操作可写入多达8个字节的数据。图4-3 密码存储电路4.3 复位电路单片机复位是使CPU和系统中的其他功能部件都处在一个确定的初始状态,并从这个状态开始工作。在接通电源瞬间,电容C2上的电压很小,复位下拉电阻上的电压接近电源电压,即RST为高电平,在电容充电的过程中RST端电压逐渐下降,当RST端的电压小于某一数值后,CPU脱离复位状态,由于电容C2足够大,可以保证RST高电平有效时间大于24个振荡周期,CPU能够可靠复位。其电路如图4-4所示。图4-4 复位电路4.4 晶振电路AT89S52引脚XTAL1和XTAL2与晶体振荡器及电容C2、C3按图4-5所示方式连接。晶振、电容C2C3及片内与非门(作为反馈、放大元件)构成了电容三点式振荡器,振荡信号频率与晶振频率及电容C2、C3的容量有关,但主要由晶振频率决定,范围在033MHz之间,电容C2、C3取值范围在530pF之间。根据实际情况,本设计中采用12MHZ作为系统的外部晶振。电容取值为30pF。其电路图如图4-5所示。图4-5 晶振电路4.5 显示模块显示部分由液晶显示器LCD1602取代普通的数码管完成。开锁时,按下键盘上的开锁按键后,利用键盘上的数字键09输入密码,每按下一个数字键后在显示器上显示一个*,输入多少位就显示多少个*。当密码输入完成时,按下确认键,如果输入的密码正确的话, LCD显示“DOOR OPEN”,单片机其中P2.0引脚会输出低电平,使三极管T2导通,电磁铁吸合,继电器开关跳转,电子密码锁被打开,如果密码不正确,LCD显示屏会显示“CODE WRONG”,P2.0输出的是高电平,电子密码锁不能打开。通过LCD显示屏,可以清楚地判断出密码锁所处的状态。电路图如图4-6所示。图4-6 显示电路4.6 报警电路 报警部分由陶瓷压电发声装置及外围电路组成,加电后不发声,当有键按下时,“叮”声,每按一下,发声一次,密码正确时,响两声并开锁,当密码输入错误时,单片机的P2.1引脚为低电平,三极管T3导通蜂鸣器发出噪声报警。如图4-7所示。图4-7 报警电路4.7 开锁控制电路开锁控制电路的功能是当输入正确的密码后将锁打开。系统使用单片机其中一引脚线发出信号,经三极管放大后,由继电器驱动电磁阀动作将锁打开。用户通过键盘任意设置密码,并储存在E2PROM中作为锁码指令。只有用户操作键盘时,单片机的电源端才能得到3V电源,否则,单片机处于节电工作方式。开锁步骤如下:首先按下键盘上的开锁按键,然后利用键盘上的数字键09输入密码,最后按下确认键。当用户输入密码后,单片机自动识别密码,如果密码不符,则报警。只有当密码正确,单片机才能使继电器处于开锁状态。具体电路如图4-8所示。图4-8 开锁电路第5章 系统软件设计5.1 系统程序流程图5.1.1 主程序流程图主程序设计流程图如图5-1所示。 开始初始化 修改开锁密码正确 输入旧密码N原密码相同 Y开锁出错报警 N N Y设新密码 返回 图5-1主程序流程图5.1.2 键功能程序流程图键功能程序流程图如图5-2所示。 键功能程序键值=09?键值=开锁?键值=确认?键值=设置? 返回密码输入程序确认程序设置程序开锁程序YNYNYN YN 图5-2 键功能流程图5.1.3 开锁程序流程图开锁程序流程图如图5-3所示。LCD初始化按开锁键输入密码确认程序开锁N输入密码正确?报警程序开锁成功返回Y 图5-3 开锁流程图开锁子程序 if(N=6) if(ReInputEn=0)/重置密码功能未开启for(i=0;i6;) if(CurrentPasswordi=InputDatai)i+;else ErrorCont+;if(ErrorCont=3)/错误输入计数达三次时,报警并锁定键盘write_1602com(er);for(i=0;i16;i+)write_1602dat(Errori);doAlam_KeyUnable();while(1);elseTR0=1;/开启定时key_disable=1;/锁定键盘pass=0;break;if(i=6)CorrectCont+;if(CorrectCont=1)/正确输入计数,当只有一次正确输入时,开锁,/DisplayListChar(0,1,LockOpen);write_1602com(er);for(j=0;j16;j+)write_1602dat(LockOpenj);TwoAlam();/操作成功提示音KEY=0;/开锁pass=1;/置正确标志位TR0=1;

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论