
本科生毕业设计 (论文)
学 院:电子与电气工程学院
专 业: 自 动 化
学 生:
指导教师:
完成日期 2014 年 5 月
南阳理工学院本科生毕业设计(论文)
电子密码锁设计与实现
Design and implementation of Electric Password Lock
总 计: 29页
表 格: 2个
插 图: 21幅
南 阳 理 工 学 院 本 科 毕 业 设 计(论文)
电子密码锁设计与实现
Design and implementation of Electric Password Lock
学 院: 电子与电气工程学院
专 业: 自 动 化
学 生 姓 名:
学 号:
指 导 教 师(职称):
评 阅 教 师:
完 成 日 期:
南阳理工学院
Nanyang Institute of Technology
电子密码锁设计与实现
[摘 要] 随着人们生活水平的提高,如何实现家庭防盗这一问题也变得尤为突出。在科学技术不断发展的今天,电子密码防盗锁作为防盗卫士的作用显得日趋重要。系统由ATS51与 AT24C02作为主控芯片与数据存储器单元,结合外围的矩阵键盘输入、LCD显示、报警、开锁等电路模块。它能完成以下功能:正确输入密码前提下,开锁;错误输入密码情况下,报警;密码可以根据用户需要更改。用C语言编写的主控芯片控制程序与EEPROM AT24C02读写程序相结合,并用Keil软件进行编译,设计了一款可以多次更改密码,具有报警功能的电子密码控制系统。
[关键词] 电子密码锁;报警;LCD显示;矩阵键盘
Design and implementation of Electric Password Lock
Automation Specialty JIANG Zhong-yang
Abstract:As people's living standards improve, the question how to achieve home security has become particularly prominent. In science and technology is developing continuously, electronic code lock as a security guard's role is increasingly important. This article from the economical point of view, the system by the ATS51 he master chip and the data memory unit, combined with the external keyboard, LCD display, alarm, unlock and other circuit modules. It performs the following functions: enter the password correctly under the premise of unlocking; wrong password case the alarm; password can be changed according to user needs. Master in C language control program and EEPROM AT24C02 chip to read and write process are combined and compiled with the Keil software, designed a number you can change the password, the password with an electronic alarm control system.
Key Words:Electric Password lock; Alarm; LCD Display; Matrix keyboard
目 录
1 引言
在当今社会,安全防盗已成为社会问题,而锁自古以来就是防盗的重要工具,目前国内大部分人使用的还是传统的机械锁,然而,眼下假冒伪劣的机械锁互开率非常之高,此外,即使是一把质量过关的机械锁,通过急开锁,甚至可以在不损坏锁的前提下将锁打开。机械锁的这些弊端为一种新型的锁——电子密码锁,提供了很大的发展空间。
从目前的技术水平和市场认可程度看,使用最为广泛的是键盘式电子密码锁,该产品主要应用于保险箱、保险柜和取款机,由于人们对安全的重视和科技的发展,许多电子智能锁(指纹识别、IC卡辨认)已在国内外相继面世。但是这些产品的特点是针对特定的指纹和有效卡,只能适用于保密要求的箱、柜、门等。而且指纹识识别器在公共场所使用存在容易机械损坏,IC卡还存在容易丢失、损坏等缺点,再加上其成本较高,一定程度上了这类产品的普及和推广。鉴于目前的技术水平与市场的接受程度,键盘式电子密码锁是这类电子防盗产品的主流。在科学技术不断发展的今天,电子密码防盗锁作为防盗卫士的作用也日趋重要。电子密码锁是集计算机技术、电子技术、数字密码技术为一体的机电一体化高科技产品,具有安全性高,使用方便等优点。
电子密码锁是一种通过密码输入来控制电路或是芯片工作,从而控制机械开关的闭合,完成开锁、闭锁任务的电子产品。它的种类很多,有简易的电路产品,也有基于芯片的性价比较高的产品。现在应用较广的电子密码锁是以芯片为核心,通过编程来实现的。其性能和安全性已大大超过了机械锁。
本次毕业论文主要分为两大模块,一是硬件系统电路部分,另一个是用C语言编写的软件程序部分,基本能完成电子密码锁的开锁、修改密码、密码错误报警等主要功能,成本低,可靠性高,具有很好的市场应用价值。
1.1 课题背景和意义
20世纪30年代以前锁不论其形状如何,都是把守门户的铁将军。随着科学的发展、社会的进步,锁不仅要具有高度的安全性而且要方便携带。这就暴露出传统式机械锁的一些弊病,例如:携带不便和安全性不高。因此,具有高安全性和不需携带的电子类密码锁就出现了。这种锁可以避免携带时钥匙易丢失,或者锁很容易被损坏而使物件被盗。鉴于以上,电子密码锁被很多的国家和地区作为重点发展对象。电子密码锁不仅因其以上特点而广泛运用还因其可以随意改密而倍受青睐。用户可以根据自己意愿来修改密码,这也是电子密码锁区别于传统锁的一个显著特点。电子锁的类型很多,例如:生物式锁,电子密码锁等。但较大部分购买者在选购时,会选择后者。
1.2 国内外发展现状
20世纪末至今以来,随着电子事业的发展,集成电路的出现,致使电子密码锁的安全性不断提高,体积不断缩小,但是成本较高,只应用于安全要求较高的场合。由于其运用时需要供电,因此其应用具有一定的局限行,难以大规模实用,以至于电子密码锁的发展没有飞跃性的进展。
放眼观看电子密码锁的发展情景,西方发达国家在这方面处于顶尖地位,种类不仅齐全,而且被广泛的应用在智能防盗系统中,可以选择多种加密方式,更安全、更可靠。而国内的这方面研究并不尽如人意,技术落后、其成本很高。至于国内关于电子锁的研究,主要在于键盘式的,其他形式的电子锁虽然也有涉及但是成就不高。目前国内电子锁行业的发展前景非常可观。国内自行研发的电子锁有不少引进世界先进的科学技术,市场前景非常乐观。希望通过国内电子锁类产品的不断发展,使我国的在这方面的研究跃居前列。
1.3 电子密码锁的特点
随着电子密码锁的发展,不管是集成电路型的,还是芯片型的,其特点大体相同。基于芯片的密码锁不仅价格低廉,而且其安全性能也好不逊色。因此,以芯片为主要组成部分的电子密码锁得到了广泛的应用。其种类繁多,构造简单,可通过软件编程来实现其加密功能。所以其大致有如下特点:
(1)安全性能高:用户可自定多种密码,比机械式锁安全。
(2)可以修改密码:用户可以根据自己意愿随时修改密码,这样不用担心密码被盗用或者因为人员调用致使锁的保密性降低。
(3)易学易懂:电子密码锁的操作只需用户按照操作步骤操作即可实现解密和加密功能。
(4)可实现自我安全保护:如果用户连续错误输入超过规定误输范围,则会自动锁屏。
(5)紧急救济功能:当遇到突发时间如火灾等,用户只需要特定的动作,即可用手机械式开锁,使人员迅速逃生。
(6)防偷盗、破碎功能:当密码锁处于正常工作状态时,有人恶意损毁时会自动鸣笛警告。
(7)具有火灾报警功能:当室内失火并达到规定范围时,会自动报警,并开起密码门锁。
(8)具有内外锁定功能:外部锁定;当用户外出时内部强制关闭,以防外人入侵。
2 系统整体方案设计
2.1 设计方案
本设计采用ATS51单片机为主控芯片,结合外围电路矩阵键盘、液晶显示器LCD1602和密码存储AT24C02等部分组成。其中矩阵键盘用于输入数字密码和进行各种功能的实现。由用户通过连接单片机的矩阵键盘输入密码,后经过单片机对用户输入的密码与自己保存的密码进行对比,从而判断密码是否正确,然后控制引脚的高低电平传到开锁电路或者报警电路控制开锁还是报警,组成的电子密码锁系统,系统整体设计框图如图1所示。
图1 系统整体设计框图
2.2 主控部分的选择
选用单片机作为系统的核心部件,实现控制与处理的功能。单片机具有资源丰富、速度快、编程容易等优点。利用单片机内部的随机存储器(RAM)和只读存储器(ROM)及其引脚资源,外接液晶显示(LCD),键盘输入等实现数据的处理传输和显示功能,基本上能实现设计指标。因此综合考虑,本系统采用采用以单片机为核心的控制方案。
3 硬件系统设计
3.1 主控芯片ATS51
ATS51是一个低功耗,高性能CMOS 8位单片机,片内含4k Bytes ISP(In-system programmable)的可反复擦写1000次的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术制造,兼容标准MCS-51指令系统及80C51引脚结构,芯片内集成了通用8位处理器和ISP Flash存储单元,功能强大的微型计算机的ATS51可为许多嵌入式控制应用系统提供高性价比的解决方案。ATS51具有如下特点:40个引脚,4k Bytes Flash片内程序存储器,128 bytes的随机存取数据存储器(RAM),32个外部双向输入/输出(I/O)口,5个中断优先级2层中断嵌套中断,2个16位可编程定时计数器,2个全双工串行通信口,看门狗(WDT)电路,片内时钟振荡器。其引脚图如图2所示。
图2 ATS51引脚分布图
ATS51具体介绍如下:
① 主电源引脚(2根)
VCC(Pin40):电源输入,接+5V电源
GND(Pin20):接地线
②外接晶振引脚(2根)
XTAL1(Pin19):片内振荡电路的输入端
XTAL2(Pin20):片内振荡电路的输出端
③控制引脚(4根)
RST/VPP(Pin9):复位引脚,引脚上出现2个机器周期的高电平将使单片机复位。
ALE/PROG(Pin30):地址锁存允许信号
PSEN(Pin29):外部存储器读选通信号
EA/VPP(Pin31):程序存储器的内外部选通,接低电平从外部程序存储器读指令,如果接高电平则从内部程序存储器读指令。
④可编程输入/输出引脚(32根)
ATS51单片机有4组8位的可编程I/O口,分别位P0、P1、P2、P3口,每个口有8位(8根引脚),共32根。
P0口(Pin39~Pin32):8位双向I/O口线,名称为P0.0~P0.7
P1口(Pin1~Pin8):8位准双向I/O口线,名称为P1.0~P1.7
P2口(Pin21~Pin28):8位准双向I/O口线,名称为P2.0~P2.7
P3口(Pin10~Pin17):8位准双向I/O口线,名称为P3.0~P3.7
3.2 液晶显示模块电路设计
(1)LCD1602字符型模块的性能
①与其他的相比要轻
②所占面积小;
③耗电量小;
④可显示内容多
⑤可以显示多种代码;
⑥可满足使用者的显示需求;
⑦可与微处理器连接使用;
⑧其工作温度范围广;
⑨省点,抗干扰性能强,连续工作量强;
LCD1602实物图如图3所示。
图3 LCD1602正反面图
(2)LCD1602各引脚说明如下表1所示。
表1 LCD1602各引脚说明
| 编号 | 符号 | 引脚说明 | 编号 | 符号 | 引脚说明 |
| 1 | VCC | 电源地 | 9 | D2 | 数据 |
| 2 | VDD | 电源正极 | 10 | D3 | 数据 |
| 3 | VL | 液晶显示偏低 | 11 | D4 | 数据 |
| 4 | RS | 数据/命令选择 | 12 | D5 | 数据 |
| 5 | R/W | 读/写的选择 | 13 | D6 | 数据 |
| 6 | E | 使能信号 | 14 | D7 | 数据 |
| 7 | D0 | 数据 | 15 | A | 背光源正极 |
| 8 | D1 | 数据 | 16 | K | 背光源负极 |
(4)光敏电阻
为了延长液晶的使用寿命,使其能自动因光线的强弱来调节液晶亮暗,本电路中采用的光敏电阻是GL5528。当光强时RG1的电阻减小液晶变亮,当光弱时RG1的电阻变大液晶变暗。电路如图4所示。
图4 GL5528在电路中的应用
3.3 存储模块电路设计
(1)24C02描述
24C02是可以进行存储的一个器件,其不但可以进行读操作,也可以进行写操作。是一个可以进行读写操作的存储芯片。
(2)24C02特点
工作时的电压范围广泛;低电压技术:1mA典型工作电流,1μA典型工作电流;存储器组织结构256 X 8(2K bits);2线串行接口,完全兼容I²C总线;I2C时钟频率为1MHz(5V),400kHz(1.8V,2.5V,2.7V);施密特触发输入噪声抑制;硬件数据写保护;可按字节写;页写:8字节页;可按字节,随机和序列读;自动递增地址;ESD保护大于2.5KV;擦可写寿命100万次,数据保持时间100年;8-pin DIP和8-pin SOP封装。
(3)24C02引脚功能如下表2所示。
表2 24C02各引脚功能说明
| 引脚 | 引脚功能 |
| A0-A2 | 地址输入端 |
| SDA | 串行地址和数据输入输出端,SDA是双向数据传输引脚,漏极开路,需外接上拉电阻到VCC |
| SCL | 串行时钟输入,SCL同步数据传输,上升沿数据写入,下降沿数据读出。 |
| WP | 写保护,WP引脚提供硬件数据保护,WP接地时,允许数据正常读写操作,当WP接VCC时,写保护,只读。 |
图5 24C02连接图
如上图所示SCL接P3.4口,SDA接P3.5口;单片机是通过数据输入/输出端进行数据传输的,WP接地此时允许单片机进行读写操作,A0-A2接地说明此时的地址为000H。在使用这部分时,我是先让单片机读取按键编码,然后单片机再从24C02中读取存储密码,与按键输入的密码进行比对,如果一致则开锁,不同则报错。
3.4 矩阵键盘电路的设计
为何选用图3的接法呢?假设一个端口接一个按键,那么51单片机最多也就只能接32个按键而已。如果一项工程需要33个按键或者更多,仅以一个端口接一个按键的形式恐怕工程量将会非常的浩大。如果以矩阵的形式进行设计,那么33个按键也就仅需要在16个按键上多加几条线而已所需也不过几个端口而已,其在一个单片机上就能轻易的实现。而且所用键盘数越多其优势也就越突出。由此可见,在本次设计中采用下图这种接法是合理的。
在本次设计中我采用的是4×4的矩阵键盘。其列线接的是P1.0-P1.3口,行线接的是P1.4-P1.5口其连接方式如图6所示。
图6 键盘输入原理图
3.5 报警电路设计
报警部分由陶瓷压电发声装置及外围电路组成,加电后不发声,当有键按下时,“叮”声,每按一下,发声一次,密码正确时,不发声直接开锁,当密码输入错误时,单片机的P2.1引脚为低电平,三极管T3导喇叭发出噪鸣声报警。如图7所示。
图7 报警电路原理图
3.6 开锁模块的设计
通过单片机开锁执行机构,电路驱动电磁锁吸合,从而达到开锁的目的。其原理如图8所示。
图8 密码锁开锁机构示意图
当用户输入的密码正确时,单片机便输出开门信号,送到开锁驱动电路,然后驱动电磁锁,达到开门的目的。其实际电路如图9所示。
电路由驱动和开锁两级组成。由D1、R12、Q1组成驱动电路,其中Q1可以选择普通的小功率三极管如8050、9018都可以满足要求。D1是开锁指示灯;由D2、C5组成开锁。其中D2、C5是为了消除电磁锁可能产生的反向高电压以及可能产生的电磁干扰。电磁锁的选用要视情况而定,但是吸合力要足够且有一定的余量。
在设计中,暂时用发光二极管代替电磁锁,发光管亮,表示开锁;灭,表示没有开锁。原理图如9所示。
图9 开锁电路原理图
4 软件程序设计
4.1主程序设计
本系统软件设计由主程序、初始化程序、LCD显示程序、键盘扫描程序、键功能程序、密码设置程序、EEPROM读写程序和延时程序等组成。
如图10所示为主程序流程图,开始接上电源,程序进行初始化设置,然后在键盘上输入密码,此系统进行键盘扫描,密码正确,开锁成功,密码错误3次出错报警,选择是否修改密码,若要修改密码,先输入旧密码密码,密码正确后设置新密码,错误时报警,需要两次确认新密码,确认后,密码修改成功,否则结束最终返回。然后启动程序,进行保护,再次在键盘上输入密码,系统进行扫描,如果和之前一样,则执行相同程序,如不是,则执行另一种程序。主程序流程图如图10所示。
图10主程序流程图
4.2 按键软件设计
如图11为按键功能流程图,在按键当中,有与输入、开锁、清除、设置、确认的程序相对应的按键,并按顺序与输入的数相比较,当输入正确时,进入密码程序,错误时进行清除,输入两次新密码正确时,可进行重新设置密码,最后确认程序。按键功能流程图如图11所示。
图11 按键功能流程图
4.3 密码设置软件设计
如图12为密码设置流程图,开始按下设置键,输入旧密码,如果错误累计三次,进行报警程序。如输入正确,可以修改密码,确认后再次输入新密码,如两次输入一样,则更改成功。如果两次输入的新密码不一样,则修改密码失败,
重新返回设置新密码。密码设置流程图如图12所示。
图12 密码设置流程图
4.4 开锁软件设计
如图13为开锁流程图,开始时按开锁键,输入密码,如果输入正确,则开锁成功。如果输入错误累计达到三次,则执行报警程序。开锁流程图如图13所示。
图13开锁流程图
5 系统仿真与调试
5.1 程序调试
经过以上的理论分析,在进行硬件系统组装、软件编程,然后就进入调试阶段。从下面的运行情况来看,软件编译成功。
从图14可以看出编译链接成功,其效果如图14所示。
图14 程序编译成功
经过上步编译成功之后,就可进行下步生成二进制文件如图15所示
图15 生成HEX文件
5.2 仿真调试
程序检测无误后,进行仿真测试,将各个模块连接,仿真测试结果如图16所示。
图16 Proteus仿真图
5.3 调试结果及分析
程序导入单片机成功后,要输入初始化密码,通过按键输入6位初始化密码,我输入131420,就会显示“Init password”、当我再输入开锁密码008888时,就会出现图17所示的现象。
图17 密码锁打开
开锁的密码为008888,我现在先后输入111111按#号键会出现图18显现。
图18 报警时的效果图
接着上面的步骤再输入123456和7456时后出现图19所示的现象。
图19 密码输入超过3次
当两次输入008888并按下重置键时输入新密码111111,屏幕上会出现input again,如图20所示。
图20 显示再此输入新密码的提示
接着上面的步骤,再次输入111111并按下D号键会出现图21所示现象。
图21 重置密码成功
注意此时密码并不是111111,而是01111111(要在1分钟之后,2分钟之前完成重置功能,初始化程序时,过一分钟,进行重置成功的话,其密码前两位就变为01,而后四位是用户自己设定的,故密码变为011111。)
附录A
附录B
#include #define uchar unsigned char sbit e=P2^7; sbit rw=P2^6; sbit rs=P2^5; void relay(); void wcode(uchar c); void wdata(uchar w); int kbscan(); void mima(int w,int k); void zf(int w); void wait(); void init(); void zfc(int x,uchar idata *s); void kai(); void cuo(); void she(); void xiu(); void zisuo(); uchar idata shu[15]={0x45,0x6e,0x74,0x65,0x72,0x20,0x50,0x61,0x73,0x73,0x77,0x6f,0x,0x3a,0x00}; uchar idata ture[6]={0x72,0x69,0x67,0x68,0x74,0x00}; uchar idata error[6]={0x65,0x72,0x72,0x6f,0x72,0x00}; uchar idata b[6]={1,2,3,4,5,6}; uchar idata new[13]={0x6e,0x65,0x77,0x20,0x50,0x61,0x73,0x73,0x77,0x6f,0x,0x3a,0x00}; uchar idata new1[6]={0x61,0x67,0x61,0x69,0x6e,0x00}; uchar a[6]; uchar idata zs[5]={0x57,0x41,0x49,0x54,0x00}; uchar idata open[7]={0x4f,0x50,0x45,0x4e,0x45,0x44,0x00}; uchar idata close[6]={0x43,0x4c,0x4f,0x53,0x45,0x00}; main() { while(1) { int z=0; int k=0; int c=0; int w=0; int s=0; int i=0; int f=0; while(z==0) { a[5]=20; s=0; init(); while(k!=15) k=kbscan(); wcode(0x0f); zfc(0,shu); while(c<3&&f==0) { while(k!=12) { k=kbscan(); if(k>=0&&k<=9|k==10) { if(k>=0&&k<=9) { if(w<6) { mima(w,k); w++; } } if(k==10) { if(w>0) w--; wcode(0xc0|w); wdata(0x20); relay(); } } if(k==11) {w=0;f=1;k=12;} } for(i=0;i<6;i++) { if(a[i]==b[i]); else s=1; } k=20; if(s==0) {kai();c=0;z=1;break;} if(s==1&&f==0) {c++;cuo();w=0;s=0;} } f=0; if(c==3) {zisuo();c=0;} } while(k!=13) { k=kbscan(); if(k==14) if(z==1) she(); } zfc(0,close); relay(); z=0; } } void zisuo() { int i=0; zfc(0,zs); for(i=0;i<100;i++) relay(); } void she() { int k=20; int w=0; int s=0; int i=0; a[5]=10; init(); wcode(0x0f); zfc(0,shu); while(k!=12) { k=kbscan(); if(k>=0&&k<=9|k==10) { if(k>=0&&k<=9) { if(w<6) { mima(w,k); w++; } } if(k==10) { if(w>0) w--; wcode(0xc0|w); wdata(0x20); relay(); } } } for(i=0;i<6;i++) { if(a[i]==b[i]); else s=1; } if(s==0) { xiu(); } if(s==1) { init(); wcode(0x0f); zfc(0,error); s=0; for(i=0;i<5;i++) relay(); zfc(0,open); } } void xiu() { int k=20; int w=0; int i=0; int s=0; int o=0; uchar c[6]; zfc(0,new); do k=kbscan(); while(k==12); while(k!=12) { k=kbscan(); if(k>=0&&k<=9|k==10) { if(k>=0&&k<=9) { if(w<6) { mima(w,k); w++; } } if(k==10) { if(w>0) w--; wcode(0xc0|w); wdata(0x20); relay(); } } } if(w==6) { for(i=0;i<6;i++) c[i]=a[i]; w=0; a[5]=10; zfc(0,new1); do k=kbscan(); while(k==12); while(k!=12) { k=kbscan(); if(k>=0&&k<=9|k==10) { if(k>=0&&k<=9) { if(w<6) { mima(w,k); w++; } } if(k==10) { if(w>0) w--; wcode(0xc0|w); wdata(0x20); relay(); } } } for(i=0;i<6;i++) { if(a[i]==c[i]); else s=1; } if(s==0) { for(i=0;i<6;i++) b[i]=a[i]; zfc(0,ture); for(i=0;i<5;i++) relay(); zfc(0,open); o=1; } if(s==1) { zfc(0,error); s=0; for(i=0;i<10;i++) relay(); zfc(0,open); o=1; } } if(o==0) { zfc(0,error); s=0; for(i=0;i<10;i++) relay(); zfc(0,open); } } void kai() { int i=0; init(); wcode(0x0f); zfc(0,ture); for(i=0;i<5;i++) relay(); zfc(0,open); } void cuo() { int i=0; init(); wcode(0x0f); zfc(0,error); for(i=0;i<3;i++) relay(); init(); wcode(0x0f); zfc(0,shu); } void mima(int w,int k) { a[w]=k; zf(w); } void zf(int w) { wcode(w|0xc0); wdata(0x2a); relay(); } void zfc(int x,uchar idata *s) { int i=0; init(); wcode(0x0f); wcode(0x80|x); while(s[i]!=0x00) { wdata(s[i]); i++; } } int kbscan() { uchar a; int i,j; i=0; P1=0x0f; if(P1!=0x0f) { wait(); if(P1!=0x0f) { a=0xef; while(a!=0xff) { P1=a; if(P1!=a) { switch(P1&0x0f) { case 0x0e: j=0;break; case 0x0d: j=4;break; case 0x0b: j=8;break; case 0x07: j=12;break; default: break; } return(i+j); } i++; a=(a<<1)|0x01; } } } return(20); } void init() { wcode(0x38); wcode(0x06); wcode(0x01); } void wait() { int i=200; while(i) i--; } void relay() { int i=50000; while(i) i--; } void wcode(uchar c) { e=0;rw=0;rs=0; P3=c;e=1; wait(); e=0; } void wdata(uchar w) { e=0;rw=0;rs=1; P3=w;e=1; wait(); e=0; } 结束语 在没有做毕业设计前觉得毕业设计只是对所学知识的单纯总结,但是通过这次做毕业设计发现自己的看法有点太片面。毕业设计不仅是对前面所学知识的一种检验,而且也是对自己能力的一种提高。通过这次毕业设计使我明白了自己原来知识还比较欠缺。自己要学习的东西还太多,以前老是觉得自己什么东西都会,什么东西都懂,有点眼高手低。通过这次课程设计,我才明白学习是一个长期积累的过程,在以后的工作、生活中都应该不断的学习,努力提高自己知识和综合素质。 在这次毕业设计中也使我们的同学关系更进一步了,同学之间互相帮助,有什么不懂的大家在一起商量,听听不同的看法对我们更好的理解知识。在多人做项目的时候,队员的交流是非常重要的,是很关键的部分。这次的毕业设计也让我看到了团队的力量,我认为我们的工作是一个团队的工作,团队需要个人,个人也离不开团队,必须发扬团结协作的精神。刚开始的时候,大家就分配好了各自的任务,大家有的绘制原理图,进行仿真实验,有的积极查询相关资料,并且经常聚在一起讨论各个方案的可行性。在毕业设计中只有一个人知道原理是远远不够的,必须让每个人都知道,否则一个人的错误,就有可能导致整个工作失败。团结协作是我们成功的一项非常重要的保证。 在设计过程中,通过查阅大量有关资料,与同学交流经验和自学,并向老师请教等方式,使自己学到了不少知识,也经历了不少艰辛,但收获同样巨大。在整个设计中我懂得了许多东西,也培养了我工作的能力,树立了对自己工作能力的信心,相信会对今后的学习工作生活有非常重要的影响。而且大大提高了动手的能力,使我充分体会到了在创造过程中探索的艰难和成功时的喜悦。虽然这个设计做的也不太好,但是在设计过程中所学到的东西是这次毕业设计的最大收获和财富,使我终身受益。 对我而言,知识上的收获重要,精神上的丰收更加可喜。让我知道了学无止境的道理。我们每一个人永远不能满足于现有的成就,人生就像在爬山,一座山峰的后面还有更高的山峰在等着你。挫折是一份财富,经历是一份拥有。 参考文献 [1] 叶启明.单片机制作的新型安全密码锁[J].家庭电子.2000 [2] 胡乔木. 中国大百科全书.中国大百科全书出版社.1993 [3] 李明喜.新型电子密码锁的设计[J].机电产品开发与创新.2004 [4] 董继成.一种新型安全的单片机密码锁[J].电子技术.2004 [5] 王宽仁.可靠安全的智能密码锁[J].电子技术应用.2001 [6] 谭浩强,张基温,唐永炎.C语言程序设计教程[M].高等教育出版社.2003 [7] 胡汉才.单片机原理及其接口技术(第2版)[M].清华大学出版社.2004 [8] 江志红. 51单片机技术与应用系统开发[M].清华大学出版社.2008 [9] 童诗白,华成英. 模拟电子技术基础[M] 高等教育出版社.2000 [10] 赵文博,刘文涛.单片机程序设计[M]. 人民邮电出版社.2005 [11] 王金国.采用单片机的电子密码锁控制电路[J].山东煤炭科技 .2000 [12] ATS51 DATA SHEEP Philips SemiSonduStors [J]. 2009 [13] ATS51 DATA SHEEP Philips SemiSonduStors [J]. 2009 [14] Voice of Electronic Password-lock Design, China Control Net ,2008 [15] Design Serial Infrared PhysiSalL ayer SpeSifiSation Ostober 15.1998 致谢 经过几个月的忙碌,本次毕业设计已经完成,在此我要感谢帮过我的每一个人。首先,我要感谢的是我的指导老师杜瑞娟。杜老师平日工作繁忙,但在我做毕业设计的每个阶段,都给与了我悉心的指导和帮助。在杜老师的大力关怀和支持下,我的设计得以完善和实现。不仅实现了现有的功能,而且在此基础上加上了省点电路,使我的设计耳目一新。其次,我要感谢每个帮助过我的同学,没有你们的帮助我是不可能顺利完成这次设计的。 非常感谢我的评审老师,对我的设计及不足做出的细心的指导 虽然设计过程是令人心酸艰辛的,但设计的成功确实令人兴奋自豪。在此我再次向和那些给与支持与帮助的同学,表示由衷的感谢,谢谢!
