基于51单片机的电子密码锁的设计_毕业论文.doc

上传人:wj 文档编号:524402 上传时间:2023-04-29 格式:DOC 页数:29 大小:382.07KB
下载 相关 举报
基于51单片机的电子密码锁的设计_毕业论文.doc_第1页
第1页 / 共29页
基于51单片机的电子密码锁的设计_毕业论文.doc_第2页
第2页 / 共29页
基于51单片机的电子密码锁的设计_毕业论文.doc_第3页
第3页 / 共29页
基于51单片机的电子密码锁的设计_毕业论文.doc_第4页
第4页 / 共29页
基于51单片机的电子密码锁的设计_毕业论文.doc_第5页
第5页 / 共29页
基于51单片机的电子密码锁的设计_毕业论文.doc_第6页
第6页 / 共29页
基于51单片机的电子密码锁的设计_毕业论文.doc_第7页
第7页 / 共29页
基于51单片机的电子密码锁的设计_毕业论文.doc_第8页
第8页 / 共29页
基于51单片机的电子密码锁的设计_毕业论文.doc_第9页
第9页 / 共29页
基于51单片机的电子密码锁的设计_毕业论文.doc_第10页
第10页 / 共29页
基于51单片机的电子密码锁的设计_毕业论文.doc_第11页
第11页 / 共29页
基于51单片机的电子密码锁的设计_毕业论文.doc_第12页
第12页 / 共29页
基于51单片机的电子密码锁的设计_毕业论文.doc_第13页
第13页 / 共29页
基于51单片机的电子密码锁的设计_毕业论文.doc_第14页
第14页 / 共29页
基于51单片机的电子密码锁的设计_毕业论文.doc_第15页
第15页 / 共29页
基于51单片机的电子密码锁的设计_毕业论文.doc_第16页
第16页 / 共29页
基于51单片机的电子密码锁的设计_毕业论文.doc_第17页
第17页 / 共29页
基于51单片机的电子密码锁的设计_毕业论文.doc_第18页
第18页 / 共29页
基于51单片机的电子密码锁的设计_毕业论文.doc_第19页
第19页 / 共29页
基于51单片机的电子密码锁的设计_毕业论文.doc_第20页
第20页 / 共29页
亲,该文档总共29页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

基于51单片机的电子密码锁的设计_毕业论文.doc

《基于51单片机的电子密码锁的设计_毕业论文.doc》由会员分享,可在线阅读,更多相关《基于51单片机的电子密码锁的设计_毕业论文.doc(29页珍藏版)》请在冰点文库上搜索。

基于51单片机的电子密码锁的设计_毕业论文.doc

西安文理学院课程设计报告

目录

目录 I

1绪论 1

1.1引言 1

1.2电子密码锁的背景 1

1.3键盘式电子密码锁的特点 1

2系统设计 2

2.1系统总设计结构图 2

2.2开锁机构的设计 3

2.2.1主控芯片(AT89C51单片机)的简介 3

3系统硬件设计 5

3.1键盘设计 5

3.2系统电路设计 6

3.2.1键盘电路及连线图 6

3.2.2数码管显示电路及连线图 7

3.2.3开锁和报警电路及连线图(由LED灯和扬声器电路代替) 7

3.3整体电路图的绘制 7

4软件设计 9

4.1系统软件设计思路 9

4.2系统软件设计总流程图 10

5程序调试 11

5.1程序调试需要用到的软件和工具 11

5.2调试过程 11

6设计总结 11

致谢 12

参考文献 13

附录 14

I

1绪论

1.1引言

在这个信息和科技高速发展的时代,人们的生活水平越来越高,随之应运而生的人们的安全意识也越来越强,然而传统的机械锁由于设计和工艺简单,操作和携带不便,已经不能满足人们对于安全保证和生活便利的需求,于是电子密码锁本着它自身的保密性高、操作简单、灵活好用等特性逐渐进入人们的视野,并已被广大群众接纳和使用。

锁是用以关住某个确定的空间或范围或某种器物的,必须以钥匙或密码打开的器件。

锁,从古至今,发展到现在已有近千年的历史了,人们对它的结构、原理也随着时间的增加研究的近乎透彻,因此,开锁的方法和工具早已不仅仅局限于配套的钥匙,种类也层出不穷。

现代社会中,由于各种矛盾冲突十分剧烈,人们的思想道德观念,价值观念,文化修养水平等参差不齐,人们的思想境界良莠不齐,善良、正直的人们能够自觉规范自已的行为,不是自己的东西不会眷恋,没有钥匙就不会乱闯乱动。

但是,生活中同样还存在着一些道德观念较差的人,总有着不劳而获的“梦想”,他们在受到诱惑的时候,往往会想方设法利用各种手段撬门开锁,使广大居民防不胜防。

之所以出现这种情况,除了人们的道德观外,还有一个很重要的原因,就是传统锁具都存在致命的弱点,例如,锁芯采用常见的铜、铝、锌等材料,抵抗不了强力破坏;再者,锁具制作工艺,技术落后,无法阻止先进技术手段的开启。

  目前,市场上的锁具各种各样,形状千变万化,然而都是大同小异,技术原理简单,实际使用上却都不具备真正安全的防盗功能。

面对这一残酷的现状,锁具也进入了必须革新的时代。

1.2电子密码锁的背景

随着社会科技的进步,锁已发展到了密码锁、磁性锁、电子锁、激光锁、声控锁等等。

在传统钥匙的基础上,加了一组或多组密码,不同声音,不同磁场,不同声波,不同光束光波,不同图像。

(如指纹、眼底视网膜等)来控制锁的开启。

从而大大提高了锁的安全性,使不法之徒无从下手,人们也就能对自身财产安全有了更多的保障。

当今安全信息系统应用越来越广泛,特别在保护机密、维护隐私和财产保护方面起到重大作用,而基于电子密码锁的安全系统是其中的组成部分,因此研究它具有重大的现实意义[2]。

1.3键盘式电子密码锁的特点

电子锁可以在日常生活和现代办公中,住宅与办公室的安全防范、单位的文件档案、财务报表以及一些个人资料的保存等多种场合使用。

大大提高了主人物资的安全性,安全可以代替老式机械锁。

目前使用的密码锁种类繁多,各具特色。

从目前的技术水平和市场认可程度看,使用最为广泛的电子密码锁是键盘是电子密码锁,该产品主要应用于保险箱、保险柜和金库,还有一部分应用于保管箱和运钞车。

键盘式电子密码在键盘上输入,与打电话差不多,因而易于掌握,其突出优点是“密码”是记在被授权人脑子里的数字和字符,既准确又可靠,不会丢失(除了忘记),难以被窃(除非自己泄露)。

在输入密码的过程中,为了限制试探密码的企图,通常输入错误码若干次或若干时间内输入不正确,即“封锁”键盘,不再接受输入操作。

总之,尽管新式电子防盗锁层出不穷,但键盘式电子密码防盗锁仍然在自己的基础上发展,不仅在市场上居于主流地位,而且,还经常作为其他类型电子防盗锁的辅助输入手段[4]。

2系统设计

2.1系统总设计结构图

密码输入设备

数码管显示

单片机AT89C51

开锁机构

图2.1系统总设计结构图

本设计由主控芯片51单片机,键盘,LED显示屏和开锁电路组成。

单片负责控制整个系统的执行过程。

2.2开锁机构的设计

通过单片机送给开锁执行机构(本设计用LED灯和扬声器代替继电器打开电磁阀的开锁执行机构)实现开锁或警报的表示过程。

AT89C51单片机

开锁驱动电路

开锁/警报

图2.2密码锁开锁结构示意图

当用户输入的密码正确而且是在规定的时间及次数输入之内,单片机便输出开锁信号送到开锁驱动电路,达到开门的目的(此处用LED发光二极管亮一秒钟做为提示,同时发出“叮咚”声)。

2.2.1主控芯片(AT89C51单片机)的简介

AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—FalshProgrammableandErasableReadOnlyMemory)的低电压,高性能CMOS8位微处理器,俗称单片机。

单片机的可擦除只读存储器可以反复擦除100次。

该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容[1]。

由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器。

主要特性[3]:

·与MCS-51兼容

·4K字节可编程闪烁存储器

·寿命:

1000写/擦循环

·数据保留时间:

10年

·全静态工作:

0Hz-24MHz

·三级程序存储器锁定

·128×8位内部RAM

·32可编程I/O线

·两个16位定时器/计数器

·5个中断源

·可编程串行通道

·低功耗的闲置和掉电模式

·片内振荡器和时钟电路

管脚说明[6]:

VCC:

供电电压。

GND:

接地。

P0口:

P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。

当P1口的管脚第一次写1时,被定义为高阻输入。

P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。

P1口:

P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。

P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。

P2口:

P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。

并因此作为输入时,P2口的管脚被外部拉低,将输出电流。

这是由于内部上拉的缘故。

P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。

在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。

P3口:

P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。

当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。

作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。

P3口也可作为AT89C51的一些特殊功能口,如下表所示:

P3.0RXD(串行输入口)

P3.1TXD(串行输出口)

P3.2/INT0(外部中断0)

P3.3/INT1(外部中断1)

P3.4T0(记时器0外部输入)

P3.5T1(记时器1外部输入)

P3.6/WR(外部数据存储器写选通)

P3.7/RD(外部数据存储器读选通)

P3口同时为闪烁编程和编程校验接收一些控制信号。

RST:

复位输入。

当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。

ALE/PROG:

当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。

在FLASH编程期间,此引脚用于输入编程脉冲。

在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。

因此它可用作对外部输出的脉冲或用于定时目的。

然而要注意的是:

每当用作外部数据存储器时,将跳过一个ALE脉冲。

另外,该引脚被略微拉高。

如果微处理器在外部执行状态ALE禁止,置位无效。

/PSEN:

外部程序存储器的选通信号。

在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。

但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。

/EA/VPP:

当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。

注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。

XTAL1:

反向振荡放大器的输入及内部时钟工作电路的输入。

XTAL2:

来自反向振荡器的输出。

图2.3AT89C51芯片图

3系统硬件设计

3.1键盘设计

本实验采用4×4行列式矩阵键盘,用数字键输入密码,ENTER键确认;如果密码输入错误,用DEL键清除;密码输入完毕并且确认后,如果需要重新输入,先按Esc退出,然后重新输入;若用户想要自行更改密码,需要先正确输入密码并确认后,按ALT进行修改,再按ENTER进行确认,密码更改完毕。

4×4行列式键盘的按键功能分布如图3.1所示

9

8

7

ALT

Esc

6

5

4

DEL

3

1

2

ENTER

0

图3.1键盘按键功能分布图

3.2系统电路设计

本系统电路主芯片AT89C51(内含晶振和复位电路),外接上拉电阻,数码管显示器,扬声器、LED灯和外接电阻组成开锁电路。

3.2.1键盘电路及连线图

每一条行线和列线交叉处通过一个按键来连接,利用这种行列式矩阵结构只需要N条行线和M条列线就可组成N*M个按键。

在这种行列式矩阵键盘非键盘编码的单片机中,键盘处理程序先执行等待按键并有无键盘按下的程序段。

确认有键盘按下后,下一步执行识别哪一个键按下。

对照4*4键盘,首先识别键盘中有无键盘按下,然后判断键盘中哪一个键被按下,使通过将列线逐列置低电平后,检查行输入状态来实现的。

方法是:

依次给列线送低电平,然后检查行输入状态来实现。

如果全为1,则所按下键不在此列,如果不全为1则按下的键必在此列。

而且是与零电平线相交的交点上的键。

理想的按键信号是一个标准脉冲,但键的按下和释放都需要一个过程来实现,在这一过程中是处于高低电平之间一种不稳定状态,称为抖动。

抖动时间的长短,频率的高低与按键机械特征有关,一般在5到10ms之间。

这就有可能造成CPU对一次按键过程进行多次处理。

为了避免这种情况应采取措施消除抖动。

消抖常见有两种方法,硬件消抖:

如用滤波器,双稳态电路等。

另一种用软件来实现,即当发现有键按下时,间隔10ms以上时间,才能进行下一次查询,这样就让过了抖动过程,键的释放进行同样处理。

本设计为减少电路复杂程度,减少成本。

采用软件消抖的方法[5]。

图3.2键盘电路

如图左上角为AT89C51的P3口,与键盘电路相连,构成键盘输入电路。

3.2.2数码管显示电路及连线图

本实验采用共阴极数码管,即将所有发光二极管的阴极接到一起形成公共阴极(COM)的数码管。

共阴数码管在应用时应将公共极COM接到地线GND上,当某一字段发光二极管的阳极为高电平时,相应字段就点亮。

当某一字段的阳极为低电平时,相应字段就不亮。

图3.3数码管显示电路

为了增加单片机的驱动,数码管链接上拉电阻,然后再接AT89C51的P3口,输入任何密码时都以显示“8”表示输入的位数(如图表示输入3位密码)。

3.2.3开锁和报警电路及连线图(由LED灯和扬声器电路代替)

AT89C51单片机的P1.0口连接LED灯和一个外接电阻,P1.7口连接提示和警报的扬声器(如图3.4所示,LED灯亮表示密码正确,并且同时扬声器发出“叮咚”提示音)。

图3.4开锁电路

3.3整体电路图的绘制

用Prteus软件绘制完整的电路图。

密码正确并且确认之后的整体电路及显示情况,如图3.5。

图3.5密码正确系统电路及显示图

密码错误后的整体电路及显示情况,如图3.6。

图3.6密码错误系统电路及显示图

4软件设计

4.1系统软件设计思路

任何应用系统的正常工作和使用,除去需要完整的硬件设备外,还需要一套与之相对应的、设计合理的软件相配合。

随着电子信息的发展,微机应用早已普遍,许多原来的硬件工作都可以通过软件编程来代替,从而使一些复杂的硬件电路简单化。

电子密码锁工作的主要过程是通过键盘输入密码,同时LED显示密码输入情况,按下确认键后判断密码的正确性,做出开锁或报警处理。

当输入密码输入错误时,系统报警。

初始设定密码之后,如果按下密码的位数超过设置的密码位数时,若只超过一位,数码管以最后一位显示不全给出提示,若继续输入,系统扬声器报警。

(本设计中初始密码为12345五位,当按下的密码为6位时,还,未按下Enter确认,数码管就会以不全七段码显示给出警报,若继续按下,系统就会发出“滴滴滴”的警报声)。

按键按其功能分为两种,其中一种为功能键另一种为数字键。

输入密码后,直到所有密码输入完毕按下确认功能键之后,才完成密码输入过程。

进入密码的判断比较处理状态并给出相应的处理过程。

如图4.1为输入密码超出原始设定位数时的数码管的显示。

图4.1密码超出设定时数码显示图

4.2系统软件设计总流程图

开始

输入密码

密码输入完毕

密码比较

密码正确

密码错误

密码修改

灯闪烁,发出“嘀嘀嘀”声,并锁键盘3s

灯亮并发出“叮咚”

图4.1系统软件设计总流程图

5程序调试

把写好的C语言程序载入软件调试工具,检查软件是否有设法错误,再根据软件提示对本程序进行修改,直到没有错误再生成单片机能运行的机器码,再用Prteus工具把机器码导入单片机进行实际的程序调试,根据实际情况再对程序的不足加以修改,直到满足设计要求。

5.1程序调试需要用到的软件和工具

调试改程序用到Keil软件和Prteus工具。

5.2调试过程

打开KEILC51主程序,新建工程,新建文本框写入程序,保存,检查是否有语法错误,经反复检查无误后汇编,生成51单片机可执行的HEX文件。

然后用Prteus工具软件把HEX文件写入单片机。

6设计总结

经过这次课程设计的整个过程,我们深刻的体会到了实践是检验和巩固我们学习成果最有力的标准。

在一段理论学习之后,我们需要我们需要把自己的理论框架应用于实践,因为任何知识都来源于实践,又归于实践,只有通过实践我们才能更好地掌握所学到的知识。

在这次课程设计期间,我们每一个人通过这个过程的努力都有了不小的发展和收获。

在学习中,我们不再只是盲目的用笔练习、用脑记忆,而是用实际操作来验证和体验所学到的东西。

同样的,在精神上,我们学会了勇往直前,不因挫折而后退,面对问题学会了自己去寻找解决方法,而不是搁置不理或者一味求助于人。

通过实践,我们不仅巩固了课本知识,而且也获得了一些书本上无法教给我们的经验,对软硬件的设计和组合都有了前所未有的新的认识。

致谢

在本次设计中,陈老师和杨老师对于我们的选题讲解给予了悉心教导,为我们争取实验设备和场地,中途的评定和建议更是给了我们肯定和支持,让我们更有信心,使我们能顺利地完成此次设计,在此衷心的表示感谢。

另外,在完成课程设计的过程中,还得到众多朋友和同学的关心支持和帮助,尤其是同组组员周敏同学,始终能够跟我密切合作,共同解决问题,给了我莫大的帮助,在此,谨向老师同学和朋友致以衷心的感谢和崇高的敬意!

参考文献

[1]石文轩,宋薇.基于单片机MCS一51的智能密码锁设计[M].武汉工程职业技术学院学报,2004,(01)

[2]祖龙起,刘仁杰.一种新型可编程密码锁[J].大连轻工业学院学报,2002,(01)

[3]杨将新,李华军,刘到骏等.单片机程序设计及应用(从基础到实践)[J].电子工业出版社,2006

[4]叶启明.单片机制作的新型安全密码锁[J].家庭电子,2005,(10)

[5]张毅刚,彭喜元,姜守达,乔立岩.新编MCS—51单片机应用设计.哈尔滨工业大学出版社

[6]夏继强:

《单片机实验与实践教程》,北京航空航天大学出版社,2001

附录

软件程序

#include

unsignedcharps[]={1,2,3,4,5};

unsignedcharcodedispbit[]={0xfe,0xfd,0xfb,0xf7,

0xef,0xdf,0xbf,0x7f};

unsignedcharcodedispcode[]={0x3f,0x06,0x5b,0x4f,0x66,

0x6d,0x7d,0x07,0x7f,0x6f,

0x77,0x7c,0x39,0x5e,0x79,0x71,

0x00,0x40,0x73,0xff};

unsignedchardispbuf[8]={18,16,16,16,16,16,16,16};

unsignedchardispcount;

unsignedcharflashcount;

unsignedchartemp;

unsignedcharkey;

unsignedcharkeycount;

unsignedcharpslen=5;

unsignedchargetps[6];

bitkeyoverflag;

biterrorflag;

bitrightflag;

unsignedintsecond3;

unsignedintaa,bb;

unsignedintcc,dd,ee;

bitokflag;

bitalarmflag;

bithibitflag;

unsignedcharoka,okb;

voidmain(void)

{

unsignedchari,j;

TMOD=0x01;

TH0=(65536-500)/256;

TL0=(65536-500)%256;

TR0=1;

ET0=1;

EA=1;

while

(1)

{if(ee&&(key==15))

{ee=0;

dispbuf[0]=18;

dispbuf[1]=16;

dispbuf[2]=16;

dispbuf[3]=16;

dispbuf[4]=16 ;

dispbuf[5]=16 ;

dispbuf[6]=16 ;

dispbuf[7]=16 ;

keycount=0;

}

if(dd){P3_3=0;

P3_5=1 ;

P3_4=1 ;

while

(1)

{if(!

P3_5)

{dispbuf[0]=18;

dispbuf[1]=16;

dispbuf[2]=16;

dispbuf[3]=16;

dispbuf[4]=16 ;

dispbuf[5]=16 ;

dispbuf[6]=16 ;

dispbuf[7]=16 ;

keycount=0;

dd=0;

break;}

if(!

P3_4)

{ee=1;

dd=0;

dispbuf[0]=18;

dispbuf[1]=16;

dispbuf[2]=16;

dispbuf[3]=16;

dispbuf[4]=16 ;

dispbuf[5]=16 ;

dispbuf[6]=16 ;

dispbuf[7]=16 ;

keycount=0 ;

break;

}

}

}

P3=0xff;

P3_4=0;

temp=P3;

temp=temp&0x0f;

if(temp!

=0x0f)

{

for(i=10;i>0;i--)

for(j=248;j>0;j--);

temp=P3;

temp=temp&0x0f;

if(temp!

=0x0f)

{

temp=P3;

temp=temp&0x0f;

switch(temp)

{

case0x0e:

key=7;

break;

case0x0d:

key=8;

break;

case0x0b:

key=9;

break;

case0x07:

key=10;

break;

}

temp=P3;

P1_1=~P1_1;

if((key>=0)&&(key<10))

{

if(

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 农林牧渔 > 林学

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2