《基于单片机的电子密码锁设计本科毕设论文.doc》由会员分享,可在线阅读,更多相关《基于单片机的电子密码锁设计本科毕设论文.doc(40页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、毕业设计论文基于单片机的电子密码锁设计目 录1. 引言11.1 课题背景和意义11.2 电子密码锁发展趋势22. 总体设计方案22.1 电子密码锁设计的具体要求22.2 总体设计方案32.3 系统总体设计原理43电子密码锁的硬件设计53.1 主控芯片STC89C5253.2 存储电路63.3 LCD显示模块73.4 单片机最小系统83.5 报警电路93.6 开锁电路93.7 键盘输入模块104. 电子密码锁的软件设计104.1 主程序114.2 按键软件设计114.3 密码设置软件设计124.4 开锁软件设计135. 调试与实现145.1 软件调试145.2 Proteus仿真155.3 Pr
2、otel99 SE 电路设计165.4 硬件调试176. 结论20参考文献221. 引言1.1 课题背景和意义随着电子技术和计算机技术的飞速发展,单片机性能不断完善,性能价格比显著提高,技术日趋完善。由于单片机具有体积小、重量轻、价格便宜、功耗低、控制功能强及运算速度快等特点,因而在国民经济建设、军事及家用电器等各个领域均得到了广泛的应用。本设计利用单片机及附加电子元器件实现数据采集和控制算法,来完成某一实际功能,检验并提高同学对整体电路设计和把握能力,了解单片机系统设计流程,以及电路板的实际制作和调试能力。同时也加强对数字电路、单片机和微机原理等课程知识的实际应用能力,也为同类产品的进一步发
3、展奠定理论和实践基础。随着人们生活水平的提高和安全意识的加强,对安全的要求也就越来越高。锁自古以来就是把守护门的铁将军,人们对它要求甚高,既要安全可靠的防盗,又要使用方便,这也是制锁者长期以来研制的主题。随着电子技术的发展,各类电子产品应运而生,电子密码锁就是其中之一。据有关资料介绍,电子密码锁的研究从20世纪30年代就开始了,在一些特殊场所早就有所应用。这种锁是通过键盘输入一组密码完成开锁过程。研究这种锁的初衷,就是为提高锁的安全性。由于电子锁的密钥量(密码量)极大,可以与机械锁配合使用,并且可以避免因钥匙被仿制而留下安全隐患。电子锁只需记住一组密码,无需携带金属钥匙,免除了人们携带金属钥匙
4、的烦恼,而被越来越多的人所欣赏。电子锁的种类繁多,例如数码锁,指纹锁,磁卡锁,IC卡锁,生物锁等。但较实用的还是按键式电子密码锁。20世纪80年代后,随着电子锁专用集成电路的出现,电子锁的体积缩小,可靠性提高,成本较高,是适合使用在安全性要求较高的场合,且需要有电源提供能量,使用还局限在一定范围,难以普及,所以对它的研究一直没有明显进展。目前,在西方发达国家,电子密码锁技术相对先进,种类齐全,电子密码锁已被广泛应用于智能门禁系统中,通过多种更加安全,更加可靠的技术实现大门的管理。在我国电子锁整体水平尚处于国际上70年代左右,电子密码锁的成本还很高,市场上仍以按键电子锁为主,按键式和卡片钥匙式电
5、子锁已引进国际先进水平,现国内有几个厂生产供应市场。但国内自行研制开发的电子锁,其市场结构尚未形成,应用还不广泛。国内的不少企业也引进了世界上先进的技术,发展前景非常可观。希望通过不断的努力,使电子密码锁在我国也能得到广泛应用1。391.2 电子密码锁发展趋势 电子密码锁应用于金融业,其根本的作用是“授权”,即被“授权”的人才可以存取钱、物。广义上讲,金融业的“授权”主要包括以下三种层次的内容:(1) 授予保管权,如使用保管箱、保险箱和保险柜; (2) 授予出入权,如出入金库、运钞车和保管室;(3) 授予流通权,如自动存取款。目前,金融行业电子密码锁的应用主要集中在前两个层面上。下面将介绍几种
6、在金融行业中使用较多的电子密码锁以及它们的技术发展方向。当然,以上所说的授权技术再高超,都必须由精良的“锁具”担当承载结构部件,实现开启、闭锁的功能,而且承担实体防护作用,抵抗住或尽量延迟破坏行为,让电子密码锁“软、硬不吃”。一般情况下,锁具防盗的关键是锁身外壳、闭锁的部件的强度、锁止型式、配合间隙和布局。提高电子密码锁之防护能力的必然途径是报警,在金融业的许多场所有人值守、有电视监控,具有报警功能,可以综合物理防范和人力防范两种作用。报警的前提是具备探测功能,根据电子密码锁的使用场所和防护要求,可选择多种多样的探测手段。在中国的城市金融业中,实现联网报警已经成为对各金融网点的基本要求。根据国
7、内外的实践经验,金融业实行安全防范风险等级很有必要,即依据使用的防盗报警器材的性能、安装布局和人员值守状况等,可以评估被防护物或区域的防护能力,得出风险等级,其中,电子密码锁的性能至关重要。由于数字、字符、图形图像、人体生物特征和时间等要素均可成为钥匙的电子信息,组合使用这些信息能够使电子密码锁获得高度的保密性,如防范森严的金库,需要使用复合信息密码的电子密码锁,这样对盗贼而言是“道高一尺、魔高一丈”。组合使用信息也能够使电子密码锁获得无穷扩展的可能,使产品多样化,对用户而言是“千挑百选、自得其所”。 2. 总体设计方案2.1 电子密码锁设计的具体要求电子密码锁设计的具体要求如下:(1) 本设
8、计为了防止密码被窃取要求在输入密码时在LCD屏幕上显示*号。(2) 设计开锁密码位小于六位密码的电子密码锁。(3) 能够LCD显示在密码正确时显示OPNE OK!,密码错误时显示PASSWORD ERROR,输入密码时显示YOUR PASSWORD。(4) 44矩阵键盘其中包括0-9的数字键和A-F的功能键。(5) 本产品具有报警功能,当输入密码三次错误时蜂鸣器报警。(6) 密码可以由用户自己修改设定(只支持6位密码),修改密码之前必须再次输入密码,在输入新密码时候需要二次确认,以防止误操作。2.2 总体设计方案方案一:采用数字电路控制。用以74LS112双JK触发器构成的数字逻辑电路作为密码
9、锁的核心控制,共设了9个用户输入键,其中只有4个是有效的密码按键,其它的都是干扰按键,若按下干扰键,键盘输入电路自动清零,原先输入的密码无效,需要重新输入;如果用户输入密码的时间超过10秒(一般情况下,用户不会超过10秒,若用户觉得不便,还可以修改)电路将报警20秒,若电路连续报警三次,电路将锁定键盘2分钟,防止他人的非法操作。采用数字电路设计的方案好处就是设计简单但控制的准确性和灵活性差。故不采用2。方案二:采用一种是用以STC89C52为核心的单片机控制方案。选用单片机STC89C52作为本设计的核心元件,利用单片机灵活的编程设计和丰富的IO端口,及其控制的准确性,实现基本的密码锁功能。在
10、单片机的外围电路外接输入键盘用于密码的输入和一些功能的控制,外接LCD1602显示器用于显示作用2。其原理如图1所示。图1 单片机控制密码锁原理图由图1可知方案二控制灵活准确性好且保密性强还具有扩展功能,根据现实生活的需要,此次设计采用此方案。2.3 系统总体设计原理本设计主要由单片机、矩阵键盘、液晶显示器和密码存储等部分组成。其中矩阵键盘用于输入数字密码和进行各种功能的实现。由用户通过连接单片机的矩阵键盘输入密码,后经过单片机对用户输入的密码与自己保存的密码进行对比,从而判断密码是否正确,然后控制引脚的高低电平传到开锁电路或者报警电路控制开锁还是报警,实际使用时只要将单片机的负载发光二极管换
11、成电子密码锁的电磁铁吸合线圈即可3。系统整体框图如图2所示。 图2 系统结构框图 各模块功能如下:(1) 键盘输入模块:分为密码输入按键与几个功能按键,用于完成密码锁输入功能。(2) 显示模块:用于完成对系统状态显示及操作提示功能。(3) 复位电路:完成系统的复位。(4) 报警电路:用于完成输错密码时候的警报功能。(5) 密码存储模块:用于完成掉电存储功能,使修改的密码断电后仍能保存。(6) 开锁电路:应用发光二极管模拟开锁,完成开锁及开锁提示。3电子密码锁的硬件设计3.1 主控芯片STC89C523.1.1 单片机STC89C52简介STC89C52是美国ATMEL公司生产的低功耗,高性能C
12、MOS8位单片机,片内含8k bytes的可系统编程的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准8051指令系统及引脚。它集Flash程序存储器,既可在线编程(ISP)也可用传统方法进行编程及通用8位微处理器于单片芯片中,ATMEL公司的功能强大,低价位STC89C52单片机可为您提供许多高性价比的应用场合,可灵活应用于各种控制领域4。 主要特性:与MCS-51 兼容 4K字节可编程闪烁存储器 寿命:1000写/擦循环数据保留时间:10年全静态工作:0Hz-24Hz三级程序存储器锁定128*8位内部RAM32可编程I/O线两个16位定时器/计数器5
13、个中断源 可编程串行通道低功耗的闲置和掉电模式片内振荡器和时钟电路 3.1.2 STC89C52功能STC89C52是一种带4K字节闪烁可编程可擦除只读存储器(FPEROMFalsh Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器,俗称单片机。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的STC89C52是一种高效微控制器,为很多嵌入式控制系统提供了一种灵活性高且价廉的方案,STC89C52芯片引脚图如
14、图3所示。图3 单片机引脚图3.2 存储电路AT24C04是美国Atmel公司的低功耗CMOS型EPROM,内含2568位存储空间,具有工作电压宽(2.55.5 V)、擦写次数多(大于10000次)、写入速度快(小于10 ms)、抗干扰能力强、数据不易丢失、体积小等特点。而且他是采用了IC总线式进行数据读写的串行器件,占用很少的资源和I/O线,并且支持在线编程,进行数据实时的存取十分方便。AT24C04中带有的片内地址寄存器。每写入或读出一个数据字节后,该地址寄存器自动加1,以实现对下一个存储单元的读写。所有字节均以单一操作方式读取。为降低总的写入时间,一次操作可写入多达8个字节的数据。IC总
15、线是一种用于IC器件之间连接的二线制总线。他通过SDA(串行数据线)及SCL(串行时钟线)两根线在连到总线上的器件之间传送信息,并根据地址识别每个器件。AT24C04正是运用了IC规程,使用主/从机双向通信,主机(通常为单片机)和从机(AT24C04)均可工作于接收器和发送器状态。主机产生串行时钟信号(通过SCL引脚)并发出控制字,控制总线的传送方向,并产生开始和停止的条件。无论是主机还是从机,接收到一个字节后必须发出一个确认信号ACK。AT24C04的控制字由8位二进制数构成,在开始信号发出以后,主机便会发出控制字,以选择从机并控制总线传送的方向5。管脚功能:SCL为串行时钟:串行时钟输入管
16、脚用于产生器件所有数据发送或接收的时钟这是一个输入管脚。SDL为串行数据/地址:双向串行数据/地址管脚用于器件所有数据的发送或接收SDL,是一个漏极开路输出管脚可与其它漏极开路输出或集电极开路输出进行线或。A0、A1、A2为器件地址输入端:当使用24C04时最大可级联8个器件,如果只有一个24C04总线寻址,这三个地址输入脚A0、A1、A2可悬空或连接到Vss。WP为写保护:如果WP 管脚连接到Vcc 所有的内容都被写保护只能读当WP, 管脚连接到Vss 或悬空,允许器件进行正常的读/写操作。管脚图如图4所示。图4 AT24C04引脚图3.3 LCD显示模块液晶显示模块已作为很多电子产品的通过
17、器件,如在计算器、万用表、电子表及很多家用电子产品中都可以看到,显示的主要是数字、专用符号和图形。1602型LCD显示模块具有体积小,功耗低,显示内容丰富等特点。1602型LCD可以显示2行16个字符,有8位数据总线D0-D7和RS,R/W,EN三个控制端口,工作电压为5V,并且具有字符对比度调节和背光功能6。1602型LCD基本操作程序如表1所示。表1 LCD1602基本操作程序读状态输入RS=L,R/W=H,E=H输出D0D7=状态字写指令输入RS=L,R/W=L,D0D7=指令码,E=高脉冲输出无读数据输入RS=H,R/W=H,E=H输出D0D7=数据写数据输入RS=H,R/W=L,D0
18、D7=数据,E=高脉冲输出无1602型LCD主要技术参数:显示容量:162个字符芯片工作电压:4.55.5V工作电流:2.0mA(5.0V)模块最佳工作电压:5.0V字符尺寸:2.954.35(WH)mm1602型LCD的接口信号如表2所示。表2 LCD1602接口信号编号符号引脚说明编号符号引脚说明1VSS电源地9D2数据2VDD电源正极10D3数据3VL液晶显示偏压11D4数据4RS数据/命令选择12D5数据5R/W读/写选择13D6数据6E使能信号14D7数据7D0数据15BLA背光源正极8D1数据16BLK背光源负极3.4 单片机最小系统3.4.1 晶振电路STC89C52引脚XTAL
19、1和XTAL2与晶体振荡器及电容C1、C2按图3所示方式连接。晶振、电容C1C2及片内与非门(作为反馈、放大元件)构成了电容三点式振荡器,振荡信号频率与晶振频率及电容C1、C2的容量有关,但主要由晶振频率决定,范围在033MHz之间,电容C1、C2取值范围在530pF之间。根据实际情况,本设计中采用12MHZ做系统的外部晶振。电容取值为30pF。晶振电路图如图3所示。图3 晶振电路3.4.2 复位电路单片机复位是使CPU和系统中的其他功能部件都处在一个确定的初始状态,并从这个状态开始工作。该电路在最简单的复位电路下增加了手动复位按键,在接通电源瞬间,电容C3上的电压很小,复位下拉电阻上的电压接
20、近电源电压,即RST为高电平,在电容充电的过程中RST端电压逐渐下降,当RST端的电压小于某一数值后,CPU脱离复位状态,由于电容C3足够大,可以保证RST高电平有效时间大于24个振荡周期,CPU能够可靠复位。增加手动复位按键是为了避免死机时无法可靠复位。当复位按键按下后电容C3通过R1放电。当电容C1放电结束后,CPU处于复位状态,松手后,电容C3充电,RST端电位下降,CPU脱离复位状态。R1的作用在于限制按键按下瞬间电容C3的放电电流,避免产生火花,以保护按键触电。其电路如图4所示。图4 复位电路3.5 报警电路报警部分由蜂鸣器发声装置及外围电路组成,加电后不发声,当有键按下时,“叮”声
21、,每按一下,发声一次,密码正确时,不发声直接开锁,当密码输入三次错误时,单片机的P3.7引脚为低电平,三极管T3导通蜂鸣器发出噪声报警7。图6 报警电路3.6 开锁电路开锁控制电路的功能是当输入正确的密码后发光二极点亮将锁打开。开锁步骤如下:首先利用键盘上的数字键09输入密码,然后按下键盘上的开锁按键。当用户输入密码后,单片机自动识别密码,如果密码输入三次不符,则报警。只有当密码正确,单片机才能使发光二极管亮系统处于开锁状态8。具体电路如图7所示。图7 开锁电路3.7 键盘输入模块由于本设计所用到的按键数量较多而不适合用独立按键式键盘。采用的是矩阵式按键键盘,它由行线和列线组成,也称行列式键盘
22、,按键位于行列的交叉点上,密码锁的密码由键盘输入完成,与独立式按键键盘相比,要节省很多I/O口。本设计中使用的这个4*4键盘不但能完成密码的输入还能作特别功能键用,比如清空显示功能等。键盘的每个按键功能在程序设计中设置9。其大体能(看键盘按键上的标记)及与单片机引脚接法如图5所示。图5 4*4矩阵按键4. 电子密码锁的软件设计本系统软件设计由主程序、初始化程序、LCD显示程序、键盘扫描程序、键功能程序、密码设置程序、EEPROM读写程序和延时程序等组成。4.1 主程序主程序流程图如图8所示,当开始接上电源,程序进行初始化设置,然后在键盘上输入密码,此系统进行键盘扫描,密码正确,开锁成功,密码错
23、误3次出错报警,选择是否修改密码,若要修改密码,先输入旧密码,密码正确后设置新密码,错误时报警,需要两次确认新密码,确认后,密码修改成功,否则结束最终返回。然后启动程序,进行保护,再次在键盘上输入密码,系统进行扫描,如果和之前一样,则执行相同程序,如不是,则执行另一种程序10。图8 主程序流程图4.2 按键软件设计按键功能流程图如图9所示,在按键当中,有与输入、开锁、清除、设置、确认、清除一位的程序相对应的按键,并按顺序与输入的数相比较,当输入正确时,进入密码程序,错误时进行清除,输入两次新密码正确时,可进行重新设置密码,最后确认程序。图9 按键功能流程图4.3 密码设置软件设计密码设置流程图
24、如图10所示,开始按下设置键,输入旧密码,如果错误累计三次,进行报警程序。如果输入正确,可以修改密码,确认后再次输入新密码,如果两次输入一样,则输入成功。如果两次输入的新密码不一样,则修改密码失败,重新返回设置新密码11。图10 密码设置流程图4.4 开锁软件设计开锁流程如图11所示,当开始接上电源,程序进行初始化设置,然后在键盘上输入密码,按下开锁键,如果输入正确,则开锁成功。如果输入错误累计达到三次,则执行报警程序。图11 开锁流程图5. 调试与实现5.1 软件调试程序在KEIL C51上调试,采用模块程序设计技术,则逐个模块调好后再进行系统程序总调。 对于模块结构程序要一个个子程序分别调
25、试。调试时,一定要符合入口条件和出口条件,调试可用单步运行和断点运行方式,通过检查用者系统的CPU现场情况、RAM的内容和I/O口的状态,检测程序执行结果是否符合设计要求,有无循环错误、有无机器码错误以及转移地址的错误,同时,还可以发现系统中存在的硬件设计错误和软件算法错误。 各程序模块通过后,则可以把相关功能块连在一起进行总调。这个阶段若有故障,可以考虑各子程序运行时是否破坏了现场,缓冲单元、工作寄存器是否发生冲突,标志位的建立和清除是否有误,堆栈区是否有溢出,输入设备的状态是否正常等等,若用者系统是在开发机的监控程序下运行时,还要考虑用者缓冲单元是否和监控程序的工作单元发生冲突。 单步和断
26、点调试后,还应进行连续调试,用以确定定时精度、CPU的实时响应等问题。当全部调试和修改完成后,将程序固化到STC89C52中。进行整机调试。各功能实现则调试完成12。5.2 Proteus仿真在软件能实现的条件下,利用Proteus进行仿真,通过不停的调试与改正,最后终于实现了密码锁的功能,Proteus仿真结果如图12与图13所示。当连好各个模块电路的导线后,导入芯片程序,运行该密码锁仿真电路,通过按键可以进行密码锁的开锁,修改密码,错误密码3次以上报警的操作,LCD显示屏显示相应的操作现象,密码正确可以开锁,进而可以修改密码,密码错误三次由蜂鸣器发出报警声,如果系统出现错误还可以通过复位电
27、路进行复位13。总之,在原有的理论基础上,通过Proteus能够成功的进行密码锁基本操作的仿真,实现了相关的功能。图12 密码输入正确仿真电路图图13 密码输入错误仿真电路图5.3 Protel99 SE 电路设计Protel99 SE 是 Altium 公司推出的一款著名的电子电路PCB辅助设计软件,广泛应用于原理图设计、PCB设计等。Protel99 SE的功能完善,包括Service pack 6,并且提供了各种元件库,为用户提供了大量的电子器件参考手册及全套教程。Protel99 SE 基于 Windows环境,功能强大,人机界面友好,能让使用者在具有最完整的功能环境下,提升设计上的品
28、质和效率14。在proteus运行仿真实现的条件下,利用Protel99 SE 画出原理图,生成PCB图如图14所示。图14 电子密码锁PCB图5.4 硬件调试单片机应用系统的硬件调试和软件调试是分不开的许多硬件故障只有通过软、硬件联调才能发现,但一般是先排除系统中比较明显的硬件故障后才和软件一起联调。 常见的硬件故障: (1) 逻辑错误 硬件的逻辑错误是由于设计错误和焊接过程中的工艺错误而造成的,包括错线、开路、短路等,其中最常见的是短路故障。 (2) 元器件错误 元器件错误的原因有器件损坏或性能不符合要求,电解电容、二极管的极性接反或集成块装反等。 (3) 可靠性差 应用系统可靠性差的原因
29、很多,如内部和外部的干扰、电压纹波系数过大、器件负载过重等均会造成系统的可靠性差。另外,走线和布置的不合理也会造成系统可靠性差。 (4) 电源故障 电源故障包括:电压值不符合设计要求、电源功率不足、负载能力差、纹波太重等。 硬件调试办法:脱机调试是在加电前,先用万用表等工具,按图纸仔细核对线路是否正确,并对元器件的安装、型号、规格等进行仔细检查,特别焊接时有无走线之间相互短路等15。 经过软件和硬件调试成功后,所做实物演示如图15、16以及图17所示。图15 输入密码时实物演示图图16 密码输入正确时实物演示图图17 密码输入错误时实物演示图6. 结论以上为毕业期间所作的毕业论文-基于单片机的
30、电子密码锁设计,它经过多次修改和整理,可以满足设计的基本要求。输入密码时,如三次输入错误,则进行报警,在输入时,LCD显示为“*”,在修改密码时,则显示数字。次设计还具有防盗功能,如对密码控制系统进行破坏,有报警功能。通过对该课题的研究,加深对所学知识的理解,提高对课外知识的学习能力, 增强知识的应用能力,提高解决实际问题的能力,培养自我创新意识。积累实践经验,为以后的发展打下基础,也为以后我们自己在这方面的发展打下基础,并能够在这方面培养自己的兴趣。在设计中我们必须首先熟悉和掌握单片机的结构及工作原理,单片机的接口技术及相关外围芯片的外特性,控制方法。以单片机核心的电路设计的基本方法和技术了
31、解表关电路参数的计算方法。单片机不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。概括的讲:一块芯片就成了一台计算机。它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。同时,学习使用单片机了解计算机原理与结构的最佳选择。目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能IC卡,民用豪华轿车的安全保障系统,录像机、摄像机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机。更不用说自动控制领域的机器人、智能仪表、
32、医疗器械了。因此,单片机的学习、开发与应用将造就一批计算机应用与智能化控制的科学家、工程师。随着单片机的广泛应用,将大大促进各领域的技术更新,向自动化、小型化、智能化方向迈进。而对于我们来说,我们这代人的目标和任务是把这些高科技产品更升一个层次。毕业设计是培养学生综合运用所学知识,发现,提出,分析和解决实际问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程,随着科学技术发展的日新日异,单片机已经成为当今计算机应用中空前活跃的领域, 在生活中可以说得是无处不在。因此作为二十一世纪的大学来说掌握单片机的开发技术是十分重要的。通过这次毕业设计,无论从选题到定稿,从理论到实践都使我
33、学到了很多东西,它不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。同时也明白了理论与实践相结合的重要性,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。参考文献1 韩团军.基于单片机的电子密码锁设计J.国外电子测量技术,2010,(07) :58-61.2 康华光.电子技术基础(数字部分)第4版M.北京:高等教育出版社,2008.3 郭海英.基于单片机的电子安全密码锁的设计J.现代电子技术,2005,(13):95- 97.4 李建忠.单片机原理及应用M.西安:西安电子科
34、技大学出版社,2002.5 岳学军,陈姗,陆健强.基于单片机与串行通信的电子密码锁设计J.云南大学学报,2009,(05):2- 6.6 康华光.电子技术基础(模拟部分)第4版M.北京:高等教育出版社,2006.7 丁冬艳.基于单片机防盗电子密码锁设计J.硅谷,2010,(01):126-130.8 王金国.采用单片机的电子密码锁控制电路J.山东煤炭科技,2000,(03):30-33.9 董继成.一种新型安全的单片机密码锁J.电子技术,2004,(03) :58-60. 10 陈开文.基于AT89C51的安全密码锁应用设计J.科技资讯,2006,(04):27- 28.11 周 勇,付大鹏,
35、刘刚强.新型家用密码锁的研究J.机械,2002,29(增刊):128-129.12 周功明.基于AT89C51单片机的防盗自动报警电子密码锁系统的设计J.绵阳师范学院学报,2007,(05):112- 115.13 王宜怀.单片机原理及其嵌入式应用教程M.北京:北京希望电子出版社,2002. 14 周鑫,何建新,刘琥.基于单片机的电子密码锁控制电路设计J.成都信息工程学院学报,2009,(04):341-345.15 先锋工作室.单片机程序设计实例M.北京:清华大学出版社,2003.Design of Electric Password Lock Based on MCUDepartment
36、of Physics and Electronic Information Science and Electronic Information Science and Technology ProfessionalAbstract: As people living standard rise and security awareness strengthening, peoples safety requirements will higher and higher too. The safe standard of the traditional mechanical locks and
37、 the night lock is high cost and low use very inconvenient that cannot meet the need of peoples need. One that based on single-chip processor electronic locks arises at the historic moment .This article is based on the safety and economical practical point of view, uses the United States Atmel Corpo
38、ration STC89C52 microcontroller and Low power consumption CMOS type E PROM AT24C04 as a master chip and the data memory unit, it Combined peripheral keyboard input with LCD display and alarm and the lock circuit module. realize The function of electronic locks. It is under the premise of correct pas
39、sword can open the lock; Enter the wrong password can alarm; Password can change according to the needs of user. Function. This password locks design method is rational, simple, low cost, safe and practical characteristics, and it has strong practical application value.Keywords: Password lock;STC89C
40、52 MCU;Alarm;LCD Display;AT24C04致 谢四年的大学生活不知不觉中就要结束了,在这段难忘的生活中,有许多美好的回忆,在毕业论文设计之中,我的老师和我的同学都不吝的指导我,我需要感谢的人太多太多,首先要感谢我的学校,感谢在这四年中让我领悟到诚实做人,踏实做事,扎实做学问的深刻道理,让我从一个懵懂得高中生变成一个成熟的大学生,其次我要感谢的是我的导师杨利容老师。虽然杨利容老师平日里工作繁多,但在我做毕业设计的每个阶段,都给予我悉心的指导和帮助,关心我们每个阶段所做的工作,当然,还要感谢寝室的兄弟们在我完成论文的过程中给予我的帮助和鼓励,也是他们陪我度过了这四年的生活,感
41、谢能有这段美好的记忆。现在即将挥别我的学校、老师、同学,还有我四年的大学生活,虽然依依不舍,但是对未来的路,我充满了信心。最后,感谢在大学期间认识我和我认识的所有人,有你们的陪伴,才有我大学生活的绚丽多彩。附录电子密码锁源程序:#include#include#include#define uchar unsigned char#define uint unsigned int#define LCDIO P2#define delay4us() _nop_();_nop_();_nop_();_nop_();uchar buffer6=0; sbit sda=P33;/串行数据sbit scl
42、=P32; /串行时钟bit flag=0,aa; /用户蹲渊义定时溢出标志位uchar DSY_BUFFER16= ; /显示缓冲uchar Userpassword6=; /用户输入密码sbit rs=P20; sbit rd=P21;sbit lcden=P22;sbit led=P27;sbit LEEP=P37; /定义蜂鸣器端口uchar code table2=123456; /初始密码设置uchar code table=Your Password.; /标题字符串void delayms(uint z) / 延时子程序uint x,y;for(x=z;x0;x-)for(y=
43、110;y0;y-); void delay() /短延时,两个机器周期,做总线的延时用;void write_com(uchar com) / 向LCD写指令rs=0;rd=0;lcden=0;P1=com;delayms(3);lcden=1;delayms(3);lcden=0;void write_date(uchar date) /向LCD写数据rs=1;rd=0;lcden=0;P1=date;delayms(3);lcden=1;delayms(3);lcden=0;void Display_String(uchar *p,uchar com) /在LCD指定行显示字符串子程序
44、uchar i; write_com(com); for(i=0;i16;i+) write_date(pi);void init_lcd() / LCD 初始化lcden=0;write_com(0x38); /设置功能两行显示write_com(0x0c); /光标移动显示数字write_com(0x06); / 设置光标向右移write_com(0x01); /清屏write_com(0x80); /显示数据储存器地址 Display_String(table,0x80);Display_String( ,0xc0);void start() /起始位(scl保持“高”时,sda由“高”变为“低”为开始条件)sda=1;scl=1;delay4us();sda=0;delay4us();scl=0;void stop()