《基于单片机的电子密码锁控制电路设计(共6页).doc》由会员分享,可在线阅读,更多相关《基于单片机的电子密码锁控制电路设计(共6页).doc(6页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精选优质文档-倾情为你奉上毕 业 设 计 论 文题目:电子密码锁控制电路的设计姓名:专业:指导老师:完成日期:1 引言随着人们对安全的重视和科技的发展。对日常生活中的安全保险器件的要求越来越高。为满足人们对锁的使用要求,增加其安全性,用密码代替钥匙的密码锁应运而生。具有报警功能的电子密码锁保密性高,使用灵活性好,安全系数高,密码锁设计方法合理.简单易行,成本低,符合住宅、办公室用锁要求,具有推广价值。电子密码锁采取电子电路控制,通过密码输人来控制电路或是芯片工作.从而控制机械开关的闭合,完成开锁、闭锁任务。这种应用以单片机或FPGA芯片为核心,通过编程来实现整体基本功能和安全性要求。2电子密码
2、锁系统设计2.1电子密码锁功能简述用户通过键盘输入密码.确认后系统调用密码比较判断函数,如果密码在规定的时间内愉人正确,单片机输出开门信号开锁。如果在规定的时间内没完成密码的输人,系统自动清除所输人的密码,并提示重新输人。用户发现愉入错误时,可以清除重愉。密码输人后,通过验证和多位校验后,如果密码错误则启动报警系统。当密码错误次数达到3次时,系统将锁定键盘一段时间,时间到后系统自动启动键盘愉人。初始密码由系统设定,用户可根据自己的要求设定密码,修改密码时需要首先匹配旧密码,如果输人旧密码错误则系统报警并自动退出密码修改状态。旧密码正确则可以输人新密码,新密码的输人需要两次对比确认。系统设定密码
3、为6位,当输入新密码不为6位或两次输人的新密码不一致时密码修改失败,系统报警并自动退出密码修改状态。如果输人的新密码为6位且两次输人的新密码一致则修改密码成功。2.2系统硬件设计 系统以A了习9砧l单片机为核心来控制密码锁的密码输人,密码显示,密码比较判断,开锁,报警指示数及密码的存储等功能。利用单片机灵活的编程设计和丰富的10端口,及其控制的准确性,不仅能实现基本的密码锁功能,还能添加调电存储、声光提示甚至添加遥控控制功能。其原理如图1所示。 系统的设计包括硬件和软件两大部分。其中硬件部分主要由以下几个模块组成: 单片机系统:该部分主要是使单片机能稳定工作.来控制整个系统实现密码锁的功能。开
4、锁电路:系统中采用单片机愉出开锁信号驱动电磁锁驱动电路直接开电磁锁的方式,同时开锁也可以通过红外遥控的方式来控制。按键电路:采用行列式矩阵键盘作为密码输人按键,可以节约单片机的输入/输出端口减少硬件的复杂程度。. 显示电路:由于液晶显示器价格昂贵,而目,显示部分不是本系统的重要部分,因此采用LE)数码管作为显示器件。存储电路:选用L“C总线器件作为存储器件,占用的单片机端口少,而且存储信息有效期长,硬件电路简单,成本也较低。 报警指示电路:选用LED灯作为报警指示电路,其硬件电路简单.,成本低能比较直观地起到报警指示作用。报警指示可以采用蜂鸣器、语音芯片等。2 .2.1单片机及显示系统 如图2
5、所示,单片机为整个系统的核心,要保证系统的稳定和出错后的恢复,一定要考虑设置复位电路和合理的振荡电路。J由于外部时钟信号是通过一个2分频触发器后作为内部时钟信号的,所以退外部时钟信号的占空比没有特殊的要求,最小高电平持续时间和最大的低电平持续时间应符合产品技术条件的要求。在振荡电路中采用IZM石英晶体和20PF电容做振荡电路。单片机作为主控芯片,其主要作用是控制各个外围电路的协调工作,其主要功能是通过软件实现的,该部分内容在软件设计中详细讲解。显示电路采用最常用的LED数码管有足够的亮度,耗电与发热均很少,并可在单一十sv电源下工作。软件译码是将各数码管的笔划信息构成一个表格顶存于内存.以后根
6、据要显示的每一数码执行一段查表程序,查得相应笔划信息再送数码管显示。硬件译码采用CL礴511、74LS46、74L547x等BCD码7段锁存、译码、驱动芯片直接译出笔划信息。结合实际显示需求,系统采用两个4位LED共阴数码管组成的8位Ly数码管(其中前两位在系统上电工作时显示“尸一”提示用户输入密码,后6位用来对应显示用户输人的6位密码)来动态显示用户输入的密码信息。译码采用软件译码方式。2.2.2电于锁电路 电子锁电路巾最重要的部分就是开锁机构电路,通过单片机送给开锁执行机构电路,电路驱动电磁锁吸合,从而达到开锁的目的。其原理如图3所示。当用户输人的密码正确而且是在规定的时问IUS)输入的话
7、.单片机便输出开门信号,送到开锁驱动电路,然后驱动电磁锁,达到开门的目的。其实际电路如图4所示。 开锁机构由驱动电路和执行开锁电路两级组成。由D1、R1、T1,组成驱动电路,其中Tl可以选择普通的小功率三极管如9014,9018都可以满足要求,D1作为开锁的提示。由D2,C,T2组成执行开锁电路,其中砚D2,C是为了消除电磁锁可能产生的反向高电压以及可能产生的电磁干扰从而起到保护电路的作用。T11可选用中功率的三极管如8050,电磁锁的选用要视情况而定,但是吸合力要足够且由一定的余量。当单片机输人开门信号时驱动电路T1导通从而D1发光提示开锁,同时驱动飞T2,T2导通执行开锁。2.2.3.存储
8、电路设计 存储电路主要作用是存储密码,提供校验码以在密码,lJ定的时候作为密码安全性的一道屏障。存储电路如图5所示,采用ATMEL公司推出的容量为512KB的串行电可擦除、可编程存储芯片AT24C512设计,传输方式为I2C总线。这样设计的优点在其简单性和处理的高效性上。一般A0、Al、wP接vCC或GND,SCL、SDA接上拉电阻(上拉电阻的阻值可参考有关数据手册选择,通常可选 5K到10K的电阻,设计中选用的电阻阻值为10K)后再接单片机的普通I/O口,即可实现单片机对AT24C512的操作。在对AT24C512开始操作需要先发一个8位的地址字来选择芯片以进行读写。其中要注意“10100”
9、为AT24C512固定的前5位二进制;A0,A1用于对多个AT24C512加以区分;R/W为读写操位,为1时表示读操作,为O时表示写操作。AT24CS 12内部有512页,每一页为128字,任一单元的地址为16位,地址范围为0000OFFFFH。23系统软件设计 系统软件流程图如图6所示,在整个软件设计流程中,键盘扫描及识别,密码校验和定时器程序比较重要。键盘扫描电、路中,扫描键盘时采用逐列扫描的方式,依次对1、2、3、4列按键循环扫描(P3低四位连接键盘的行线,高四位连接键盘的列线)、扫描时先对单片机P3口赋Oxff,同时对与要扫描那列按键相连的单片机端口赋低电平,再将P3口的值与Ox0f相
10、与使低四位有效,如果按键被按下则与被按下那个按键相连接的单片机端口的电平将被拉到低电平,通过判断P3口的值就可以判断出是哪个按键被按下。需要注意的是,在键盘扫描软件设计中,一定要有毛刺消除的功能,否则按键按下的响应会受到较大的影响。键盘识别是通过比较键盘扫描时对不同按键赋不同的值来执行相应的操作的。 密码校验的设立主要是从安全性的角度考虑的,密码存储后,只要在密码判定过程中找到存储密码的相应地址并读出改地址对应的内容,再加以比较就可以开锁了。如果仅仅是这样的操作,片内的密码很容易被破解,如果加上密码校验位,会在很大程度上提高安全性。在设立密码后,通过多位同或运算或其它更复杂的运算,将整个密码转
11、换为通过运算后的另外一种形式,同时将该数据存储到指定的地址位中,每次设定密码,在存储密码的同时也生成并存储校验位,在读取时不仅要判定密码位是否正确,同时进行密码校验,这样就相当于加人了两级密码保护,提高了安全性,同时,即使普通密码被盗取,但校验运算方式不公开,也是不能直接打开电子密码锁的。其处理关系程序中简单体现如下:If(KeyCount!=pwlen) /密码位数不为6位 ErrorFlag=1; RightfFag=0;/ elsefor(i=0;i6;i+)if(getpwi!=pwi) /逐位比较用户输人密码和系统密码ErrorFlag=1; RightfFag=0;break;/如
12、果某位不一致则结束循环不再做后续比较 定时器是保证限时输人密码和键盘锁定。定时器0中断的作用是给系统锁定键盘定时,当用户三次错误输人密码后启动定时器0,通过定时器O中断函数判断是否到定时时间,到了就停止定时器0并解除键盘锁定。定时器l中断的作用是限时输入密码,当用户第一位输人密码后启动定时器,通过定时器l中断函数判断是否到定时时间,到了就停止定时器1并清除输人的密码。其中定时器0中断主要处理程序如下:M+;If(m=) /判断定时时间(,l0 000个定时器0的定时时间)是否到TR0=0; /系统锁定时间到停止定时器Om=0;KeyerroeTimes=0; /密码错误次数标志置0TimesoverFlag=0; /时间溢出标志置03 结束语 系统主要通过软件程序来控制硬件电路实现一些基本的电子密码锁的功能,具有软硬件设计简单,易于开发,成本较低,安全可靠,操作方便等特点,可应用于住宅、办公室的保险箱及档案柜等需要防盗的场所,有比较强的实用性。但是,从安全性角度考虑,本型电子安全密码锁系统在后续执行器的接口点上,存在着单点失效” 的安全性隐患,也就是有可能从旁路电子安全密码锁。对此,在实际应用时,应根据具体情况.采取相应的措施。另外在密码管理权限方便可以没置两级权限,普通用户和管理员身份,分别给它们设置不同的权限使其安全性更高。专心-专注-专业