基于AT89c51单片机控制电子密码锁1.doc

上传人:仙人指路1688 文档编号:3938144 上传时间:2023-03-28 格式:DOC 页数:32 大小:1.24MB
返回 下载 相关 举报
基于AT89c51单片机控制电子密码锁1.doc_第1页
第1页 / 共32页
基于AT89c51单片机控制电子密码锁1.doc_第2页
第2页 / 共32页
基于AT89c51单片机控制电子密码锁1.doc_第3页
第3页 / 共32页
基于AT89c51单片机控制电子密码锁1.doc_第4页
第4页 / 共32页
基于AT89c51单片机控制电子密码锁1.doc_第5页
第5页 / 共32页
点击查看更多>>
资源描述

《基于AT89c51单片机控制电子密码锁1.doc》由会员分享,可在线阅读,更多相关《基于AT89c51单片机控制电子密码锁1.doc(32页珍藏版)》请在三一办公上搜索。

1、基于AT89c51单片机控制电子密码锁目录第1章 绪论31.1 课题的介绍31.2 本课题设计的研究现状3第2章 密码锁设计方案4第3章 硬件设计 63.1单片机简介 63.2内部时钟电路 10 3.3 手动复位电路 10 3.4 键盘接口电路方案的确定113.5数码管数码显示电路方案的确定 123.6 CT7447介绍 143.7 74L138译码器的运用 153.8密码存储电路方案的确定 173.9 电路原理图 18第4章 电子密码锁软件设计 194.1程序功能 194.2程序框图 194.3系统程序 24第5章 软、硬件调试 315.1硬件调试 315.2软件调试方法 31 第6章 总结

2、与体会 32附录:元器件清单33参考文献33基于单片机控制电子密码锁摘 要 根据有关资料介绍,电子密码锁的研究从上世纪30年代就开始了,在某些特殊场所就有所应用。研究这种锁的初衷,是提高锁具的安全性,因为电子密码锁的密匙量极大,可以和机械锁配合,避免因钥匙被仿制而出现的问题。在安全性极高的前提下,它的另一个特点无需钥匙。密码锁还有指纹锁、卡片锁、磁卡锁,生物锁等等 。但能谈得上实用一些或者大众化一些的还是按键式电子密码锁。这是一种操作方式类似于按键电话机的电子锁,通过键盘上的数码按键一次输入依组密码,如果密码与内部已约定的密码相同,则输出一个信号,以驱动电磁铁或小马达将门打开,完成一个开锁过程

3、。本论文从电子密码锁系统的功能,硬件电路设计,软件设计分别论述这一系统。通过使用单片机80C51作为控制核心,连接外部存储器93C46,实现密码断电保存,通过七段数码管显示,制作一种密码锁。该锁具有开锁、解密、修改、保存密码、用户密码等基本的密码锁功能,还具有调电数码提示等功能。关键词:单片机;密码;密码锁第1章 绪论1. 1课题的介绍密码锁是锁的一种,开启时用的是一系列的数字或符号。密码锁的密码通常都只是排列而非真正的组合。部分密码锁只使用一个转盘,把锁内的数个碟片或凸轮转动;亦有些密码锁是转动一组数个刻有数字的拨轮圈,直接带动锁内部的机械。此单片机设计(密码锁)是一种能防止多次探密码的基于

4、单片机的密码锁设计方案,根据9条总体的要求,给出了该单片机密码锁的硬件电路和软件程序,同时给出了单片机型号的选择,硬件设计,软件流程图,汇编语言源程序等内容。密码锁应用非常广泛,如生活中的密码箱等;到取款机取款时插入卡后要输入个人设定的密码;银行里的密码柜,再比如核武器在发射时也有密码的等等。很多行业的许多地方都需要密码锁,但普通密码锁的密码容易被多次试探而破译。我们的设计给出了一种能防止多次试探密码的密码锁设计方法,利用单片机控制。因为单片机不但具有体积小,成本低,控制灵活,便于产品化等特点,而且单片机具有新的发展,具体主要体现在单片机片内资源越丰富,用它构成的单片机控制系统的硬件开销就会越

5、少,产品的体积和可靠性就会越高,无论是现代社会应用比较广泛的8位单片机还是16位、32位的单片机,不仅可以把CPU,RAM,ROM,定时器/计数器、I/O接口和中断系统等电路集成进去,而且片内新增了A/D和D/A转换器、监视定时器、DMA通道和总线接口等都为单片机开辟了新的应用天地,所以,使用单片机系统控制密码锁,体积小,成本低,控制灵活,便于产品化,可以防止多次试探,从而有效地克服了上述缺点。1.2本设计课题的研究现状随着电子技术的发展单片机功能的增强,出现了带微处理器的智能密码锁,它除了具有电子密码锁的功能外,还引入了智能化管理、专家分析系统等功能,从而使密码锁具有很高的安全性、可靠性。目

6、前发达国家已经大规模地应用智能门禁系统,可以通过多种更加安全,更加可靠的方法来实现大门的管理。但电子密码锁在我国的应用还不广泛,主要出现在保险柜、密码箱、高级宾馆等场所,家居用的较少,究其原因,我认为有以下几点:1、价格原因。现在买一把普通的机械锁,价格在几块到几十块左右,而电子密码锁的价格较贵,一般在百元以上,进口的甚至要上千元,买一把这样的锁对很多家庭来说,是很难接受的。2、厂商的推广力度不够。电子密码锁属于较新的高科技产品,许多用户对其并不了解,更不用说拿它与传统的机械锁作比较。而一般的商场也不会经营这种产品,用户即使想买也难以买到。目前我国开发的电子密码锁的技术还比较落后,开发的密码锁

7、大多采用分离电子元件或普通数字电路设计生产的,尽管与机械钥匙锁相比有许多优点,但智能化程度低,编码组合仍较少。采用单片机制作的电子密码锁,就克服了以上的两大缺陷。其主要特点为:(1)保密性好。由于采用6位密码,随机破码率很低,并且在密码可能泄露的情况下及时更改密码,避免因人员的更替等特殊情况而使锁的安全性下降。(2)破解保护。连续三次输入错误密码将锁定键盘一段时间。(3)界面简洁,操作简单人性化,故障率低,密码输入操作简便。第2章 密码锁设计方案2.1方案确定密码锁有以下几种类型 1、多拨式最简单的密码锁,常见于低安全设定的单车锁,使用多个拨圈。每个圈的中间有凹位。锁的中心的一条轴,上有数个凸

8、出的齿,用来卡住拨圈。当拨圈转到正确的密码组合,锁便可以打开。这种锁是最容易打开的。很多这类锁根本无需知道密码都能开启。除非它的内部组件造得完美无瑕,否则只要把轴向外拉,其中一个齿便会比其他更为拉紧拨圈。这时轮动被拉紧的拨圈,直至听到小小的卡声,表示这个齿已进入了正确的凹位。重覆这步骤,很快便可以把锁打开。2、单一转盘式用在挂锁或匣万上的密码锁可以是只有一个转盘。转盘推动背後数个平衡碟片或凸轮。习惯上,开启这种锁时先把转盘顺时针转到第一个数字,然後反时针转到第二个数字,如此直至最後一个数字。凸轮上通常有凹位,当转入正确的密码後,各位成一直线,锁便可以打开。这种密码锁较为安全,但亦非全无缺点。例

9、如,部分密码挂锁可以拉紧锁头,然後转动转盘直至不能再动,这样便能把密码找出。亦有些转盘密码锁的数字之间有特定关系,使到密码的组合可能性大为降低。廉价的密码挂锁可以用特别的衬片打开,而无需使用密码。使用在匣万上的密码锁结构较为严密。有经验的锁匠可以一面旋转转盘,一面使用听筒小心聆听锁内凸轮的声音,判断可能的密码。3、其他设计有些门锁上有一个数字键盘,开启时按序键入一个数字系列。这种锁是使用电子控制,常见于办工室内。优点是只要告诉员工密码便可,无须复制钥匙。它由单片机系统、矩阵键盘、LED 显示器等组成的电子密 码锁。具有开锁、超次锁定、解密、修改、保存密码、用户密码基本的密码锁 的功能,还具有调

10、电存储、声光提示等功能。克服了普通锁需要随身携带钥匙且易丢失、 保密性差的缺点,在宾馆、办公大楼、仓库、保险柜和家庭普遍适用。 本设计中采用的是电子密码锁,基本功能如下:1、电源开始后,显示器显示“000000”;2、按“#”,清除显示器为“000000”;3、更改密码时,先键入新号码再按“*”,即可建立新号码;4、键入号码,再按“D”开门键,若号码与密码相符,则门会打开,否则显示器会清 除为“000000”;5、键盘设计要求123A456B789C*0#D2.2设计框图基于单片机的电子密码锁主要由单片机最小应用系统电路、键盘接口电路、数码显示电路、密码存储电路、开锁控制电路组成。各电路有其特

11、有功能,以下将分别论述,系统功能框图如下:时钟电路复位电路单 片 机显示电路密码输入电路开 锁 电 路第3章 硬件设计3.1单片机简介一、单片机的基础知识 目前世界单片机的生产厂商很多,如Intel,Motorola,Philips,NEC,ADM,Zilog等公司,其主流产品有十几个系列,几百个品种。尽管其个具特色,其称各异,但作为集CPU,RAM,ROM(或EPROM),I/O接口,定时器/计数器,中断系统为一体的单片机,其原理大同小异。现以Intel公司的系列产品为列,说明个系列之间的区别。Intel公司从其生产单片机开始,发展到现在,大体上可以分为3大系列:Mcs48系列,Mcs51系

12、列,Mcs96系列。二、单片机的结构与发展单片机出现的历史并不长,它的产生与发展和微处理器的产生与发展大体相同。因此,单片机的发展阶段可以分为4个阶段。 第1阶段,(1974-1976):单片机初级阶段。此阶段的单片机采用双片的形式而且功能比较简单。此时推出的8位单片机F8,只包含了8位CPU,64B RAM,一个定时/计数器和两个并行口的3851芯片才能组成一台完整的计算机。第2阶段(1976-1978):低性能单片机阶段。此阶段的单片机已经成为一台完整的计算机,但内部不够丰富。以Intel公司生产的MCS-48为代表,片内集成了8位CPU,8位定时/计数器,RAM和ROM等,但无串行口,中

13、断系统也比较简单,片内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单片机的发展趋势是:向高性能化,大容量,微型化,外围电路内装化等方

14、面发展。(1)采用双CPU结构,以提高处理速度和处理能力。(2)增加数据总线宽度,以提高数据处理速度和处理能力。(3)采用流水结构。指令以队列形式出现在CPU中,从而具有很快的运算速度。(4)串行总线结构。2.存储器的发展(1)增加存储容量。片内RAM可达256B。片内存储器存储容量的增大有利于外围扩展电路的简化,从而提高产品的稳定性,降低产品的成本。(2)片内EPROM开始到EPROM平方化。(3)程序保密化。3.片内I/O口改进一般单片机都有较多的并行口,以满足外围设备,芯片扩展的需要,并配有串行口,以满足多机通信功能的需要.并配有串行口,以满足多机通信功能的需要1)提高并行口的驱动能力.

15、2)增加I/O口的逻辑控制功能3)特殊的串行接口功能,为单片机构成网络系统提供更便于利用的条件四、单片机的特点1、小巧灵活,成本低,研发周期短,易于产品,能利用它方便的组装成各种智能式测控设备及各种智能仪表,很容易满足仪器设备即智能化又微型化的需求2、可靠性高,使用的温度范围宽3、易扩展控制能力强4、指令系统相对简单,较易掌握且指令中有较丰富的逻辑控制功能指令,能较方便地直接操作外部I/O设备五、单片机的应用目前单片机的应用已深入到国民经济的各个领域,对各个行业的技术,改造和产品的更新换代起到了重要的推动作用,由于单片机的特点决定了单片机的应用领域,:智能器仪表,机电一体化,实时控制,民用电子

16、品等方面单片机在智能仪器仪表的应用。单片机广泛地应用于实验室,交通运输工具,计量等各种仪器仪表中,使仪器仪表智能化,提高它们的测量速度和测量精度,加强控制功能,简化仪器仪表的硬件结构,便于使用,维修和改进.单片机在该领域的应用,不使传统的仪器仪表发生根本性的变革,也给传统的仪器仪表行业的改造带来了曙光和美好的前景.机电一体化是机械工业发展的重要方面.机电一体化产品是集机械技术,微电子技术,自动化技术和计算机技术于一体,具有智能化特征的机电产品.能发挥它的体积小,可靠性高,控制能力强,现场安装灵活方便特点,大大提升了机器的功能,提高了机器的精度,自动化和智能化水平.1. 单片机在实时控制领域的应

17、用单片机也可广泛地应用于各种实时控制系统中,测量和控制工业上过程控制中的各种物理参数,如转速,位移,压力,流量,等,将测量技术,自动控制技术和单片机技术相结合,能充分发挥数据处理和实时控制功能,使系统工作于最佳状态,提高系统的生产效率和产品的质量2. 在军工领域的应用利用可靠性高,适用的温度范围广,能适应各种恶劣的环境的特点,单片机可广泛应用于导弹控制,航天飞机巡航系统等领域3. 单片机在分布式多机统中应用分布式多机系统具有功能强,可靠性高的特点4. 在民用电子产品中的应用单片机在民用电子产品中的作用,能明显提高产品的性能价格比,提高产品在市场上的竞争力。单片机广泛地用于各种仪器仪表,使仪器仪

18、表智能化,并可以提高测量的自动化程度和精度,简化仪器仪表的硬件结构,提高其性能价格比单片机控制系统能够取代以前利用复杂电子线路或数字电路构成的控制系统,可以软件控制来实现,并能够实现智能化,现在单片机控制范畴无所不在,例如通信产品、家用电器、智能仪器仪表、过程控制和专用控制装置等等,单片机的应用领域越来越广泛。诚然,单片机的应用意义远不限于它的应用范畴或由此带来的经济效益,更重要的是它已从根本上改变了传统的控制方法和设计思想。是控制技术的一次革命,是一座重要的里程碑,本次设计采用的是8051单片机。六、单片机芯片的特性及说明1主要特性:它与MCS-51 兼容,有4KB字节可编程闪烁存储器,寿命

19、: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门电

20、流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。 P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容

21、。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。P3口也可作为AT89C51的一些特殊功能口,如下表所示:口管脚 备选功能P3.0 RXD(串行输入口)P3.1 TXD(串行输出口)P3.2 /INT0(外部中断0) P3.3 /INT1(外部中断1)P3.4 T0(记时器0外部输入)P3.5 T1(记时器1外部输入)P3.6 /WR(外部数据存储器写选通)P3.7

22、 /RD(外部数据存储器读选通)P3口同时为闪烁编程和编程校验接收一些控制信号。RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略

23、微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。/PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。/EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2:来自反向振荡器的输出。3.2内部时钟电路内

24、部方式的时钟电路如下图所示。利用MCS-51内部的高增益反相放大器,在XTAL1和XTAL2引脚上外接定时元件,内部振荡。定时元件一般采用石英晶体和电容组成的并联振回路。晶体可以在1.212MHZ之间任选,电容可以在530pF之间选择,电容C1和C2的大小可起频率微调的作用,电容大小要和晶体的容性负载阻搞相匹配,否则不易起振。 3.3手动复位电路按键手动复位有电平方式和脉冲方式两种。按键电平复位是通过使复位端经电阻与VCC接通而实现的。按键脉动复位则是利用RC微分电路产生的正脉冲来实现的。复位RST在振荡器运行时,有两个机器周期(24个振荡周期)以上的高电平出现在此引脚时,将使单片机复位,只要

25、这个脚保持高电平,51芯片便循环复位。复位后P0P3口均置1引脚表现为高电平,程序计数器和特殊功能寄存器SFR全部清零。当复位脚由高电平变为低电平时,芯片为ROM的0000H处开始运行程序。本系统采用的是手动复位电路,。手动复位电路图如下:3.4键盘接口电路方案的确定键盘是单片机系统中最常用的人机联系的一种设备,它由若干个按键组成,用户通过键盘向 CPU 入数据或命令以实现简单的人机通信。 对键盘的识别可分为两类:一类是由专门的硬件电路来识别(如 2376、74C922),它使用起来方便,但需要价格昂贵的芯片,单片机系统中一般不采用;另一类靠软件来识别 ,它结构简单,价格便宜,应用灵活。本设计

26、中查询的方法识别键,优点是电路简洁,节省硬件,抗干扰能力强,应用灵活,缺点是占用较多的 CPU 时间资源。非编码键盘可以分为两种结构形式:独立式键盘和行列式键盘。本次设计中采用的是行列式键盘,可节省 I/O 口线。 其工作原理是:行线 P1.0P1.3 是输入线,CPU 通过其电平的高低来判别键盘是否被按下。依次使列线 P1.4P1.7 中的一根输出为低电平,则只有与之对应的键 按下时,才能使行线为低电平。键盘接口电路图如下:3.5数码管数码显示电路方案的确定七段数码显示器如图:显示电路主要由 6 个共阳型七段数码管(SM4105)、6 只型PNP型三极管、一片74LS138 3-8线译码器以

27、及一个7447 七段译码器组成。电路结构简单,性能稳定,使用方便。七段显示数码管(动态)工作原理:逐个地循环点亮各位显示器,也就是说在任一时刻只有 1 位显示器在显示 。LED动态显示的优点是用较少的端口,可以扩展多位LED显示器。缺点是过多的占用CPU的时间。除了LED动态显示,还有一种是LED静态显示。LED静态显示的优点是不占用CPU的时间,缺点是占用过多的输出端口。采用动态显示的数码管为了使人看到所有显示器都在显示,就得加快循环点亮各位显示器的速度(提高扫描频率) ,利用人眼的视觉残留效应,给人感觉到与全部显示器持续点亮的效果一样。一般地,每秒循环扫描不低于 50 次。数码管显示电路的

28、工作原理:数码管显示时,P0.0-P0.3 根据程序输出高电平或低电平,送到 7447 译码器的四个输入端,经过7447译码后由 7 个输出端输出,输出信号经过限流电阻(防止数码管因电流过高而损坏)送至数码管的阴极。同时,单片机的 P0.4-P0.6 根据要求输出高电平或低电平,送到 74LS138 的三个输入端,经译码后由输出端输出,此时,74LS138 的输出端只有一位为“0”,使其中的一只三极管导通,引入电源,驱动与其对应的数码管,数码管工作。数码管的各发光二极管根据对应的高电平或低电平发光或不发光。每只数码管依次循环,就完成了发光电路的设计,本设计采用动态数码显示器。它的内部二极管的连

29、接方式(共阳极)如下图所示:LED数码显示器有两种连接方法:共阳极接法:把二极管的阳极连接在一起构成公共阳极,使用时公共阳极接+5V,每个发光二极管的阴极通过电阻与输入端相连。当阴极端输入低电平时,七段发光二极管就导通点亮,而输入高电平时则不点亮。共阴极接法:把二极管的阴极连接在一起构成公共阴极,使用时公共阴极接地,每个发光二极管的阳极通过电阻与输入端相连。当阳极端输入高电平时,七段发光二极管就导通点亮,而输入低电平时则不点亮。 本设计中采用的是0.5时共阳极LED数码显示器,用来显示当前正在播放的曲目号。发光二极管的导通电压为2V左右,电流为510mA,加在发光二极管与电阻之间的电压为5V,

30、由此可算出阻值。电阻值 = (两段电压-发光二极管电压)/电流R1R6为限流电阻,避免烧坏发光二极管。得出电阻范围:300R1R6600设计中取330本设计采用的是共阳极LED显示器。 数码管显示电路原理图如下: 3.6 CT7447介绍适用于七段字形共阴极显示管的译码器集成电路有CT7448,CT74LS48等型号,适用于共阳极七段管的译码器有CT7447,CT74LS47等型号。7447引脚图如下:现以显示译码器CT7447为例作较详细的讨论。CT7447的逻辑符号示于图中:D、C、B、A:是BCD码输入信号,ag:译码输出,低电平有效:.熄灭信号输入。当= 0(有效)时,输出ag均为高电

31、平1信号(全灭);2.灭零输出信号。当= 0时,= 0。 :试灯信号输入。当=0)且= 1(无效)时,不论DA状态如何,ag七段全亮。:灭零输入信号(不显示0,其它数码正常显示)。= 0(=)时,不显示数码0。图4-26所示逻辑符号中,输入和输出线上的箭头有两个含义:有箭头表示低电平有效(同加小圈的意思一样);箭头指向符号框表示输入,反之表示输出,例如端既可作输入端又可作输出端,故其有一对相反方向的箭头表示。3.7 74L138译码器的运用在中规模集成电路中译码器有几种型号,使用最广的通常是74138,其是一个3到8的译码器,下图是其逻辑符号及管脚排布,下表中列出了该器件的逻辑功能,从表中可以

32、看出其输出为低电平有效,使能端G1为高电平有效,/G2,/G3为低电平有效,当其中一个为低电平,输出端全部为1。74L138图如下:3.8密码存储电路方案的确定密码存储电路主要由 EEPROM93C46 组成。1、93C46 是一种存储器可以定义为 16 位ORG 引脚接 Vcc或者定义为 8 位ORG引脚接GND的1K位的串行 EEPROM 每一个的存储器都可以通过 DI 引脚 或 DO引脚进行写入或读出,器件可以经受 1,000,000 次的写入/擦除操作片内数据保存寿命达到100年器件可提供的封装有 DIP-8 SOIC-8或TSSOP-8。2、93C46是一个有1024位内含工业标准微

33、处理器的非易失的存储器。93C46可以选择为16位或8位结构。当选择16位结构时,93C46有7条9位的指令用来控制对器件进行读、写和擦除操作;当选择8位结构时,93C46有7条10位的指令来控制对器件进行读、写和擦除操作。93C46的所有操作都在单电源上进行,当执行任何的写操作时内部的升压电路将提供高压给芯片。 指令、地址和写入的数据在时钟信号SK的上升沿时由DI引脚输入,DO引脚除了从器件读取数据或进行写操作后查询准备/繁忙(ready/busy)的器件工作状态外,平常是高阻态的。 准备/繁忙(ready/busy)是开始了一个写操作后选择器件CS为高电平后从DO引脚读的用来测定期间工作状

34、态的信号,DO位低电平则表示写操作还没有完成。当DO为高电平时则表示器件可以输入下一条指令,此时如果有需要,可以在DI引脚移入一个高电平,DO会进入高阻态,DO引脚会在时钟SK的下降沿时进入高阻态,将DO引脚恢复高阻态值得推荐在DI和DO合用一个I/O口来读/写的应用中。所有送往器件的指令格式为一个高电平“1”的开始位,一个2位或4位的操作码,写入数据时的6位(当选择8位结构时为7位)以及16位数据(当选择8位结构时为8位)。3、93C46的操作指令如下表:指令开始位操作码 地址 数据注释X8X16X8X16XREAD110A6-A0A5-A0读地址An-A0的数据ERASE111A6-A0A

35、5-A0擦除An-A0的数据WRITE101A6-A0A5-A0D7-D0D15-D0把数据写到地址An-A0的存储器中EWEN10011XXXXX11XXXX写允许EWDS10000XXXXX00XXXX写禁止ERAL10010XXXXX10XXXX擦除全部存储器的数据WRAL10001XXXXX01XXXXD7-D0D15-D0把数据写到全部的存储器中(1)读操作指令(READ)在接收到一个指令和地址(从DI引脚在时钟驱动下输入)之前,93C46的DO引脚是高阻态的。接收到读指令和地址后,DO引脚先输出一个虚拟的第电平,然后数据根据时钟信号移位输出(高位在前)。数据在时钟信号(SK)的上升

36、沿时输出并经过一定的时间后稳定(tpDO或tpDI)。 (2)写操作指令(WRITE) 在接收到写指令、地址和数据后,片选引脚(CS)不片选芯片的时间要必须大于Tcs-min。片选引脚(CS)在下降沿的时候,器件开动自动时钟去擦除并把数据存放到指定存储器。在器件进入自动时钟的模式后时钟信号引脚(SK)的信号不是必须的93C46的准备?繁忙状态可以选择器件并测试数据输出引脚DO得到。因为器件有在写入前自动清除的特性,所以没必要在写入之前将存储器该地址的内容擦除。 (3)擦除操作指令(ERASE)在接收到擦除指令和地址以后,片选引脚(CS)不片选芯片的时间要必须大于Tcs-min。片选引脚(CS)

37、在下降沿的时候,器件开动自动时钟,擦除指定存储器。在器件进入自动时钟的模式后时钟信号引脚(SK)的信号不是必须的。93C46的准备/繁忙状态可以选择器件并测试数据输出引脚(DO)得到。一旦清除了,该位就回到逻辑1的状态。(4)擦除/写入允许(EWEN)和禁止(EWDS)操作指令 93C46在上电时是默认写禁止的。任何在上电和写禁止(EWDS)指令后的写入操作都必须先发送写允许(EWEN)指令。一旦设置了写允许,它会持续有效直到断电或发送一条写禁止指令。写禁止指令用来禁止对93C46的写入和擦除操作,同时也可以防止意外的对器件进行写入和擦除。数据可以照常从器件中读取,论是写允许还是写禁止状态。(

38、5)全部擦除(ERAL)在接收到全部擦除指令后,片选引脚(CS)不片选信号的时间要必须大于Tcs-min。片选引脚(CS)在下降沿的时候,器件开动自动时钟擦除存储器的所有内容。在器件进入自动时钟的模式后时钟信号引脚(SK)的信号不是必须的。93C46的准备/繁忙状态可以选择器件并测试数据输出引脚(DO)得到。一旦清除了,所有位都回到逻辑1的状态。(6)写全部操作指令(WRAL)在接收到写全部指令后,片选引脚(CS)不片选芯片的时间要必须大于Tcs-min。片选引脚(CS)在下降沿的时候,器件开动自动时钟把数据内容写满器件的所有存储器。在器件进入自动时钟的模式后时钟信号引脚(SK)的信号不是必须

39、的。93C46的准备/繁忙状态可以选择器件并测试数据输出引脚(DO)得到。没有必要去在写全部之前把存储器内容擦除。93C46引脚定义如下: Vcc:电源引脚,+5V。GND:地线。CS:片选信号。在两条相临指令执行中,CS 必须最少产生 500NS 的低电平,以指明前条指令的结束。DI:数据输入端 DI 用于在串行时钟 SK 的同步下输入起始位,操作码地址和写入数据 。 DO:数据输出端。数据输出端 DO 用于在读方式中,在串行时钟 SK 的同步下输出读出的数据。SCK :时钟信号,所有操作码、址码、数据位均在 SCK 信号的上升沿输入或输出,SK 信号的最高频率为 1MHz。ORG:存储器结

40、构选择接口,当ORG接Vcc时,存储器为16位结构。当ORG接GND时,存储器为8位结构。当ORG悬空时,内部的上拉电阻把存储器选择为16位结构。93C46引脚图如下:3.8开锁控制电路方案开锁控制电路主要由整流二极管、继电器、三极管等组成。其优点是结构简单,成本低,操作简便。开锁控制电路的原理:当 P2 口输出“0”时,连接 VCC 的 10K 电阻将三极管的基极钳位在高电平,三极管导通,继电器流过电流,开始动作,继而开锁。 3.9电路原理图第4章 电子密码锁软件系统设计4.1程序功能1、主程序功能:主要完成初始化、设置中断向量、检查有无按键按下,以及调用显示等。2、键盘扫描及识别子程序功能

41、:键盘采用查询方式,放在主程序中,当没有按键按下时,单片机循环主程序,一旦有键按下,便转向相应的子程序处理,之后再返回。3、调用存储程序功能:比较密码时,需要读 93C46 程序,将存储在芯片内的数据读到 RAM 中,然后和输入密码相比较,当修改密码时,需要把输入的密码保存到 93C46 中。按键分布图如下: 4、 显示子程序功能:当识别到“C”键时,可显示密码,当需要清除显示器时,可调用 显示程序,使数码管显示“000000”。5、 编码设计:6、 各地址 RAM 的分配:20H ADR4;EEPROM93C46 的地址;21H FLG0;判断 93C4600 地址的内容是否为 01(已设定

42、密码),00 表示93C46 中未存密码,01 表示已存有密码;22H;寄存器;30H35H;密码存储地址;36H38H;显示器地址;3CH;93C46 读/写存放高 8 位数据地址;3DH;93C46 读/写存放低 8 位数据地址;3EH;寄存器。 4.2 程序框图1、主程序框图:错误开始初始化读93C46 00地址是否为0 1设标志位为0至TABLE读密码设标志位为1将密码存入30H35H清除显示器地址键盘扫描是否有按键按下判断键显示密码清除建立新密码比较密码正确开锁2、 键识别子程序框图是否按C 是 否消除抖动按键放开否是否按D至TABLE取按键值是否按* 是 否载入按键值是否按# 是

43、否载入按键值显示按键值键盘扫描按键值与密码相同吗 是 否令开锁动作清 除设定新密码清除显示密码3、显示子程序框图密码地址传送给R0调用显示子程序C放开了吗 是否延 时返 回4、设定新密码程序框图将密码存入93C46 01-03H显示值存入密码地址标志位是否为1 延 时返回清除93C46 00地址写入01H5、密码比较子程序框图按键值与密码值比较相同吗 否是比较下一个码六个码都比较完了 是开 锁延 时返回清除6、掉电存储子程序框图93C46初始化依ACC值跳至相关地址读写写使能写禁止4.3系统程序1、主程序READ EQU 0WRITE EQU 2EWEN EQU 4EWDS EQU 6FLG0 REG 08HCS REG P3.7CLK REG P3.6DI R

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

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号