关键词不能为空

当前您在: 主页 > 英语 >

august怎么读汇编语言单片机电子密码锁

作者:高考题库网
来源:https://www.bjmy2z.cn/gaokao
2021-01-20 00:47
tags:

字元-august怎么读

2021年1月20日发(作者:introduction)

概述

本次基于
8051
单片机电子密码锁的设计,其主要具有如下功能:


1
)设置
6
位密码,密码通过键盘输入,若密码正确,则将锁打开。

2
)密码可以由用户自己修改设定(只支持
6
位密码),锁 打开后才能

改密码。修改密码之前必须再次输入密码,在输入新密码时候需要二次确

以防止误操作。


3
)报警、锁定键盘功能。密码输入用发光管显 示,当连续
3
次输入错误

密码,系统声光报警。

电子密 码锁的设计主要由三部分组成:
4×4
矩阵键盘接口电路、
密码锁

的控制电路、输出八段显示电路。另外系统还有
LED
提示灯等。

密码锁设计的关键问题是实现密码的输入、清除、更改、开锁等功能:


1
)密码输入功能:按下一个数字键,一个“-”就显示在最右边的数码

管上,同时将先前输入的所有“-”向左移动一位。


2
)密码清除功能:当按下清除键时,清除前面输入的所有值,并清除所

有显示。


3
)密码更改功能:将输入的值作为新的密码。


4
)开锁功能:当按下开锁键,系统将输入与密码进行检查核对,如果

确锁打开,否则不打开。

主要的设计实施过程:
首先,
选用
8051
单片机,
以及选购其他电子元器件。
第二步,设计硬件电路。第三步,编写 单片机语言实现功能。第四部,分别进行
软件和硬件的调试。最后,联合软、硬件调试整个系统,完成本 次课程设计。

关键词:4×4
矩阵键盘;
8051
单片机;密码锁;密码二次确认




课题要求

本次课程设计,
基于
8 051
单片机电子密码锁的设计,
利用
4*4
小键盘作为输
入,LED
作为显示。当输入密码和设定的密码一致时,系统利用继电器输出解
锁信号,其主要 具有如下功能:


1
)设置
6
位密码,密码通过键盘输入 ,若密码正确,则将锁打开。


1


2
)密 码可以由用户自己修改设定(只支持
6
位密码),锁打开后才能

改密码。修改密码之前必须再次输入密码,在输入新密码时候需要二次确

以防止误操作。


3
)报警、锁定键盘功能。密码输入用发光管显 示,当连续
3
次输入错误

密码,系统声光报警。


课题分析

电路主要包括矩阵键盘输入密码,
外部密码验证,
单片控 制,
原理方框图如下








图一:电子密码锁原理方框图


4.1
矩阵键盘输入控制电路

设计方案是非编码键盘,每条行线和列线都对 应一条
I/O
口线,键位设在
行线和列线的交叉点,
当一个键按下就会有某一 条行线与某一条列线接触,
只要
确定接触的是哪两条线,即哪两个
I/O
口线 ,就可以确定哪一个键被触动。


线设计成上拉口线,初始时被置高电位,列线悬空 ,初始置低。通过不断读行线
口线,或者中断方式触发键位扫描。

当发现有键按下, 将列线逐一置低,其他
列线置高,读行线口线。当某条列线置低时,某条行线也被拉低,则确定这两条< br>线的交点处的按钮被按下。

将每个行线和列线的组合值作成列表,每次就可以
通过查表确定键位,以决定之后要进行的操作。

课题方案选择

方案一:使 用
8051
单片机,采用汇编语言编写程序,该程序语言功能强大,
调试较为方便,具 有很强的实用性。

方案二:利用数字逻辑电路,运用电压比较器,
555
单 稳态电路,计数器,
JK
触发器,
UPS
电源等实现对门的电子控制。

方案三:
使用
8051
单片机,
利用基于单片机的
C< br>语言编写程序,
通过
Keil C51
uVision2
软件进行仿真模拟。


2





方案二基于数字电路,操作繁琐,会出现较多的器件故障,同时调试复 杂,
难于维护。
方案三该逻辑语言较为复杂,
编写程序时也较为复杂,
还需进 行软件
仿真模拟,设计复杂。综上所述,使用方案一,设计较为简便,调试简单,硬件
电路较少 ,易于维护。


程序部分

ORG 1000H
MOV R4,#08H
密码个数
8


MOV R0,#40H
密码暂存区

MOV A,#00H
初始密码0

1

2

3

4
5
GO: MOV @R0,A
INC R0
INC A
DJNZ R4,GO
SETB P3.0;
确认

SETB P3.1
锁开

SETB P3.2
错误

SETB P3.4
报警

MOV R0,#20H


MOV A,#03H


MOV @R0,A

;8155
初始化



MOV R0,#79H


MOV R7,#06H
INIT:
MOV @R0,#0

;
显示缓冲区清零



INC R0


DJNZ R7,INIT
LOP:
LCALL DISP


LCALL KEYB


JB ACC.4,LOP

;
未按键返回



MOV R0,#7EH


MOV R7,#05H
PUSH A
SETD:
DEC R0
MOV A,@R0
INC R0
MOV @R0,A
DEC R0
DJNZ R7,SETD
POP ACC
MOV @R0,A
MOV 7DH,7CH
CJNE ,A,#0AH,LOP

3

CLR P3.0
ACALL COMP
CJNE R3, #03H, LOP
CLR P3.4
SJMP LOP


-----------------------------------
KEYB: LCALL BKS

;
按键处理子程序



JNZ BLK1


LCALL DISP


SJMP KEYB
BLK1:
LCALL DISP


LCALL DISP


LCALL BKS


JNZ BLK2


LCALL DISP


SJMP KEYB
BLK2:
MOV R2,#0FEH


MOV R4,#0
BLK4:
MOV R1,#21H


MOV A,R2


MOVX @R1,A


MOV R1,#23H


MOVX A,@R1


JB ACC.0,BL1


MOV A,#0


SJMP BLKP
BL1:
JB ACC.1,BL2


MOV A,#08H


SJMP BLKP
BL2:
JB ACC.2,BL3


MOV A,#10H


SJMP BLKP
BL3:
JB ACC.3,BL


MOV A,#18H
BLKP: ADD A,R4


PUSH ACC
BLK3:
LCALL DISP


LCALL BKS


JNZ BLK3


POP ACC


CJNE A,#10H,PP
PP:

JNC PP1


MOV DPTR,#TBL

4



MOVC A,@A+DPTR
PP1:
RET
TBL:
DB 07H,04H,08H,05H,09H,06H,0AH,0BH,01H,00H


DB 02H,0FH,03H,0EH,0CH,0DH
BL: INC R4


MOV A,R2


JNB ACC.7,BKLD


RL A


MOV R2,A


SJMP BLK4
BLKD: SJMP KEYB
BKS:
MOV R1,#21H


MOV A,#0


MOVX @R1,A


MOV R1,#23H


MOVX A,@R1


CPL A


ANL A,#0FH


RET
---------------------------------
DISP:
MOV R0,#79H


MOV R3,#20H
BTL:
MOV A,R3


MOV R1,#21H


MOVX @R1,A

;
送位选码到
PA




MOV A,@R0


MOV DPTR,#TAB1


MOVC A,@A+DPTR ;
查表



INC R1


MOVX @R1,A

;
送显示码到
PB




LCALL DELAY

;
延时



INC R0


MOV A,R3


JB ACC.0,HERE
;
一轮显示完到
HERE


RR A


MOV R3,A


SJMP BTL


;
继续本轮显示

HERE: RET
TAB1:
DB 0C0H,0F9,0A4H,0B0H,99H,92H,82H
共阳显示码


DB 0F8H,80H,90H
DELAY: MOV R6,#0FFH
;
延时子程序


D1: MOV R5,#0FFH

D2: DJNZ R5,D2


DJNZ R6,D1

5

字元-august怎么读


字元-august怎么读


字元-august怎么读


字元-august怎么读


字元-august怎么读


字元-august怎么读


字元-august怎么读


字元-august怎么读



本文更新与2021-01-20 00:47,由作者提供,不代表本网站立场,转载请注明出处:https://www.bjmy2z.cn/gaokao/535595.html

汇编语言单片机电子密码锁的相关文章