基于单片机的电子密码锁设计毕业设计(36页).doc

上传人:1595****071 文档编号:37164947 上传时间:2022-08-30 格式:DOC 页数:36 大小:322.50KB
返回 下载 相关 举报
基于单片机的电子密码锁设计毕业设计(36页).doc_第1页
第1页 / 共36页
基于单片机的电子密码锁设计毕业设计(36页).doc_第2页
第2页 / 共36页
点击查看更多>>
资源描述

《基于单片机的电子密码锁设计毕业设计(36页).doc》由会员分享,可在线阅读,更多相关《基于单片机的电子密码锁设计毕业设计(36页).doc(36页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、-基于单片机的电子密码锁设计毕业设计-第 34 页2015届本科毕业设计基于单片机的电子密码锁设计院 (系) 名 称物理与电子信息学院专 业 名 称电子信息科学与技术学 生 姓 名学 号指 导 教 师完 成 时 间2015年5月13日基于单片机的电子密码锁设计 物理与电子信息学院 电子信息科学与技术专业 摘要:随着人们防盗意识的日益加强,选用一把既方便又安全的锁,已经成为了一件越来越重要的事情。传统的机械锁结构比较简单,钥匙需随身携带,且一旦丢失安全性无法保证。因此,电子密码锁应运而生。电子密码锁是一种通过输入密码来控制电路或芯片工作,从而控制机械开关的闭合,完成开锁、闭锁任务的电子产品。该设

2、计以AT89C51 单片机作为密码监控装置和控制核心,结合键盘电路、LCD显示电路、报警电路和开锁结构完成输入、存储、保存密码的功能。该设计具有保密性好、成本低、功耗低、操作简单、随机开锁成功率几乎为零、密码可变、误码输入保护、多次错误报警、断电记忆等优点。关键词:AT89C51;电子密码锁;报警The Design of Electronic Password-lock Based on SCM College of Physics and Electronic Information Electronic information science and technologyAbstract

3、: With the strengthening of peoples awareness of security, Choosing a convenient and secure locks has become an increasingly important thing. Traditional mechanical lock structure is relatively simple and the key needs to carry around. Once lost it cant guarantee safety. Therefore, electronic locks

4、came into being. Electronic password lock controls circuit or chip work to control the mechanical switch lock and unlock through password. The design uses the AT89C51 micro- controllerascontrol coreandpasswordmonitoring device and combines with thekeyboard circuit,LCD display circult,alarmcircuit an

5、d lockstructureto complete the input,storage and save the password function.The design hasmany advantages, such as good confidentiality,low cost,low power consumption,simple operation, random unlockingsuccess rate is almost zero,thevariable password,error input protection,multipleerror alarming,powe

6、r-off memoryand so on.Keyword: SCM; electronic password-lock; alarm目 录摘要11 引言52 设计方案及实现的目标52.1 选用单片机为核心控制52.2 设计所要实现的目标53 主要芯片介绍63.1 主控芯片AT89C5163.1.1 AT89C51芯片的功能63.1.2 AT89C51的引脚63.1.3 AT89C51芯片的内部结构83.1.4 芯片擦除93.2 AT24C02存储芯片93.3 LCD1602接口信号说明104 系统硬件结构114.1 系统原理框图114.2 复位模块124.3 晶振模块134.4 键盘模块13

7、4.5 显示模块144.6 开锁模块144.7 密码存储模块154.8报警模块155 系统总电路图166 系统软件设计177 Proteus仿真217.1仿真过程217.2 仿真结果228 总结23参考文献23附录251 引言科技发展和生活水平提高的同时,安全问题也随之而来,失窃事件时有发生,那么如何更好的防盗呢?传统的机械锁通常具有机械结构复杂,密码数量少,安全性能差的缺点。为满足人们对锁的使用要求,增加其安全性,电子密码锁应运而生。电子密码锁是通过输入密码,控制电路工作,由电路控制机械结构开锁或关锁的电子产品。它具有保密性好、使用灵活、操作简单、寿命长的特点。 该设计从经济实用角度出发,采

8、用AT89C51单片机作为密码监控装置和控制核心,设计了一个电子密码锁系统。系统分为硬件和软件两个部分,硬件部分主要包括键盘模块、密码存储模块、开锁模块、报警模块、复位模块、晶振模块等;软件部分主要包括:初始化程序、LCD显示程序、键盘扫描程序、键盘功能程序、密码设置程序、EEPROM读写程序和延时程序等组成。这种密码锁具有安全性高、成本低、功耗低、易操作等优点。2 设计方案及实现的目标2.1 选用单片机为核心控制由于单片机种类繁多,各种型号都有其一定的应用环境,因此在选用时要多加比较,合理选择,以期获得最佳的性价比。一般来说在选取单片机时从下面几 个方面考虑:性能、内存、运行速度、I/O口、

9、定时/计数器、串行接口、模拟电路功能、工作电压、功耗、封装形式、抗干扰性、保密性。除了以上一些要考虑的方面,还有一些最基本的比如:中断源的数量和优先级、工作温度范围、有没有低电压检测功能、单片机内有无时钟振荡器、有无上电复位功能等1。本设计采用AT89C51单片机为主控芯片,外接LCD1602显示器用于显示作用,结合外围电路,组成电子密码锁,系统能完成开锁、超次锁定、修改用户密码等基本的密码锁功能.除此之外,还具有掉电存储、声提示等功能。2.2 设计所要实现的目标本设计采用单片机为主控芯片,结合外围电路,组成电子密码锁,用户想要打开锁,必先通过提供的键盘输入正确的密码才能将锁打开,密码输入错误

10、有提示,为了提高安全性,当密码输入错误三次将报警。密码可以由用户自己修改设定,锁打开后才能修改密码。修改密码之前必须再次输入密码,在输入新密码时候需要二次确认,以防止误操作。当用户需要开锁时,先按键盘启动键之后按键盘的数字键09输入密码。输入6位数密码,然后按下确认键,校对密码的正确性,如果密码输入正确则开锁,不正确显示密码错误重新输入密码,当三次密码错误则发出报警;在输入密码时,发现前一位数字输入错误,可以按下删除键删除,然后继续输入正确密码。当用户需要修改密码时,先按下键盘设置键后输入原来的密码,只有当输入的原密码正确后才能设置新密码。新密码输入无误后按确认键使新密码将得到存储,密码修改成

11、功。3 主要芯片介绍3.1 主控芯片AT89C51AT89C51是一种带4K字节FLASH内存(FPEROMFlash Programmable and Erasable Read Only Memory)的低电压、高性能CMOS 8位微处理器,俗称单片机。该器件采用ATMEL高密度非易失内存制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁内存组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器。3.1.1 AT89C51芯片的功能 AT89C51 提供以下标准功能:4k 字节Flash 闪速内存,128字节内部RAM,32 个I/O 口线,

12、两个16位定时/计数器,一个5向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。同时,AT89C51可降至0Hz的静态逻辑操作,并支持两种软件可选的节电工作模式。空闲方式停止CPU的工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作。掉电方式保存RAM中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位。3.1.2 AT89C51的引脚VCC:供电电压GND:接地。P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P0口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的低八位。在FIAS

13、H编程时,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”时,其管脚被内部上拉电阻拉高,且作为输入。P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口

14、写入“1”后,它们被内部上拉为高电平,并用作输入。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 /RD(外部数据存储器读选通)P3口同时为闪烁编程和编程校验接收一些控制信号。RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。ALE/PROG:当访问外部内存时,地址锁存允许的输出电平用于锁存地址的低位字节。/PSEN

15、:外部程序内存的选通信号。在由外部程序内存取指期间,每个机器周期两次/PSEN有效。/EA/VPP:当/EA保持低电平时,则在此期间外部程序内存(0000H-FFFFH),不管是否有内部程序内存。注意加密方式1时,EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序内存。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2:来自反向振荡器的输出。At89c51芯片结构如图1所示。 图1 AT89C51芯片引脚图3.1.3 AT89C51芯片的内部结构中断寄存器:各中断允许控制位于IE寄存器,5个中断源的

16、中断优先级控制位于IP寄存器。双时钟指针寄存器:为方便地访问内部和外部数据存储器,提供了两个16位数据指针寄存储器:PD0位于SFR区块中的地址82H、83H和DP1位于地址84H、85H,当SFR中的位DPS=0时选择DP0,而DPS=1时选择DP1。在使用前初始化DPS。电源空闲标志:电源空闲标志(POF)在特殊功能寄存储器SFR中PCON的第4位(PCON.4),电源打开时POF置“1”,它可由软件设置睡眠状态并不为复位所影响。存储器结构:MCS-51单片机内核采用程序存储器和数据存储器空间分开的结构,均具有64KB外部程序和数据的寻址空间。程序存储器:如果EA引脚接地(GND),全部程

17、序均执行外部存储器。在AT89C51,假如接至Vcc(电源),程序首先执行从地址0000H0FFFH(4KB)内部程序存储器,再执行地址为1000HFFFFH(60KB)的外部程序存储器。数据存储器:在AT89C51的具有128字节的内部RAM,这128字节可利用直接或间接寻址方式访问,堆栈操作可利用间接寻址方式进行,128字节均可设置为堆栈区空间。看门狗定时器(WDT):WDT是为了解决CPU程序运行时可能进入混乱或死循环而设置。3.1.4 芯片擦除整个PEROM阵列和三个锁定位的电擦除可通过正确的控制信号组合,并保持ALE管脚处于低电平10ms 来完成。在芯片擦操作中,代码阵列全被写“1”

18、且在任何非空存储字节被重复编程以前,该操作必须被执行。此外,AT89C51设有稳态逻辑,可以在低到零频率的条件下静态逻辑,支持两种软件可选的掉电模式。在闲置模式下,CPU停止工作。但RAM,定时器,计数器,串口和中断系统仍在工作。在掉电模式下,保存RAM的内容并且冻结振荡器,禁止所用其他芯片功能,直到下一个硬件复位为止。3.2 AT24C02存储芯片 AT24C02是一个2K位串行CMOSE2PROM,内部含有256个8位字节,CATALYST公司的先进CMOS技术实质上减少了器件的功耗。AT24C02有一个16字节页写缓冲器。该器件通过IIC总线接口进行操作,有一个专门的写保护功能。2AT2

19、4C02芯片结构如图2所示。图2 AT24C02芯片引脚图管脚名称 功能A0、A1、A2 器件地址选择SDA 串行数据、地址SCL 串行时钟WP 写保护VCC +1.8V6.0V 工作电压VSS 地表1 AT24C02管脚名称及功能AT24C02支持I2C,总线数据传送协议I2C,总线协议规定任何将数据传送到总线的器件作为发送器。任何从总线接收数据的器件为接收器。数据传送是由产生串行时钟和所有起始停止信号的主器件控制的3。主器件和从器件都可以作为发送器或接收器,但由主器件控制传送数据(发送或接收)的模式,由于A0、A1和A2可以组成000111八种情况,即通过器件地址输入端A0、A1和A2可以

20、实现将最多8个AT24C02器件连接到总线上,通过进行不同的配置进行选择器件。3.3 LCD1602接口信号说明表2 LCD1602接口信号说明编号符号引脚说明编号符号引脚说明1VSS电源地9D2Data I/O2VDD电源正极10D3Data I/O3V0液晶显示偏压信号11D4Data I/O4RS数据/命令选择端(H/L)12D5Data I/O5R/W读写选择端(H/L)13D6Data I/O6E使能信号14D7Data I/O7D0Data I/O15BLA背光源正极8D1Data I/O16BLK背光源负极4 系统硬件结构4.1 系统原理框图该设计以AT89C51单片机为主控单元

21、,AT24C02存储芯片为存储单元,矩阵键盘为主输入单元,LCD1602为显示单元,独立按键为模拟功能按键,蜂鸣器为报警装置以及开锁装置完成整个系统设计。系统原理框图如图3所示。 AT89C51复位电路开锁电路显示电路报警电路密码存储电路键盘输入电路晶振电路图3 系统原理框图 4.2 复位模块单片机复位是使CPU和系统中的其他功能部件都处在一个确定的初始状态,并从这个状态开始工作,例如复位后PC0000H,使单片机从第个单元取指令。无论是在单片机刚开始接上电源时,还是断电后或者发生故障后都要复位。在复位期间(即RST为高电平期间),P0口为高组态,P1P3口输出高电平;外部程序存储器读选通信号

22、PSEN无效。地址锁存信号ALE也为高电平。当复位按键按下后电容C3通过R3放电,R2的作用在于限制按键按下瞬间电容C3的放电电流,避免产生火花,以保护按键触电位电路设计4-6。复位模块电路如图4所示。图4 复位模块电路图4.3 晶振模块单片机XIAL1和XIAL2分别接20uF的电容,中间再并个12MHZ的晶振,形成单片机的晶振电路。晶振模块电路如图5所示。图5 晶振模块电路图4.4 键盘模块键盘输入模块作为AT89C51 单片机电子密码锁设计中关键的部分,主要形式为矩阵式键盘输入,由09 数字键、输入键、确定键、删除键组成。这种行列式矩阵键盘的单片机系统,通过构建M 条列线和N 条行线,组

23、成具有MN 的键盘。若需要进入大门,首先按下输入键,输入6位数密码,然后按下确认键,校对密码的正确性,密码输入错误三次将自动报警;在输入密码时,发现前一位数字输入错误,可以按下删除键删除,然后继续输入正确密码。将AT89C51的并行口P1接44矩阵键盘,以P1.0-P1.3作为行线,以P1.4-P1.7作为列线7。其电路如图4所示。图4 矩阵键盘电路图4.5 显示模块系统显示主要由液晶显示器完成,系统加电后,锁被合上,这时通过观察显示器则知道锁是被合上的,需要输入密码才能进入。开锁时,通过键盘上数字键09 输入密码,每按一下显示器都会显示“*”,最多输入6位和显示6个“*”。当密码输入完成时,

24、按下确认键,如果输入的密码正确的话, LCD子显示“CORRET CODE DOOR OPEN”,电子密码锁被打开;如果密码不正确,LCD显示屏会显示“CODE WRONG”,密码锁不能被打开。通过LCD显示屏,可以清楚的判断出锁的状态。其电路如图5所示。图5 显示模块电路图4.6 开锁模块开锁控制电路的功能是当输入正确的密码后将锁打开。系统使用单片机其中一引脚线发出信号,经三极管放大后,由继电器驱动电磁阀动作将锁打开。用户通过键盘任意设置密码,并储存在EEPROM中作为锁码指令。只有用户操作键盘时,单片机的电源端才能得到3V电源,否则单片机处于节电工作方式8。开锁步骤如下:首先按下键盘上的开

25、锁按键,然后利用键盘上的数字键09输入密码,最后按下确认键。当用户输入一密码后,单片机自动识码,如果识码不符,则报警。只有当识码正确,单片机才能控制电子锁内的微型继电器吸台。当继电器吸台以后带动锁杆伸缩,这时,锁勾在弹簧的作用下弹起,完成本次开锁。开锁以后,单片机自动清除掉由用户输人的这个密码9。其电路如图6所示。图 6 开锁模块电路图4.7 密码存储模块图中R4和R5为上拉电阻,其作用是减少AT24C02的静态功耗,由于AT24C02的数据线和地址线是复用的,采用串口的方式传送数据,所以只用两根线SDA (数据/地址) 和SCL(移位脉冲) 与AT89C51单片机传送数据10。其电路如图7所

26、示。图7 密码存储模块电路图4.8报警模块该电路的作用是在密码输入错误的状态下,单片机送出信号使得蜂鸣器响。该电路较为简单,由一个电阻、PNP 三极管和蜂鸣器组成,如图所示。单片机的P3.0 引脚控制三极管的基极b,当P3.0 输出高电平时,三极管截止,没有电流流过线圈,蜂鸣器不发声;当P3.0 输出低电平时,三极管导通,这样蜂鸣器的电流形成回路,发出声音,进行报警11。其电路如图8所示。图 8 报警模块电路图5 系统总电路图该设计涉及到的主要器件有:主控芯片AT89C51单片机、LCD1602液晶显示器、AT24C02存储芯片、蜂鸣器等。主要电路有:44矩阵键盘模块、复位模块、报警模块、开锁

27、模块、显示模块、密码存储模块以及晶振模块等。Proteus 环境下的系统总电路如图9所示。图9 系统总电路图6 系统软件设计本系统软件设计由主程序、初始化程序、LCD显示程序、键盘扫描程序、键功能程序、密码设置程序、EEPROM读写程序和延时程序等组成。主要程序设计流程图如图10-13所示。开始初始化键盘扫描启动程序键盘扫描键功能程序结束关闭程序NNYYYY Y图10 主程序流程图键功能程序键值09?键值开锁?键值清除?键值设置?键值确认?密码输入程序设置程序清除程序开锁程序确认程序YYYYYNNNN返回N图11 键盘功能流程图Y设置程序初始化按下设置键输旧密码确认程序所输入旧密码正确?输新密

28、码确认程序设置成功输入次数加1次数3?报警程序NY返回确认程序再次输新密码两次新密码输入相同?NYNYYYY图12 密码设置流程图初始化按开锁键输入密码确认程序所输入密码正确?Y开锁程序输入次数加1次数3?报警程序NY开锁成功返回N图13 开锁程序流程图用汇编语言编写的开锁程序,见附录。7 Proteus仿真本设计使用了Proteus 软件进行仿真。优势在于:软硬件设计可同时进行。当硬件还没有制作出来时,利用该软件绘制出电路图,加载编译好的程序,先在电脑上进行连调仿真,发现硬件或软件上的设计错误。大大缩减了设计周期12。7.1仿真过程在Proteus ISIS 编辑窗口中单击元件列表上的“P”

29、按钮,打开“Pick Device”对话框,添加元件。有些元件没有,可以用类似芯片代替,它们的功能是兼容的。如用AT89C51 代替AT89S51,用M24C16 代替AT24C16。 绘制好密码锁电路图后, 给单片机AT89C51 设置晶振频率为12MHz, 加“*.HEX”文件。在编辑窗口下单击“运行”图标或在“Debug”菜单中选择“Execute”,可以看到仿真模拟的结果。7.2 仿真结果系统仿真结果如图14-17所示。图14 密码输入时的仿真结果图图15 密码正确时的仿真结果图图16 密码错误时的仿真结果图图17 修改密码时的仿真结果图8 总结本设计采用单片机为主控芯片,结合外围电路

30、,组成电子密码锁,设计方法合理,简单易行,成本低,安全实用,符合日常用锁要求,具有一定推广价值。利用单片机灵活的编程设计及其控制的准确性,通过软件程序来控制整个系统实现电子密码锁的基本功能。该电路设计还具有按键有效提示,输入错误提示,控制开锁电平,控制报警电路,修改密码等多种功能。可在意外泄密的情况下随时修改密码。保密性强,灵活性高,特别适用于家庭、办公室、学生宿舍及宾馆等场所。参考文献1 戴文雯 采用AT89C51的电子密码锁的设计J. 南京航空航天大学学报, 2013,16(4): 31-35.2 任艳艳 基于AT89C51单片机多功能密码锁的研究J. 重庆职业技术学院学报(第17 卷第5

31、期), 2008, 17(5): 5-31.3 蒋辉平, 周国雄 基于Proteus 的单片机系统设计与仿真实例M. 机械工业出版社, 2009.4 贺敬凯, 刘德新, 管明祥 单片机系统设计、仿真与应用M. 西安电子科技大学出版社,2011.5 石文轩, 宋薇 基于单片机MCS-51 的智能密码锁设计J. 武汉工程职业技术学院报, 2004, 8(3) : 108-109. 6 郭海英. 基于单片机的电子安全密码锁的设计J. 现代电子技术, 2005, (13): 95-97.7 董继成. 一种新型安全的单片机密码锁J. 电子技术,2004, 31(3): 58-60.8 杨茂涛. 一种电子

32、密码锁的实现J. 福建电脑, 2004, (8).9 周文龙. 基于单片机控制的电子密码锁设计J. 大众商务, 2009, (3) : 108-109.10 董继成. 能防止多次试探密码的单片机密码锁J. 国外电子元件, 2004, (3): 19-21.11 吴汉清. 单片机做电子密码锁J. 无线电期, 2007,(5): 37-39.12 徐欣, 樊昀. 一种有单片机实现的多功能密码锁J. 计算机应用研究, 1998, 15(3): 113-115.附录: LED1 EQU 6FH BUFF EQU 6EH TIMERS1 EQU 6DH ;输入回车的次数 TIMERS2 EQU 6CH

33、;报警的次数 LED6 EQU 6AH ;密码缓冲区 PS1 EQU 69H PS2 EQU 78H PS3 EQU 67 PS4 EQU 66H PS5 EQU 65H PS6 EQU 64H PS7 EQU 63H PS8 EQU 62H ;AT24C02读取缓冲区 AT1 EQU 61H AT2 EQU 60H AT3 EQU 5FH AT4 EQU 5EH AT5 EQU 5DH AT6 EQU 5CH AT7 EQU 5BH AT8 EQU 5AH ;按键标志位 F_0 BIT 20H F_1 BIT 21H F_2 BIT 22H F_3 BIT 23H F_4 BIT 24H F

34、_5 BIT 25H F_6 BIT 26H F_7 BIT 27H F_8 BIT 28H F_9 BIT 29H CH_STATE BIT 2AH ;系统更改的状态标志位,为1表示busy FLAG1 BIT 2BH ;功能键标志位,为1表示功能按键。 F_F1 BIT 2CH F_F2 BIT 2DH PSW_F BIT 2EH ;密码是否正确的标志位 ;口资源定义 SPK BIT P2.1 WP BIT P3.5 SDA BIT P3.6 ;定义串口数据端 SCL BIT P3.7 ORG 0000H AJMP MAIN ORG 000BH ;AJMP TIMER0 ORG 001BH

35、 ;AJMP TIMER1 ORG 0030H MAIN:MOV SP, #70H MOV TMOD, #11H MOV TH0, #3CH MOV TL0, #0B0H MOV TH1, #3CH MOV TL1, #0B0H CLR F_0 ;清除标志位 CLR F_1 CLR F_2 CLR F_3 CLR F_4 CLR F_5 CLR F_6 CLR F_7 CLR F_8 CLR F_9 CLR BUF_FULL CLR CH_STATE CLR FLAG1 CLR F_F1 CLR F_F2 CLR PSW_F MOV BUFF,#00H ;调用 LCALL INITPS ;初始

36、化环境 LCALL INITA LCALL XSA ;调用默认显示 MOV TIMERS1,#00H NOP MOV PS1, #01H ;初始化密码111111 MOV PS2, #01H MOV PS3, #01H MOV PS4, #01H MOV PS5, #01H MOV PS6, #01H START:NOP ;程序开始 LCALL CH_KEY ;检查键盘 AJMP START ;返回 CH_KEY:LCALL KS ;检查有没有按键按下 JNZ LK1 AJMP CH_KEY LK1: LCALL T12MS ACALL KS JNZ LK2 RET LK2: NOP LCAL

37、L SBIE ;按键识别子程序 MOV BUFF, A ;送缓冲区以识别是数字键还是功能键? LCALL CH_KF ;判断按键功能。 JB FLAG1 ,KEY_FUN ;标志为1,则为功能键;*数字按键输入并且存放到缓冲区内等待比较*KEY_DIG:NOP ;设一标志,辨别输入是否满 ;SETB TR0 INC TIMERS ;输入数字的位数 MOV A, TIMERS CLR C SUBB A, #01H JNZ PS_2 MOV PS1, BUFF ;依照顺序存放密码 AJMP NEXT PS_2:MOV A, TIMERS SUBB A, #02H CLR C JNZ PS_3 MO

38、V PS2, BUFF AJMP NEXT PS_3:MOV A, TIMERS CLR C SUBB A, #03H JNZ PS_4 MOV PS3, BUFF AJMP NEXT PS_4:MOV A, TIMERS CLR C SUBB A, #04 JNZ PS_5 MOV PS4, BUFF AJMP NEXT PS_5:MOV A, TIMERS CLR C SUBB A, #05 JNZ PS_6 MOV PS5, BUFF AJMP NEXT PS_6:MOV A, TIMERS CLR C SUBB A, #06H JNZ CH_KEY MOV PS6, BUFF NEXT:LCALL XSC MOV R7, TIMERS ;比较输入的次数。 CJNE R7, #06H ,FULL FULL:JC NEXT9 SETB BUF_FULL MOV TIMERS,#06H CLR L3 NOP CLR P2.1 LCALL T100MSD SETB P2.1 NOP AJMP CH_KEY NEXT9:CLR P2.1 ;密码输入一位,鸣叫一声。 CLR L3 LCALL T100MSD ;延时100ms SETB L3 SETB P2.1 AJMP CH_KEY;*开门子程序 * CL:NOP SETB L3 MOV BUFF,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 小学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com