版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
一、设计总说明
随着人们对安全的重视和科技的发展,许多电子智能锁(指纹辨认、IC卡辨认)已在国内外相继面世。但是这些产品的特点是针对特定的指纹和有效卡,只能合用于保密规定的箱、柜、门等。并且指纹识辨认器若在公共场合使用存在容易机械损坏,IC卡还存在容易丢失、损坏等特点。加上其成本较高,一定限度上限制了这类产品的普及和推广。鉴于目前的技术水平与市场的接受限度,电子密码锁是这类电子防盗产品的主流。
本次基于8051单片机电子密码锁的设计,其重要具有如下功能:
(1)设立6位密码,密码通过键盘输入,若密码对的,则将锁打开。
(2)密码可以由用户自己修改设定(只支持6位密码),锁打开后才干
改密码。修改密码之前必须再次输入密码,在输入新密码时候需要二次确
以防止误操作。
(3)报警、锁定键盘功能。密码输入用发光管显示,当连续3次输入错误
密码,系统声光报警。
电子密码锁的设计重要由三部分组成:4×4矩阵键盘接口电路、密码锁
的控制电路、输出八段显示电路。此外系统尚有LED提醒灯等。
密码锁设计的关键问题是实现密码的输入、清除、更改、开锁等功能:
(1)密码输入功能:按下一个数字键,一个“-”就显示在最右边的数码
管上,同时将先前输入的所有“-”向左移动一位。
(2)密码清除功能:当按下清除键时,清除前面输入的所有值,并清除所
有显示。
(3)密码更改功能:将输入的值作为新的密码。
(4)开锁功能:当按下开锁键,系统将输入与密码进行检查核对,假如
确锁打开,否则不打开。
重要的设计实行过程:一方面,选用8051单片机,以及选购其他电子元器件。第二步,设计硬件电路。第三步,编写单片机语言实现功能。第四部,分别进行软件和硬件的调试。最后,联合软、硬件调试整个系统,完毕本次课程设计。
关键词:4×4矩阵键盘;8051单片机;密码锁;密码二次确认‘二、
绪论
2.1
背景
随着社会物质财富的日益增长,安全防盗已成为社会问题。而锁自古以来就是把守门户的铁将军,人们对它规定甚高,既要安全可靠地防盗,又要使用方便,这也是制锁者长期以来研制的主题。目前国内,大部分人使用的还是传统的机械锁。然而,眼下假冒伪劣的机械锁泛滥成灾,互开率非常之高。所谓互开率,是各种锁具的一个技术质量标准,也就是1把钥匙能开几把锁的比率。经国家工商局、国家内贸局、中国消协等部门对锁具市场的调查,发现个别产品的互开率居然超标26倍。
为什么弹子锁的“互开率”会如此之高?据有关专家人士剖析,弹子锁质量好坏重要取决于弹子数量的多少以及弹子的大小,而弹子的多少和大小受一定条件的限制。此外,即使是一把质量过关的机械锁,通过急开锁,甚至可以在不损坏锁的前提下将锁打开。机械锁的这些弊端为一种新型的锁---电子密码锁,提供了发展的空间。
2.2
电子锁
电子锁是采用电子电路控制,以电磁铁或者卫星电机和锁体作为执行装置的机电一体化锁具,相比传统的机械锁具,电子锁不使用金属钥匙,保密性、精度都有很大提高。
电子锁的发明思绪,源自古代发明的自动机械,例如古希腊数学家赫伦的液压自动门,中国古代诸葛亮的木牛流马,它们以重力或蒸汽压力驱动,最广泛的用途乃是用在古代墓道的地下机关。电子工业的诞生,使得以微小电量驱动机械成为也许,于是有了电子锁一日千里的跃进。
三、课题规定
本次课程设计,基于8051单片机电子密码锁的设计,运用4*4小键盘作为输入,LED作为显示。当输入密码和设定的密码一致时,系统运用继电器输出解锁信号,其重要具有如下功能:
(1)设立6位密码,密码通过键盘输入,若密码对的,则将锁打开。
(2)密码可以由用户自己修改设定(只支持6位密码),锁打开后才干
改密码。修改密码之前必须再次输入密码,在输入新密码时候需要二次确
以防止误操作。
(3)报警、锁定键盘功能。密码输入用发光管显示,当连续3次输入错误
密码,系统声光报警。四、
课题分析
电路重要涉及矩阵键盘输入密码,外部密码验证,单片控制,原理方框图如下:
4.1矩阵键盘输入控制电路
设计方案是非编码键盘,每条行线和列线都相应一条I/O口线,键位设在行线和列线的交叉点,当一个键按下就会有某一条行线与某一条列线接触,只要拟定接触的是哪两条线,即哪两个I/O口线,就可以拟定哪一个键被触动。
行线设计成上拉口线,初始时被置高电位,列线悬空,初始置低。通过不断读行线口线,或者中断方式触发键位扫描。
当发现有键按下,将列线逐个置低,其他列线置高,读行线口线。当某条列线置低时,某条行线也被拉低,则拟定这两条线的交点处的按钮被按下。
将每个行线和列线的组合值作成列表,每次就可以通过查表拟定键位,以决定之后要进行的操作。
五、课题方案选择
方案一:使用8051单片机,采用汇编语言编写程序,该程序语言功能强大,调试较为方便,具有很强的实用性。
方案二:运用数字逻辑电路,运用电压比较器,555单稳态电路,计数器,JK触发器,UPS电源等实现对门的电子控制。
方案三:使用8051单片机,运用基于单片机的C语言编写程序,通过Keil
C51
uVision2软件进行仿真模拟。
方案二基于数字电路,操作繁琐,会出现较多的器件故障,同时调试复杂,难于维护。方案三该逻辑语言较为复杂,编写程序时也较为复杂,还需进行软件仿真模拟,设计复杂。综上所述,使用方案一,设计较为简便,调试简朴,硬件电路较少,易于维护。六、程序部分
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,@R0INC
R0
MOV
@R0,ADEC
R0
DJNZ
R7,SETD
POP
ACC
MOV
@R0,A
MOV
7DH,7CH
CJNE
,A,#0AH,LOP
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
ACCBLK3:
LCALL
DISP
LCALL
BKS
JNZ
BLK3
POP
ACC
CJNE
A,#10H,PP
PP:
JNC
PP1
MOV
DPTR,#TBL
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,R2JNB
ACC.7,BKLD
RL
A
MOV
R2,A
SJMP
BLK4
BLKD:
SJMP
KEYBBKS:
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
MOV
30H,7EH
MOV
31H,7DH
MOV
32H,7CH
MOV
33H,7BH
MOV
34H,7AH
MOV
35H,79HRET
---------------------------------
COMP:
MOV
R1,#40H
MOV
A,@R1
CJNE
A,30H,
MORE
INC
R1
MOV
A,@R1
CJNE
A,31H,
MORE
INC
R1
MOV
A,@R1
CJNE
A,32H,
MORE
INC
R1
MOV
A,@R1
CJNE
A,33H,
MORE
INC
R1
MOV
A,@R1
CJNE
A,34H,
MORE
SJMP
K
MORE:
INC
R3
CLR
P3.2
K:
RET
END
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,INITLOP:
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
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
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
MOV
30H,7EH
MOV
31H,7DH
MOV
32H,7CH
MOV
33H,7BH
MOV
34H,7AH
MOV
35H,79H
RET
---------------------------------
COMP:
MOV
R1,#40H
MOV
A,@R1
CJNE
A,30H,
MORE
INC
R1
MOV
A,@R1
CJNE
A,31H,
MORE
INC
R1
MOV
A,@R1
CJNE
A,32H,
MORE
INC
R1
MOV
A,@R1
CJNE
A,33H,
MORE
INC
R1
MOV
A,@R1
CJNE
A,34H,
MORE
SJMP
K
MORE:
INC
R3
CLR
P3.2
K:
RET
END
七、
系统调试
电子密码锁重要由矩阵键盘,LED数码显示器,提醒灯,单片机程序组成。
调试部分重要是数码显示和程序细节的调试。数码管调试重要是看其能否完整显示6位数字。不可以显示只能重新换过。
程序的调试是比较复杂的部分,它又可以分为比较部分和键盘部分。
一方面在输入程序时,应当先输入键盘部分,然后单
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年汕尾道路客运输从业资格证理论考试题
- 2024年高速公路劳务分包合同范本
- 2024年兰州客运资格证应用能力试题答案
- 2024年公司之间借款合同范文
- 2024年送餐合同范本
- 2024年劳务用工合同书范本
- 2019年江苏宿迁中考满分作文《我给成长留下的》
- 2024年施工劳动合同范本
- 2024年合伙协议合同
- 2024年居民房租赁合同
- 中华民族发展史智慧树知到期末考试答案2024年
- 《新闻采访与写作》笔记
- 初中语文朗读教学设计案例分析
- MOOC 电工技术与实训-深圳职业技术学院 中国大学慕课答案
- 2024年云南省大数据有限公司招聘笔试参考题库附带答案详解
- 《外科护理》课件-13.3.1食管癌病人的护理
- 《养老护理员》-课件:自然灾害的应对处理知识
- 2023年事业单位联考A类《综合应用能力》试题及答案
- 法理学(第五版)课件第二十章法的价值概述
- 数据真实性承诺书
- 国家能源集团历年笔试题
评论
0/150
提交评论