基于单片机控制电子密码锁设计.docx
- 文档编号:27018253
- 上传时间:2023-06-25
- 格式:DOCX
- 页数:44
- 大小:510.55KB
基于单片机控制电子密码锁设计.docx
《基于单片机控制电子密码锁设计.docx》由会员分享,可在线阅读,更多相关《基于单片机控制电子密码锁设计.docx(44页珍藏版)》请在冰豆网上搜索。
基于单片机控制电子密码锁设计
基于AT89c51单片机控制电子密码锁
第1章绪论……………………………………………………………………………………3
1.1课题的介绍………………………………………………………………………3
1.2本课题设计的研究现状…………………………………………………………3
第2章密码锁设计方案……………………………………………………………………4
第3章硬件设计…………………………………………………………………………6
3.1单片机简介……………………………………………………………………6
3.2内部时钟电路……………………………………………………………………10
3.3手动复位电路…………………………………………………………………10
3.4键盘接口电路方案的确定………………………………………………………11
3.5数码管数码显示电路方案的确定………………………………………………12
3.6CT7447介绍……………………………………………………………………14
3.774L138译码器的运用…………………………………………………………15
3.8密码存储电路方案的确定………………………………………………………17
3.9电路原理图……………………………………………………………………18
第4章电子密码锁软件设计…………………………………………………………19
4.1程序功能…………………………………………………………………………19
4.2程序框图…………………………………………………………………………19
4.3系统程序…………………………………………………………………………24
第5章软、硬件调试……………………………………………………………………31
5.1硬件调试…………………………………………………………………………31
5.2软件调试方法……………………………………………………………………31
第6章总结与体会………………………………………………………………………32
附录:
元器件清单…………………………………………………………………………33
参考文献……………………………………………………………………………33
基于单片机控制电子密码锁
摘要
根据有关资料介绍,电子密码锁的研究从上世纪30年代就开始了,在某些特殊场所就有所应用。
研究这种锁的初衷,是提高锁具的安全性,因为电子密码锁的密匙量极大,可以和机械锁配合,避免因钥匙被仿制而出现的问题。
在安全性极高的前提下,它的另一个特点——无需钥匙。
密码锁还有指纹锁、卡片锁、磁卡锁,生物锁等等。
但能谈得上实用一些或者大众化一些的还是按键式电子密码锁。
这是一种操作方式类似于按键电话机的电子锁,通过键盘上的数码按键一次输入依组密码,如果密码与内部已约定的密码相同,则输出一个信号,以驱动电磁铁或小马达将门打开,完成一个开锁过程。
本论文从电子密码锁系统的功能,硬件电路设计,软件设计分别论述这一系统。
通过使用单片机80C51作为控制核心,连接外部存储器93C46,实现密码断电保存,通过七段数码管显示,制作一种密码锁。
该锁具有开锁、解密、修改、保存密码、用户密码等基本的密码锁功能,还具有调电数码提示等功能。
关键词:
单片机;密码;密码锁
第1章绪论
1.1课题的介绍
密码锁是锁的一种,开启时用的是一系列的数字或符号。
密码锁的密码通常都只是排列而非真正的组合。
部分密码锁只使用一个转盘,把锁内的数个碟片或凸轮转动;亦有些密码锁是转动一组数个刻有数字的拨轮圈,直接带动锁内部的机械。
此单片机设计(密码锁)是一种能防止多次探密码的基于单片机的密码锁设计方案,根据9条总体的要求,给出了该单片机密码锁的硬件电路和软件程序,同时给出了单片机型号的选择,硬件设计,软件流程图,汇编语言源程序等内容。
密码锁应用非常广泛,如生活中的密码箱等;到取款机取款时插入卡后要输入个人设定的密码;银行里的密码柜,再比如核武器在发射时也有密码的等等。
很多行业的许多地方都需要密码锁,但普通密码锁的密码容易被多次试探而破译。
我们的设计给出了一种能防止多次试探密码的密码锁设计方法,利用单片机控制。
因为单片机不但具有体积小,成本低,控制灵活,便于产品化等特点,而且单片机具有新的发展,具体主要体现在单片机片内资源越丰富,用它构成的单片机控制系统的硬件开销就会越少,产品的体积和可靠性就会越高,无论是现代社会应用比较广泛的8位单片机还是16位、32位的单片机,不仅可以把CPU,RAM,ROM,定时器/计数器、I/O接口和中断系统等电路集成进去,而且片内新增了A/D和D/A转换器、监视定时器、DMA通道和总线接口等都为单片机开辟了新的应用天地,所以,使用单片机系统控制密码锁,体积小,成本低,控制灵活,便于产品化,可以防止多次试探,从而有效地克服了上述缺点。
1.2本设计课题的研究现状
随着电子技术的发展单片机功能的增强,出现了带微处理器的智能密码锁,它除了具有电子密码锁的功能外,还引入了智能化管理、专家分析系统等功能,从而使密码锁具有很高的安全性、可靠性。
目前发达国家已经大规模地应用智能门禁系统,可以通过多种更加安全,更加可靠的方法来实现大门的管理。
但电子密码锁在我国的应用还不广泛,主要出现在保险柜、密码箱、高级宾馆等场所,家居用的较少,究其原因,我认为有以下几点:
1、价格原因。
现在买一把普通的机械锁,价格在几块到几十块左右,而电子密码锁的价格较贵,一般在百元以上,进口的甚至要上千元,买一把这样的锁对很多家庭来说,是很难接受的。
2、厂商的推广力度不够。
电子密码锁属于较新的高科技产品,许多用户对其并不了解,更不用说拿它与传统的机械锁作比较。
而一般的商场也不会经营这种产品,用户即使想买也难以买到。
目前我国开发的电子密码锁的技术还比较落后,开发的密码锁大多采用分离电子元件或普通数字电路设计生产的,尽管与机械钥匙锁相比有许多优点,但智能化程度低,编码组合仍较少。
采用单片机制作的电子密码锁,就克服了以上的两大缺陷。
其主要特点为:
(1)保密性好。
由于采用6位密码,随机破码率很低,并且在密码可能泄露的情况下及时更改密码,避免因人员的更替等特殊情况而使锁的安全性下降。
(2)破解保护。
连续三次输入错误密码将锁定键盘一段时间。
(3)界面简洁,操作简单人性化,故障率低,密码输入操作简便。
第2章密码锁设计方案
2.1方案确定
密码锁有以下几种类型
1、多拨式
最简单的密码锁,常见于低安全设定的单车锁,使用多个拨圈。
每个圈的中间有凹位。
锁的中心的一条轴,上有数个凸出的齿,用来卡住拨圈。
当拨圈转到正确的密码组合,锁便可以打开。
这种锁是最容易打开的。
很多这类锁根本无需知道密码都能开启。
除非它的内部组件造得完美无瑕,否则只要把轴向外拉,其中一个齿便会比其他更为拉紧拨圈。
这时轮动被拉紧的拨圈,直至听到小小的「卡」声,表示这个齿已进入了正确的凹位。
重覆这步骤,很快便可以把锁打开。
2、单一转盘式
用在挂锁或匣万上的密码锁可以是只有一个转盘。
转盘推动背後数个平衡碟片或凸轮。
习惯上,开启这种锁时先把转盘顺时针转到第一个数字,然後反时针转到第二个数字,如此直至最後一个数字。
凸轮上通常有凹位,当转入正确的密码後,各位成一直线,锁便可以打开。
这种密码锁较为安全,但亦非全无缺点。
例如,部分密码挂锁可以拉紧锁头,然後转动转盘直至不能再动,这样便能把密码找出。
亦有些转盘密码锁的数字之间有特定关系,使到密码的组合可能性大为降低。
廉价的密码挂锁可以用特别的衬片打开,而无需使用密码。
使用在匣万上的密码锁结构较为严密。
有经验的锁匠可以一面旋转转盘,一面使用听筒小心聆听锁内凸轮的声音,判断可能的密码。
3、其他设计
有些门锁上有一个数字键盘,开启时按序键入一个数字系列。
这种锁是使用电子控制,常见于办工室内。
优点是只要告诉员工密码便可,无须复制钥匙。
它由单片机系统、矩阵键盘、LED显示器等组成的电子密码锁。
具有开锁、超次锁定、解密、修改、保存密码、用户密码基本的密码锁的功能,还具有调电存储、声光提示等功能。
克服了普通锁需要随身携带钥匙且易丢失、保密性差的缺点,在宾馆、办公大楼、仓库、保险柜和家庭普遍适用。
本设计中采用的是电子密码锁,基本功能如下:
1、电源开始后,显示器显示“000000”;
2、按“#”,清除显示器为“000000”;
3、更改密码时,先键入新号码再按“*”,即可建立新号码;
4、键入号码,再按“D”开门键,若号码与密码相符,则门会打开,否则显示器会清除为“000000”;
5、键盘设计要求
1
2
3
A
4
5
6
B
7
8
9
C
*
0
#
D
2.2设计框图
基于单片机的电子密码锁主要由单片机最小应用系统电路、键盘接口电路、数码显示电路、密码存储电路、开锁控制电路组成。
各电路有其特有功能,以下将分别论述,系统功能框图如下:
第3章硬件设计
3.1单片机简介
一、单片机的基础知识
目前世界单片机的生产厂商很多,如Intel,Motorola,Philips,NEC,ADM,Zilog等公司,其主流产品有十几个系列,几百个品
种。
尽管其个具特色,其称各异,但作为集CPU,RAM,ROM(或EPROM),I/O接口,定时器/计数器,中断系统为一体的单片机,其原理大同小异。
现以Intel公司的系列产品为列,说明个系列之间的区别。
Intel公司从其生产单片机开始,发展到现在,大体上可以分为3大系列:
Mcs—48系列,Mcs—51系列,Mcs—96系列。
二、单片机的结构与发展
单片机出现的历史并不长,它的产生与发展和微处理器的产生与发展大体相同。
因此,单片机的发展阶段可以分为4个阶段。
第1阶段,(1974-1976):
单片机初级阶段。
此阶段的单片机采用双片的形式而且功能比较简单。
此时推出的8位单片机F8,只包含了8位CPU,64BRAM,一个定时/计数器和两个并行口的3851芯片才能组成一台完整的计算机。
第2阶段(1976-1978):
低性能单片机阶段。
此阶段的单片机已经成为一台完整的计算机,但内部不够丰富。
以Intel公司生产的MCS-48为代表,片内集成了8位CPU,8位定时/计数器,RAM和ROM等,但无串行口,中断系统也比较简单,片内RAM和ROM容量较小且寻址范围不大于4KB.它把单片机推向市场,促进单片机的变革。
第3阶段(1978-1982):
高性能单片机阶段。
此阶段的单片机品种多,内部资源丰富,功能强。
以Intel公司生产的MCS-51系列为代表,片内集成了8位CPU,16位定时/计数器,串行I/O口,多级中断系统,RAM和ROM等,片内RAM和ROM容量加大,寻址范围可达64KB。
第4阶段(1982年-现在):
8位单片机的巩固发展及16位,32位单片机推出阶段。
其最大特点是增加了内部资料,实时处理能力更强。
三、单片机的发展趋势
1.单片机的发展趋势是:
向高性能化,大容量,微型化,外围电路内装化等方面发展。
(1)采用双CPU结构,以提高处理速度和处理能力。
(2)增加数据总线宽度,以提高数据处理速度和处理能力。
(3)采用流水结构。
指令以队列形式出现在CPU中,从而具有很快的运算速度。
(4)串行总线结构。
2.存储器的发展
(1)增加存储容量。
片内RAM可达256B。
片内存储器存储容量的增大有利于外围扩展电路的简化,从而提高产品的稳定性,降低产品的成本。
(2)片内EPROM开始到EPROM平方化。
(3)程序保密化。
3.片内I/O口改进
一般单片机都有较多的并行口,以满足外围设备,芯片扩展的需要,并配有串行口,以满足多机通信功能的需要.并配有串行口,以满足多机通信功能的需要
1)提高并行口的驱动能力.
2)增加I/O口的逻辑控制功能
3)特殊的串行接口功能,为单片机构成网络系统提供更便于利用的条件
四、单片机的特点
1、小巧灵活,成本低,研发周期短,易于产品,能利用它方便的组装成各种智能式测控设备及各种智能仪表,很容易满足仪器设备即智能化又微型化的需求
2、可靠性高,使用的温度范围宽
3、易扩展控制能力强
4、指令系统相对简单,较易掌握且指令中有较丰富的逻辑控制功能指令,能较方便地直接操作外部I/O设备
五、单片机的应用
目前单片机的应用已深入到国民经济的各个领域,对各个行业的技术,改造和产品的更新换代起到了重要的推动作用,由于单片机的特点决定了单片机的应用领域,:
智能器仪表,机电一体化,实时控制,民用电子品等方面
单片机在智能仪器仪表的应用。
单片机广泛地应用于实验室,交通运输工具,计量等各种仪器仪表中,使仪器仪表智能化,提高它们的测量速度和测量精度,加强控制功能,简化仪器仪表的硬件结构,便于使用,维修和改进.单片机在该领域的应用,不使传统的仪器仪表发生根本性的变革,也给传统的仪器仪表行业的改造带来了曙光和美好的前景.
机电一体化是机械工业发展的重要方面.机电一体化产品是集机械技术,微电子技术,自动化技术和计算机技术于一体,具有智能化特征的机电产品.能发挥它的体积小,可靠性高,控制能力强,现场安装灵活方便特点,大大提升了机器的功能,提高了机器的精度,自动化和智能化水平.
1.单片机在实时控制领域的应用
单片机也可广泛地应用于各种实时控制系统中,测量和控制工业上过程控制中的各种物理参数,如转速,位移,压力,,流量,等,将测量技术,自动控制技术和单片机技术相结合,能充分发挥数据处理和实时控制功能,使系统工作于最佳状态,提高系统的生产效率和产品的质量
2.在军工领域的应用
利用可靠性高,适用的温度范围广,能适应各种恶劣的环境的特点,单片机可广泛应用于导弹控制,航天飞机巡航系统等领域
3.单片机在分布式多机统中应用
分布式多机系统具有功能强,可靠性高的特点
4.在民用电子产品中的应用
单片机在民用电子产品中的作用,能明显提高产品的性能价格比,提高产品在市场上的竞争力。
单片机广泛地用于各种仪器仪表,使仪器仪表智能化,并可以提高测量的自动化程度和精度,简化仪器仪表的硬件结构,提高其性能价格比
单片机控制系统能够取代以前利用复杂电子线路或数字电路构成的控制系统,可以软件控制来实现,并能够实现智能化,现在单片机控制范畴无所不在,例如通信产品、家用电器、智能仪器仪表、过程控制和专用控制装置等等,单片机的应用领域越来越广泛。
诚然,单片机的应用意义远不限于它的应用范畴或由此带来的经济效益,更重要的是它已从根本上改变了传统的控制方法和设计思想。
是控制技术的一次革命,是一座重要的里程碑,本次设计采用的是8051单片机。
六、单片机芯片的特性及说明
1.主要特性:
它与MCS-51兼容,有4KB字节可编程闪烁存储器,寿命:
1000写/擦循环,数据保留时间为10年。
全静态工作时在0Hz-24Hz之间,内部RAM是128b*8位,有32可编程的I/O线,两个16位定时器/计数器,5个中断源
2.管脚说明:
如下图
VCC:
供电电压。
GND:
接地。
P0口:
P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。
当P1口的管脚第一次写1时,被定义为高阻输入。
P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。
在FIASH编程时,P0口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。
P1口:
P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。
P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。
在FLASH编程和校验时,P1口作为第八位地址接收。
P2口:
P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。
并因此作为输入时,P2口的管脚被外部拉低,将输出电流。
这是由于内部上拉的缘故。
P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。
在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。
P2口在FLASH编程和校验时接收高八位地址信号和控制信号。
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的输出可在SFR8EH地址上置0。
此时,ALE只有在执行MOVX,MOVC指令是ALE才起作用。
另外,该引脚被略微拉高。
如果微处理器在外部执行状态ALE禁止,置位无效。
/PSEN:
外部程序存储器的选通信号。
在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。
但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。
/EA/VPP:
当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。
注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。
在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。
XTAL1:
反向振荡放大器的输入及内部时钟工作电路的输入。
XTAL2:
来自反向振荡器的输出。
3.2内部时钟电路
内部方式的时钟电路如下图所示。
利用MCS-51内部的高增益反相放大器,在XTAL1和XTAL2引脚上外接定时元件,内部振荡。
定时元件一般采用石英晶体和电容组成的并联振回路。
晶体可以在1.2~12MHZ之间任选,电容可以在5~30pF之间选择,电容C1和C2的大小可起频率微调的作用,电容大小要和晶体的容性负载阻搞相匹配,否则不易起振。
3.3手动复位电路
按键手动复位有电平方式和脉冲方式两种。
按键电平复位是通过使复位端经电阻与VCC接通而实现的。
按键脉动复位则是利用RC微分电路产生的正脉冲来实现的。
复位 RST
在振荡器运行时,有两个机器周期(24个振荡周期)以上的高电平出现在此引脚时,将使单片机复位,只要这个脚保持高电平,51芯片便循环复位。
复位后P0-P3口均置1引脚表现为高电平,程序计数器和特殊功能寄存器SFR全部清零。
当复位脚由高电平变为低电平时,芯片为ROM的0000H处开始运行程序。
本系统采用的是手动复位电路,。
手动复位电路图如下:
3.4键盘接口电路方案的确定
键盘是单片机系统中最常用的人机联系的一种设备,它由若干个按键组成,用户通过键盘向CPU入数据或命令以实现简单的人机通信。
对键盘的识别可分为两类:
一类是由专门的硬件电路来识别(如2376、74C922),它使用起来方便,但需要价格昂贵的芯片,单片机系统中一般不采用;另一类靠软件来识别,它结构简单,价格便宜,应用灵活。
本设计中查询的方法识别键,优点是电路简洁,节省硬件,抗干扰能力强,应用灵活,缺点是占用较多的CPU时间资源。
非编码键盘可以分为两种结构形式:
独立式键盘和行列式键盘。
本次设计中采用的是行列式键盘,可节省I/O口线。
其工作原理是:
行线P1.0~P1.3是输入线,CPU通过其电平的高低来判别键盘是否被按下。
依次使列线P1.4~P1.7中的一根输出为低电平,则只有与之对应的键按下时,才能使行线为低电平。
键盘接口电路图如下:
3.5数码管数码显示电路方案的确定
七段数码显示器如图:
显示电路主要由6个共阳型七段数码管(SM4105)、6只型PNP型三极管、一片74LS1383-8线译码器以及一个7447七段译码器组成。
电路结构简单,性能稳定,使用方便。
七段显示数码管(动态)工作原理:
逐个地循环点亮各位显示器,也就是说在任一时刻只有1位显示器在显示。
LED动态显示的优点是用较少的端口,可以扩展多位LED显示器。
缺点是过多的占用CPU的时间。
除了LED动态显示,还有一种是LED静态显示。
LED静态显示的优点是不占用CPU的时间,缺点是占用过多的输出端口。
采用动态显示的数码管为了使人看到所有显示器都在显示,就得加快循环点亮各位显示器的速度(提高扫描频率),利用人眼的视觉残留效应,给人感觉到与全部显示器持续点亮的效果一样。
一般地,每秒循环扫描不低于50次。
数码管显示电路的工作原理:
数码管显示时,P0.0--P0.3根据程序输出高电平或低电平,送到7447译码器的四个输入端,经过7447译码后由7个输出端输出,输出信号经过限流电阻(防止数码管因电流过高而损坏)送至数码管的阴极。
同时,单片机的P0.4--P0.6根据要求输出高电平或低电平,送到74LS138的三个输入端,经译码后由输出端输出,此时,74LS138的输出端只有一位为“0”,使其中的一只三极管导通,引入电源,驱动与其对应的数码管,数码管工作。
数码管的各发光二极管根据对应的高电平或低电平发光或不发光。
每只数码管依次循环,就完成了发光电路的设计,本设计采用动态数码显示器。
它的内部二极管的连接方式(共阳极)如下图所示:
LED数码显示器有两种连接方法:
①共阳极接法:
把二极管的阳极连接在一起构成公共阳极,使用时公共阳极接+5V,每个发光二极管的阴极通过电阻与输入端相连。
当阴极端输入低电平时,七段发光二极管就导通点亮,而输入高电平时则不点亮。
②共阴极接法:
把二极管的阴极连接在一起构成公共阴极,使用时公共阴极接地,每个发光二极管的阳极通过电阻与输入端相连。
当阳极端输入高电平时,七段发光二极管就导通点亮,而输入低电平时则不点亮。
本设计中采用的是0.5时共阳极LED数码显示器,用来显示当前正在播放的曲目号。
发光二极管的导通电压为2V左右,电流为5~10mA,加在发光二极管与电阻之间的电压为5V,由此可算出阻值。
电阻值=(两段电压-发光二极管电压)/电流
R1~R6为限流电阻,避免烧坏发光二极管。
得出电阻范围:
300Ω 设计中取330Ω 本设计采用的是共阳极LED显示器。 数码管显示电路原理图如下: 3.6CT7447介绍 适用于七段字形共阴极显示管的译码器集成电路有CT7448,CT74LS48等型号,适用于共阳极七段管的译码器有CT7447,CT74LS47等型号。 7
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 单片机 控制 电子 密码锁 设计