《基于单片机的电子密码锁设计毕业论文(27页).doc》由会员分享,可在线阅读,更多相关《基于单片机的电子密码锁设计毕业论文(27页).doc(27页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、-基于单片机的电子密码锁设计毕业论文-第 23 页 毕 业 论 文(设 计) 题 目 基于单片机的电子密码锁设计 英文题目 Design of Electric Coded Lock Based on MCU 院 系 专 业 姓 名 年 级 指导教师 年 月摘要随着科技的不断发展,人们越来越重视对具有私密、重要物质的场所的安全性,所以具有报警功能的电子密码锁在日常生活中用的越来越多,因此研究与设计单片机为主要控制器的电子密码锁具有工程意义和解决日常应用需求的价值。本电子密码锁的设计采用以单片机STC89C52RC为主控制器,应用矩阵键盘、SMC1602A液晶显示器、STC89C52RC内部的E
2、EPROM等器件进行设计了键盘电路、液晶显示电路、UART串口电路、电源(5V)电路、指示(LED)电路、报警(蜂鸣器)电路等电路设计;应用protel软件设计了硬件原理图和PCB图;应用C51语言设计了显示时间和校对时间、输入密码和修改密码、控制EEPROM等软件模块;最后焊接PCB并调试电路。最终设计出一个具有等待状态显示时间(可以对时间进行校准)、输入密码、修改密码、密码正确与否指示、报警、密码保护、一键还原初始密码等功能的密码锁。设计此系统具有较高的安全性和科学性。关键词: 单片机;电子密码锁;液晶显示;报警;密码保护 AbstractAs technology continues t
3、o evolve, there is growing emphasis on having a private, important material security of the place, so the alarm function of electronic locks used in everyday life, more and more, so the research and design of microcontroller as the main controllers electronic locks with engineering significance and
4、value of solving everyday applications.The electronic locks are designed using a microcontroller STC89C52RC main controller, application matrix keyboard, SMC1602A LCD monitors, STC89C52RC internal EEPROM devices such as the design of the keyboard circuit, liquid crystal display circuit, UART serial
5、circuit, power supply (5V) circuit, indicating (LED) circuit, alarm (buzzer) circuit, circuit design; protel software application designed hardware schematics and PCB map; C51 language designed application displays the time and checking the time, enter the password and change passwords, control soft
6、ware modules such as EEPROM ; finally soldered PCB and debug circuits. The final design of a status display with waiting time (time can be calibrated), enter your password, change your password, the password is correct or not indication, alarm, password protection, a key to restore the initial passw
7、ord lock and other functions. Design of this system with high security and scientific.Keywords: MCU;Electric ;Coded Lock ;LCD ;Alarm ;Password Protection目 录Abstract.III1引言1.1本文的研究背景及意义.41.2 技术的发展历史与现状.42 系统总体方案设计.52.1 电子密码锁系统的功能简介.52.2电子密码锁系统的总方案设计.73系统硬件设计.163.1指示灯电路设计.163.2 5V电源电路设计.163.3 晶振电路设计.1
8、73.4 复位电路设计.173.5 液晶显示电路设计.183.6报警电路设计.184 系统软件设计.194.1主程序设计流程.214.2键盘扫描设计流程.224.3 输入密码程序设计流程.224.4 修改密码程序设计流程.235 系统测试与调试.245.1 系统仿真测试与调试.255.2 系统测试及结果分析.26结论 .27 参考文献.28 致谢.29附录A 源程序清单. .30引 言1.1 本文的研究背景及意义随着科技的不断进步和发展,人类已经步入了一个高科技的新时代。在这日新月异的时代中,人们对住宅、部门等具有私密、重要物质的场所的安全性要求不断提高。旧社会中,由于科技不发达,人们常常用机
9、械锁来保护个人的财产,以这种方法来确保它们的安全性。这种用钥匙开锁式的机械锁常常会给人们带来不少的烦恼,比如:开锁的钥匙不慎丢了或者锁门的锁坏了。同时,平时携带一大窜钥匙也给人们带来不少的麻烦。从安全的角度来看,一种具有报警和高实用性的密码锁将取代人们所熟知的机械锁,这种电子密码锁安全可靠,具有较高的安全性和科学性。1.2 技术的发展历史与现状1.2.1 电子密码锁技术的发展历史电子密码锁从电子科技技术发展以来经历了由大型到小型、由复杂到简单、由原始到智能的发展经历。尤其是近年来不同型号的微处理器出现,为电子密码锁不断的改进与创新提供了新的发展契机:比如如今的微处理器会做的很小,这样小巧的处理
10、器能为电子密码锁节省更多的硬件空间达到节省成本;再比如说老版本的8051单片机它内部是不提供EEPROM的,这如果想实现数据储存就需要用I2C总线来外接存储器来保存数据,如今单片机内部有EEPROM,数据掉电不会丢失。说到识别密码方式,国内外大致经历了由早期的矩阵键盘输入操作到红外遥控控制操作再到智能IC卡再到如今指纹识别等多种实现方法。红外遥控控制密码锁会更加的方便快捷,通过密码锁的内部芯片对红外接收头接受到的信号进行解码然后通过对比密码来判定输入密码是否正确;IC卡密码锁设计是基于一个AT24C01A卡进行设计的,IC卡的核心是电可擦除的EEPROM。指纹密码锁设计是西门子公司研制的一种指
11、纹感应片,这种芯片面积只有130mm,大小和人的指甲盖差不多,在这么小的芯片上却覆盖着有6.5万个微小型敏感元件,每个感应片有很高的灵敏度和测量精度,如此多的敏感细致元件完全可以非常详细和精准的将人手上的各种纹路信息拾取下来,将指纹数据存于电脑数据库中,这种具有人体特征标志的人体密码不仅可以大大增加了私人财产的安全性而且其操作简便、快捷具有很高的可靠性,于是这种指纹人体密码芯片将逐渐的被用于日常生活中具有重要物质的场所和设备比如银行、仓库等。还有显示方面,早期显示使用的led灯、后来有了7段数码管、再后来大多数用的是lcd显示器。所以,随着科技的进步和创新,设计密码锁的技术也不甘落后,也在朝着
12、智能化,通用化,人性化等富有创新的方向发展。1.2.2 电子密码锁技术的研究现状针对电子密码锁系统设计经过翻阅资料和对学术论文的学习和研究,提出多种实现方案,其中比较典型的有以下几种。文献中应用矩阵式键盘作为密码输入,用单片机的IO口控制键盘,通过编写程序用单片机对键盘进行扫描,然后用7段数码管显示系统状态和信息、门开门关提示信息是由LED灯进行提示。还有,应用红外遥控器和红外接收头来代替上面的矩阵式键盘,采用现成的遥控器,应用单片机编程对红外接收头接受的信号进行解码,显示应用的是型号为1602A的液晶显示,开关门指示信息是由led灯提示的,设计的优势是应用了I2C总线来控制外接的EEPEOM
13、,来实现输入密码的数据保存功能。还有,应用STC89C52单片机,这个单片机和AT系列的单片机最大区别就是这类单片机有内部集成了4kb大小的EEPROM,利用ISP/API功能能应用编程来控制内部的EEPROM的读写而不需要外接存储器来进行数据保护。再有,应用单片机来完成以下的工作,第一个工作是对连接在单片机IO口上的键盘进行编码来制作一个远红外遥控器,将序列码经过发送头发送到单片机连接的接收头上,第二个工作是将接受到的数据经过红外接收头解码将数据交给单片机来处理来实现各个码的功能。目前,电子密码锁的功能的得到实现的新方法真是别出心裁,展现科技的发展和进步,比如:IC卡和指纹识别,IC卡密码锁
14、设计是基于一个AT24C01A卡进行设计的,IC卡的核心是EEPROM。应用指纹设计出的密码锁主要应用的是传感器是西门子公司研制,这种传感器有很高的测量精度和灵敏度,所以这种人体密码大大提高了家庭、个人、公共的具有重要性的财产的安全性,这是科技发展和人类不断创新的结果,所以我们要好好利用科技带给我们生活的每一种便捷。2 系统总体方案设计2.1 电子密码锁系统的功能简介对本系统设计任务书要求的功能罗列如下:1、系统的液晶显示屏具有指示功能。2、系统在空闲状态显示当前时间并可以对时间进行校准。3、系统在输入密码状态用键盘(09)来输入系统设定的当前密码,如果密码输入正确在屏幕上有欢迎信息提示和开门
15、信息提示;如果输入密码错误在屏幕上会有密码错误信息提示,如果输入密码错误三次将会有报警提示。4.系统在修改密码状态,要求输入当前密码,如果密码输入正确则进入修改密码状态;如果输入当前密码错误则有错误信息提示。5.系统有存储数据功能,当断电后会保存当前的密码不会丢失。6.系统在按了输入密码键或修改密码健后如果30秒内没有对系统进行任何操作的话,系统将自动切换到显示时钟状态。7.系统具有一键还原出厂密码功能,如果对密码管理不善可以使用本功能进行密码还原。2.2 电子密码锁系统的总方案设计本课题设计用的主要芯片有两个:一个是STC89C52单片机,一个是SMC1602A液晶显示器。STC89C52单
16、片机作为系统的总控制核心,SMC1602A为主要的外围电路。下面对STC89C52和SMC1602A做一下简单的介绍。2.2.1 STC89C52概述图2.1 STC89C52单片机Figure 2.1 STC89C52 single-chip microcomputerSTC89C52系列单片机的封装形式共分为DIP、PLCC及PQEP 3中形式,常用的是DIP封装方式。STC89C52单片机共40个引脚,大致可分为4类:(1)电源引脚Vcc(40脚):电源端,+5VVss(20脚):接地端(GND)(2)时钟电路引脚XTAL1(19脚):外部接晶振输入端XTAL2(18脚):外部接晶振输出
17、端 (3) I/O引脚P0口 (3932脚):P0口是一组8位的漏极开路型双向I/O口,也是地址和数据的总线复用口P1口 (1 8脚):P1口是一组带内部上拉电阻的8位准双向I/O口,可驱动4个TTL门电路P2口(2128脚):P2口是一组带内部上拉电阻的8位准双向I/O口,可驱动4个TTL门电路P3口(1017脚):P3口是一组带内部上拉电阻的8位准双向I/O口,该端口的每个引脚都有第二功能(4) 控制线引脚RST(9脚):复位端EA/VPP(31脚):片外的存储器选择端/Flash存储器编程电源ALE/PROG(30脚):地址锁存允许端/编程脉冲输入端PSEN(29脚):读片外程序存储器选
18、通信号输入端 STC89C52单片机最大的特点就是有ISP/IAP功能,它具有4K字节的EEPROM。其内部集成的EEPROM是与程序空间分开的,内部寄存器和功能描述如下:表2.1 ISP/IAP相关寄存器列表名称地址功能描述D7D6D5D4D3D2D1D0复位值ISP_DATAE2hFlash数据寄存器1111 1111ISP_ADDRHE3hFlash高字节地址寄存器0000 0000ISP_ADDRLE4hFlash低字节地址寄存器0000 0000ISP_CMDE5hFlash命令模式寄存器-MS2MS1MS0xxxx x000ISP_TRIGE6hFlash命令触发寄存器xxxx x
19、xxxISP_CONTRE7hISP/IAP 控制寄存器ISPENSWBSSWRST-WT2WT1WT0000x x000ISP_DATA:ISP/IAP操作时的数据寄存器。ISP/IAP从Flash读出的数据放在此处,向Flash写入的数据也需放在此处。ISP_ADDRH:ISP/IAP操作时的地址寄存器高八位。ISP_ADDRL:ISP/IAP操作时的地址寄存器低八位。ISP_CMD:ISP/IAP操作时的命令模式寄存器,须命令触发寄存器触发方可生效。命令模式如表2.2所示。表2.2 ISP_CMD寄存器模式设置D7D6D5D4D3D2D1D0模式选择保留命令选择-000待机模式,无ISP
20、操作-001对用户的应用程序flash区及数据flash区字节读-010对用户的应用程序flash区及数据flash区字节编程-011对用户的应用程序flash区及数据flash区扇区擦除程序在系统ISP程序区时可以对用户应用程序区/数据Flash区(EEPROM)进行字节读/字节编程/扇区擦除;程序在用户应用程序区时,仅可以对数据Flash区(EEPROM)进行字节读/字节编程/扇区擦除。STC89C51RC/RD+系列单片机出厂时已经固化有ISP引导码,并设置为上电复位进入ISP程序区,并且出厂时就已完全加密。ISP_TRIG:ISP/IAP操作时的命令触发寄存器。在ISPEN(ISP_C
21、ONTR.7)=1时,对ISP_TRIG 先写入46h,再写入B9h,ISP/IAP命令才会生效。STC89C52RC,STC89LE52RC单片机内部可用Data Flash(EEPROM)的地址如表2.3所示表2.3 STC89C52RC、STC89LE52RC单片机内部EEPROM地址表第一扇区第二扇区第三扇区第四扇区起始地址结束地址起始地址结束地址起始地址结束地址起始地址结束地址2000H21FFH2200H23FFH2400H25FFH2600H27FFH第五扇区第六扇区第七扇区第八扇区起始地址结束地址起始地址结束地址起始地址结束地址起始地址结束地址2800H29FFH2A00H2B
22、FFH2C00H2DFFH2E00H2FFFH2.2.2 SMC1602A概述图2.2 SMC1602A 封装图Figure 2.2 SMC1602A packaging figureSMC1602A 标准字符点阵型液晶显示模块(LCM),采用点阵型液晶显示器(LCD),可显示16 个字符X2 行西文字符,字符尺寸为2.95X4.35(WXH)mm,内置HD44780 接口型液晶显示控制器,可与MCU 单片机直接连接,广泛应用于各类仪器仪表及电子设备图2.3 SMC1602A接口说明Figure 2.3 SMC1602A interface specifications控制器接口说明(HD44
23、780 及兼容芯片):1) 基本操作时序:1.1 读状态:输入:RS=L,RW=H,E=H 输出:D0D7=状态字1.2 写指令:输入:RS=L,RW=L,D0D7=指令码,E=高脉冲输出:无1.3 读数据:输入:RS=H,RW=H,E=H 输出:D0D7=数据1.4 写数据:输入:RS=H,RW=L,D0D7=数据,E=高脉冲输出:无2) RAM 地址映射图控制器内部带有80X8 位(80字节)的RAM缓冲区,对应关系如右图所示:图2.4 SMC1602A RAM地址映射图3) 指令说明 初始化设置l 显示模式设置图2.5 SMC1602A 显示模式设置l 显示开/关及光标设置图2.6 SM
24、C1602A 显示与光标设置 数据控制控制器内部设有一个数据地址指针,用户可通过它们来访问内部的全部 80 字节RAM。l 数据指针设置图2.7 SMC1602A 数据结构指针设置l 其他设置图2.8 SMC1602A 其他设置4) 初始化过程(复位过程) 写指令38H:显示模式设置第一次 延时3ms 写指令38H:显示模式设置第二次 延时3ms 写指令38H:显示模式设置第三次 延时3ms 写指令38H:显示模式设置第四次 延时3ms 写指令08H:显示关闭 写指令01H:显示清屏 延时3ms 写指令06H:显示光标移动设置 写指令0CH:显示开及光标设置2.2.3 系统框图本系统的核心部分
25、是STC89C52单片机,利用MAX232芯片实现将hex文件下载到单片机运行的功能;利用SMC1602液晶显示屏实现电子密码锁所需的提示信息输出功能;利用键盘实现对密码操作的各项的功能比如输入密码或者修改密码等;采用蜂鸣器实现系统在输入密码错误三次后的自动报警功能;LED灯来指示密码输入是否正确和指示状态的功能;利用STC单片机内部的EEPROM实现密码数据保存功能;用电源电路为系统提供5V的稳定电源电源;用12MHZ的晶振电路为系统的单片机提供内部时钟。系统的框图如下图所示:单片机STC89C51电源电路与晶振电路复位电路LCD液晶显示电路UART串口矩阵键盘电路报警电路与指示电路 图2.
26、8 系统结构框图 System structure diagram in figure 2.8单片机中P1.0P1.6连接10个独立按键来组成一个矩阵键盘,实现键盘扫描并对按键进行编码,从而实现输入密码和修改密码的功能;P1.7通过NPN型三极管来驱动蜂鸣器,当输入密码错误三次后自动实现报警功能;P2.0P2.7连接液晶显示器的8位数据线,实现从单片机向液晶显示器传输数据;P3.0连接液晶的RS端和max232的out端、P3.1连接液晶的RW端和max232的in端、P3.2连接液晶的EN端,实现单片机控制液晶显示器和连接串口的功能;P3.3连接独立按键,按键后进入输入密码状态;单片机的P3
27、.4、P3.5、P3.6都连接了独立按键,这些独立键盘都是功能键盘他们是:输入密码功能键,按下系统会进入输入密码状态;修改密码功能键,按下系统会进入修改密码状态;还有一个确定功能键,按下系统会实现确定功能;P3.6和 P3.7分别连接红色LED灯和绿色的LED灯,实现密码输入是否正确指示的功能。3 系统硬件设计本设计包括8个电路模块,其中包括:指示灯电路模块、5V电源电路模块、晶振电路模块、复位电路模块、LCD显示电路模块、报警电路模块、键盘电路模块、串口电路模块。3.1 指示灯电路设计指示电路分为两个部分:电源指示和密码输入状态指示,设计电路如下图所示:3.2.1 电源指示灯电路设计当电源接
28、通后指示灯亮,表示系统供电正常。图2.9 电源指示灯电路Figure 2.9 power light circuit 3.2.2 密码输入状态指示电路设计P3.6连接红色LED1,LED1亮表示当前密码输入错误;P3.7连接绿色LED2,LED2亮表示当前密码输入正确,LED1、LED2全亮表示系统在修改密码状态。 图3.0 密码输入状态指示电路Figure 3.0 password input status indication circuit3.2 5V电源电路设计设计电路如下图所示:图3.1 电源电路接法电路Figure 3.1 the power connection circuit3
29、.3 晶振电路设计晶振电路这里采用的是内部振荡器接法,晶振的频率为12MHZ,它为单片机提供内部时钟源,设计电路如下图所示:图3.2 晶振电路Figure 3.2 crystal vibration circuit3.4 复位电路设计单片机的复位本设计手动复位,复位的作用是防止程序由于某些原因跑飞,通过此键来保证单片机运行的可靠性,设计电路如下图所示:图3.3 复位电路Figure 3.3 reset circuit3.5 LCD显示电路设计单片机的P2.0P2.7连接液晶显示器的714脚(8位数据),实现从单片机向液晶显示器传输数据的功能;P3.0连接液晶4脚(RS端),从而实现单片机向其发
30、送命令或数据功能;P3.1连接液晶的5脚(RW端),从而实现单片机对其读写的功能;P3.2连接液晶的6脚(EN端),这个引脚是用来编程控制lcd使能的。还有lcd显示器的3引脚连接10K欧姆的可变电阻器,当改变它的阻值大小时可以改变lcd显示的对比度如,设计电路下图所示: 图3.4 液晶显示电路Figure 3.4 LCD display circuit3.6 报警电路设计蜂鸣器的连接到单片机的P1.7端。当编程给P1.7一个高电平的话,三极管的源极和集电极导通,蜂鸣器将要通电,通过设置蜂鸣器的通电的时间来实现报警的声音,设计电路如下图所示:4.系统软件设计本系统软件主要包括10个软件程序模块
31、:主程序、键盘扫描程序、输入密码程序、修改密码、时间显示程序、时间调整程序、报警程序、对EEPROM操作程序、还原出厂设置程序、密码校验函数等函数模块的设计。主程序设计流程主程序流程图如下图所示:开始初始化显示时钟调用设置时钟函数是否设置时钟?YN是否修改密码?调用修改密码函数下?YN是否输入密码?调用输入密码函数是否输错到3次?调用报警函数YYNN是否一键还原?调用密码还原函数YN系统上电后,系统将对硬件中的寄存器进行初始化设置,初始化的寄存器主要是初始化单片机的内部定时器用哪个定时器就要使能该定时器然后设置它的定时初值;初始化液晶,主要是初始化lcd的显示方式等;初始化单片机的IO端口等。
32、当初始化完成后系统进入了显示当前时间的等待状态,在显示时间的同时系统在主函数中也不断的调用以下几个功能函数:输入密码子函数,修改时间子函数,报警子函数,一键还原子函数等。当系统检测到有功能键按下的时候,系统就调用相应的子函数去执行,来实现相应子程序的预设功能。下面对主要的函数模块的流程简要的说明。4.1 键盘扫描设计流程键盘扫描程序流程图如下图所示:开始初始化P1口矩阵键盘按下?按键序号赋给一变量Y将该变量传给主程序N进入修改密码状态密码键按下?YN返回改密健按下?进入修改密码状态YN当系统用到键盘时就要对键盘进行扫描。键盘有10个数字键和3个功能键,数字键盘的连接方式见图3.8和图3.9。当
33、系统检测到有键按下的时候,这时系统将这个按下的键对应的键值传递给函数告诉主函数是哪个键按下,实现的方法是将按下键的序号付给一个变量,然后将这个变量的值返回给主函数。为了实现在输入密码状态和修改密码2个状态之间的自由切换,在键盘扫描电路的程序中又添加了两个工作状态的判断程序,比如我现在是输入密码状态,现在我又想修改密码。这时按一下对应的功能键就能进入想要进入的状态。4.3入密码程序设计流程输入密码程序流程图如下图所示:开始密码键按下?返回NY调用扫描键盘函数调用校验密码函数N按确定键?30秒到?NYY密码正确?N错误次数加1Y密码正确提示返回当按了输入密码键后,密码锁进入输入密码状态,首先系统将
34、调用键盘扫描函数进行密码的输入,当6位密码输入完成后,此时需要按一下确认键,此时如果输入的6位密码全部正确,密码锁将会通过lcd提示密码正确信息的提示,同时绿色的led灯亮表示输入的密码正确;当6位密码输入错误,密码锁将会有通过lcd提示密码错误的提示同时红色的led指示灯亮表示输入的密码错误,此时错误次数加一,如输错的次数到达系统设置的要求的话密码锁将自动产生报警信号。如果在输入密码状态没有对系统进行任何的操作的话,30秒后系统将自动的跳到等待状态。4.3修改密码程序设计流程修改密码程序流程图如下图所示:开始改密键按下?返回NY调用扫描键盘函数Y调用校验密码函数N按确定键?30秒到?NY密码
35、正确?提示密码错误NY修改密码函数当按下修改密码键后,密码锁将进入修改密码状态,此时的红色和绿色的指示灯都亮表示当前的状态是修改密码状态,系统调用键盘扫描函数进行密码的输入,当6位密码输入完成后需要按一下确认键,此时如果输入的6位密码全部正确,密码锁进入修改密码状态;当6位密码输入错误那么会有密码输入错误的提示;进入修改密码状态后,系统将再一次的调用键盘扫描函数进行新的密码输入,要求输入新的6位密码,输完后按确认键后,系统会有修改密码成功的提示;如果按了修改密码功能键后没有对系统进行任何的操作的话,30秒后系统将自动的跳到等待状态。4.4报警程序设计流程报警程序流程图如下图所示:开始设置报警声
36、的频率控制蜂鸣器驱动电路报警10次返回图4.5 报警程序流程图Alarm program flow chart in figure 4.5在报警函数主要设置了报警声音的频率,当报警条件满足时,系统将由蜂鸣器进行十次报警。和蜂鸣器连接的是NPN型号的三极管,当给驱动引脚送一个高电平则蜂鸣器通路,开始报警,当给驱动引脚送一个低电平则蜂鸣器不通,停止报警。4.5时间显示程序设计流程开始时间显示流程图如下图所示:初始化向液晶的第一行送入NOW TIME向液晶的第二行送入时钟的时、分、秒返回图4.6 时间显示流程图Time display flow chart in figure 4.65.1系统仿真测
37、试与调试系统调试用到的软件是keil uvision3和protues,将keil uvision3和protues仿真软件结合起来,仿真实现各种功能能否实现,然后再将软件加载到硬件上。调试过程很重要,因为在代码编写的过程中,调试能够清楚的了解程序运行的顺序和各个函数之间的调用情况,更重要的是调试能够帮助找到程序中遇到的不可理解的错误。经过多次对代码的调试,系统的软件部分可以满足系统的设计要求,使设计合理、完美。下面对protues仿真结果进行简要的说明:图5.2 protues仿真状态Figure 5.2 protues simulation state 结论设计的基于单片机的电子密码锁实现
38、了密码锁的常用功能和技术指标。在指导老师精心指导和自己的不懈努力下完成了软件和硬件的各项工作,现在系统各项功能运行正常,基本上完成了任务书中的要求和任务。系统中用LCD1602A来显示提示信息,使系统更加实用。电子密码锁最重要的方面就是具有较高的可靠性,本文设计的密码锁具有密码数据保护功能和备用电源等措施来增加系统的可靠性。在数据保护方面,应用单片机内部的eeprom,这样使硬件资源利用率大大提高。由单片机控制器系统控制密码锁在空闲状态显示当前时间的同时不断的检测那几个功能键是否被按下,如果有功能键按下,之后系统就马上进入相应的功能状态。参 考 文 献1 姚永平,STC89C51RC/RD+系
39、列用户数据手册,宏晶科技,20062 郭海英,基于单片机的电子安全密码锁的设计,20053 欧阳小东、李玲、宋文源,基于AT89C51的激光密码锁的设计,现代电子技术,20044 周功明,基于AT89C2051单片机的防盗自动报警的电子密码锁系统的设计,20075 刘振海,一种基于单片机和串行EEPROM的智能密码锁,微计算机信息,20076 李建波,基于STC89C52单片机的电子密码锁,20087 邢矫健,增强型的STC89C51单片机简介,无线电,20068 杨锦伟,基于AT89S51单片机的电子密码锁设计与实现,20059 康华光,陈大钦,电子技术基础,北京高等教育出版社,200910
40、 胡汉才,单片机原理及其接口技术,北京清华大学出版社,200811 宋美春,薛玉新,牛轶霞.指纹密码锁新技术J.科技信息,1999,(05)致 谢毕业设计能够检验大学三年的学习和实践情况,所以自己很重视这个实践的机会。从接到导师任务书那天起自己就进入认真的学习和设计状态,每天上午在教学楼看书学习,下午在实验室编写程序和设计电路,这样做的目的就是想做好毕业设计。果然经过自己的不断努力,最终比较圆满的完成了毕业设计的任务。毕业设计指导老师李琦老师指导有方,和蔼可亲,做人做事一丝不苟,在这期间老师给我很多有关课题的有价值的意见和指导,对我顺利完成毕业设计起到很大的作用。在这非常感谢xx老师,当然也要
41、感谢大学四年教育过我的每一位老师。做毕业设计时也学习了很多有关单片机和编程的书和资料,所以也感谢各位作者和出版社。在此期间,也有同学的帮忙与指导,同时也谢谢他们。最后感谢父母谢谢他们给我提供这么好的教育。A附 源程序#include #include #include unsigned char code ps =1,2,3,4,5; unsigned char code dispcode =0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x00,0x40; unsigned char pslen=9; unsigned char templen; unsigned char digit; unsigned char funcount; unsigned char digitcount; unsigned char psbuf9; bit cmpflag; bit hibitflag; bit errorflag; bit rightflag; unsigned int second3; unsigned int aa; unsi