我国电子锁总体水平还停留在国际上七十年代左右,电子密码锁成本还很高,市场还是以钥匙式电子锁为主,钥匙式、卡钥匙式电子锁引进国际先进水平,国内有几家工厂生产供应市场。但我国自主研发的电子锁市场格局尚未形成,应用还不广泛,国内很多企业也引进了国际先进技术,发展前景十分可观。希望通过不断的努力,电子密码锁在我国也能得到广泛的应用。目前使用的电子密码锁大多是基于单片机技术,以单片机为主要部件,编码器和解码器的生成都是软件。相对于传统的机械钥匙开锁不方便携带、安全性能差等特点,电子密码锁具有操作简便、功耗低等优点,越来越成为市场上的主流产品。 在日常生活和现代办公中,住宅和办公室的安全,单位的文件档案、财务报表以及一些个人信息的保存,大多是通过上锁来解决的。如果采用机械钥匙开锁,人们往往需要携带多把钥匙,使用极为不便,而且钥匙丢失后安全性大大降低。为了满足人们对门锁的要求,增加人们的安全性,用电子密码锁取代传统的机械锁将成为一种趋势。本课题研究基于单片机的电子密码锁的设计方法,希望本课题的研究能够促进电子密码锁的完善和发展。3、课题意义 (1)促进对单片机原理及应用知识的深化。
(2)促进数字、模拟电子技术知识的深化。 (3)熟悉单片机编程语言。 (4)熟悉在PROTEUS环境下设计单片机设计系统的方法,掌握KEILPROTEUS联调技术。 (5)促进电子密码锁知识的普及与发展。 参考文献 谭浩强. C语言程序设计[M].北京:清华大学出版社,2005 蒋志海,黄玉清,刘连新. 单片机原理及应用。北京:电子工业出版社,2009 张淼,孙斌. 居住小区安全防范问题与对策。摘自《安防技术安全管理师》,2003 郭宏亮. PC机与AT89C51单片机串行通信接口设计[M]. 平原大学学报,2007 周航慈. 单片机应用编程技术。 北京:航空航天大学出版社,2001 刘和平,刘悦.单片机原理及应用.重庆.重庆大学出版社,2004 [10] 陈明英.89C51单片机课程设计实训教材.北京.清华大学出版社,2004 [11] 李超清.单片机原理与接口技术.北京.北京航空航天大学出版社,2002 [12] 李华.MCS-51系列单片机接口技术.北京航空航天大学出版社,1993 [13] 单片机应用实例详解。 清华大学出版社,2010[1 4]单片机.Prentice-Hall,1987[15]Mazor,Moore's law,microcomputer,me.Solid-State Circuits Magazine,IEEE,2009[16]Adam Dunkels.Full TCP/IP 8-bit architectures[J].Combination Lock Popular Mechanics,2009[17]Intel Microprocessors Architecture,Programming,and Interfacing Higher Education Press(影印版),2001 2.主要研究(设计)内容、研究(设计)思路和工作方法或工作流程 设计内容:本设计采用单片机作为主控芯片,用户要想开锁,必须先通过键盘输入正确的密码才能打开锁。
密码输入错误时有提示,为了提高安全性,密码输入错误三次后会发出报警声。密码也可由用户修改。 设计思路: 本设计主要分为硬件设计和软件设计两部分。 1、电子密码锁硬件设计 电子密码锁的关键是实现密码的输入、取消、修改、开锁以及忘记密码时重新设置密码等功能。本设计采用AT89C51单片机作为密码锁的控制核心,其电路结构主要由单片机、键盘接口电路、显示电路、开锁电路和密码保护电路五部分组成。 如图1电子密码锁结构图 (1)单片机 单片机是整个电路的核心,单片机首先要读取键盘输入,判断用户的操作并控制相应电路。开机后,首先进入初始界面,要求输入密码。 若60S内无按键输入则显示屏熄灭,若有按键输入则开始记录输入的密码,并与系统中存储的密码进行比对,若比对结果相同则提供用户想要的操作选项。若要修改密码,必须先输入原密码,再输入两次新密码,判断原密码输入正确,输入两次新密码即可修改。最后要求用户输入密码提示问题及答案,防止忘记密码,若密码不正确则显示屏显示密码错误并开始计时,若60秒内连续三次输入错误密码则禁止输入密码并报警,显示屏切换到忘记密码界面要求用户输入密码提示问题及答案,若答案正确则可重置密码,完成后用户返回初始界面输入重置密码,解除报警。
(2)键盘接口电路 本设计采用4X4矩阵键盘控制电路,每个横线与竖线的交叉点并不相连,而是通过一个按键连接起来。采用这种矩阵结构,只需要4条列线,就可以组成4X4键的键盘。图中,与行线相连的4个单片机I/O口作为输出端,与列线相连的端口作为输入端。当没有按键按下时,所有输出端都是高电平,表示没有按键按下。一旦有按键按下,输入线就会被拉低。这样,通过读取输入线的状态,就可以知道有按键是否按下。 (3)显示电路 本设计采用串行静态显示方式,通过在单片机的两个串口上扩展6个串行输入并行输出的移位寄存器作为静态显示接口,完成系统显示功能。单片机串口输出的信号先送往左边的移位寄存器。 由于移位脉冲的作用,使数据右移,从而达到多位显示的目的。另外,移位寄存器还作为数码管的驱动器,这里的数码管采用8位共阴极数码管。 (4)开锁电路 如果用户输入的密码正确,则单片机输出开锁信号,该信号送到开锁驱动电路,进而驱动电磁锁,达到开门的目的。本设计中出于设计成本的考虑,采用发光二极管代替电磁锁,开锁时发光二极管亮,未开锁时熄灭。 (5)密码保护电路 密码保护电路的作用是在断电时保存当前设置的密码信息,从而克服了老一代电子密码锁电路断电后设置的密码丢失的缺点。
本设计采用AT24C04来实现该功能,AT24C04是4KB电可擦写存储器芯片,利用串口与单片机传输数据。 2、电子密码锁的软件设计 (1)总体软件设计思路 程序分为主程序、密码判断子程序、数码管显示子程序、键盘扫描中断服务程序和待机中断服务程序。 主程序完成内部RAM单元和特殊功能寄存器的初始化后,进入循环结构,在循环中首先调用数码管显示子程序,然后判断是否有键按下,然后判断是数字键还是功能键,如果是数字键则进行密码判断,如果是功能键则判断是确认键还是取消键,然后根据确认键和取消键进行相应操作。主程序流程图如下图2所示。 主程序流程图 (2)密码判断 密码判断:有数字键按下后,进行计数。 若按下6个数字键,则表示输入了6位密码。将输入的密码与设定的密码进行比较,若密码输入正确,则输出密码正确标志,若密码输入错误,则输出密码错误标志。 (3)键盘扫描中断服务程序的实现 键盘扫描中断服务程序判断某个键是否关闭,以及关闭键的键号。每隔50MS扫描一次键盘,每输入一个键,就发出蜂鸣器按键提示音。待机中断服务程序实现待机计时(若t秒内没有输入,则清除输入的内容)。
主程序开始初始化变量,设置T0、T1。中断入口处是否有按键闭合?是否是取消键?密码是否正确?输出密码错误信息输出解锁信号清除所有输入内容调用显示子程序,启动待机定时器调用蜂鸣器子程序,清除按键闭合有效标志位调用密码判断子程序,关闭待机定时器是否是数字键?第一:检测有按键是否按下。第二:去除按键抖动第三:如果有按键按下,识别是哪一个键按下了。第四:为了保证按键闭合时CPU只处理一次,必须去除按键释放时的抖动。三. 毕业设计(论文)工作安排 2012 阅读相关资料,消化内容 2012 撰写开题报告,提交导师修改 2012 根据导师建议修改报告 2012 开题答辩 2012 完成软件设计与仿真 2012 对设计进行微调和改进 2012 设计并制作物理密码锁 2012 查找物理密码锁的缺陷并加以改进 2012 毕业设计论文撰写 2012 准备毕业设计答辩系列工作