好好学习,天天向上,一流范文网欢迎您!
当前位置:首页 >> 最新范文 内容页

电子密码锁设计报告

电子密码锁设计报告 本文关键词:密码锁,报告,设计,电子

电子密码锁设计报告 本文简介:湖南工程学院课程设计任务书课程名称单片机原理与应用课题电子密码锁设计专业班级电子信息0801学生姓名学号指导老师周向红、李晓秀、赵葵银审批周向红任务书下达日期2011年5月9日任务完成日期2011年5月25日设计内容与设计要求设计内容:以51系列单片机为核心,以开发板为平台;设计一个电子密码锁,要求

电子密码锁设计报告 本文内容:

湖南工程学院

课程名称

单片机原理与应用

电子密码锁设计

专业班级

电子信息0801

学生姓名

指导老师

周向红、李晓秀、赵葵银

周向红

任务书下达日期

2011年

5月

9

任务完成日期

2011年

5月

25

设计内容与设计要求

设计内容:

以51系列单片机为核心,以开发板为平台;设计一个电子密码锁,要求能完成密码锁的基本功能:能完成密码的输入(4~6位)、显示;并确认,如正确,则开锁,反之,不开锁,重新输入密码;如3次输入密码错误,则报警。设计任务包括控制系统硬件设计和应用程序设计。

设计要求:

1)确定系统设计方案

2)进行系统的硬件设计;

3)完成必要元器件选择;

4)开发板焊接及测试

5)系统软件设计及调试;

6)系统联调及操作说明

7)写说明书

1、

MCS-51单片机实验操作台1台;

2、

PC机及单片机调试软件,仿真软件proteus;

3、

开发板1块;

4、

制作工具1套;

5、系统设计所需的元器件。

第1章、概述

第2章、系统总体方案设计

第3章

硬件设计

第4章

软件设计及调试

第5章

系统联调及操作说明

第6章

总结

参考文献

附录A

系统硬件原理图

附录B

程序清单

设计时间分为二周

第一周

星期一、上午:布置课题任务,课题介绍及讲课。

下午:借阅有关资料,总体方案讨论。

星期二、分班级焊接开发板

星期三、确定总体方案,学习与设计相关内容。

星期四、各部分方案设计,各部分设计。

星期五、设计及上机调试。

星期六、设计并调试

第二周

星期一:设计及上机调试。

星期二:调试,中期检查。

星期三:调试、写说明书。

星期四--星期五上午:写说明书、完成电子版并打印成稿。

星期五下午:答辩。

1、

王迎旭编.《单片机原理与应用》[M].机械工业出版社.

2、

楼然苗编.《51系列单片机设计实例》[M].北京航空航天大学出版社.

3、

黄勤编.《计算机硬件技术基础实验教程》[M].重庆大学出版社

4、刘乐善编.《微型计算机接口技术及应用》[M].华中科技大学出版社.

5、陈光东编.《单片微型计算机原理及接口技术》[M].华中科技大学出版社.

第1章

概述

.P7

第2章

系统总体方案设计

.P8

第3章

硬件设计

.P9

第4章

软件设计及调试

.P12

第5章

总结

.P15

第6章

参考文献

.P15

第7章

附录A

系统硬件原理图

.P16

第8章

附录B

程序清单

.P16

第1章

密码锁是一种通过密码输入来控制电路或是芯片工作,从而控制机械开关的闭合,完成开锁、闭锁任务的电子产品。它的种类很多,有简易的电路产品,也有基于芯片的性价比较高的产品。现在应用较广的数字密码锁是以芯片为核心,通过编程来实现的。其性能和安全性已大大超过了机械锁。其特点是保密性好,随机开锁成功率几乎为零。密码可变,用户可以随时更改密码,防止密码被盗,同时也可以避免因人员的更替而使锁的密级下降。无活动零件,不会磨损,寿命长。使用灵活性好,不像机械锁必须佩带钥匙才能开锁。数字密码锁操作简单易行,一学就会。

本设计使用软件仿真,实现了既定的功能和要求,能使系统正确地开启密码锁和更改密码,而数码管能够正确地显示输入密码。本实验设计了16个开关按键,每次按下键需要检验是否确实按下,若是则输入密码;否则,就等待按键按下。

关键字:AT89C51、7段LED数码管、74LS247、74LS138、与非门、4*4矩阵键盘等

第2章

系统总体方案设计

3输入错误锁定键盘

用以AT89S51为核心的单片机控制方案。利用单片机灵活的编程设计和丰富的IO端口,及其控制的准确性,完成设计的要求和功能。其原理如图所示。

矩阵

键盘

控制

89S51

单片机

复位电路

开锁控制电路

3次输入错误延时报警电路

串口显示电路

单片机控制方案

初步设计思路如下:

输入密码用矩形键盘,包括数字键和功能键。

LED数码管显示输入密码,用74JS247驱动数码管发光显示数码,用74LS138控制各位显示器分时进行显示。

用发光二极管代替开锁的电路,发光表示开锁。

输入密码错误次数超过3次,系统报警(用红色LED灯代替)。

打开电源后,显示器显示“000000”,设原始密码为“123456”,只要输入此密码便了开门。这样可预防停电后再来电时无密码可用。按“#”键,清除显示器为“000000”。欲重新设定密码,先输入密码在按“*”。

输入密码,再按“D”键。若密码与设定密码相同,则开门。否则显示器清为“000000”。

第3章

硬件电路设计

3.1

键盘电路设计

使用矩阵键盘,所以本设计就采用行列式键盘,同时也能减少键盘与单片机接口时所占用的I/O线的数目,在按键比较多的时候,通常采用这样方法。其原理如下图:

矩阵键盘

每一条水平(行线)与垂直线(列线)的交叉处不相通,而是通过一个按键来连通,利用这种行列式矩阵结构只需要N条行线和M条列线,即可组成具有N×M个按键的键盘。

在这种行列式矩阵键盘非键盘编码的单片机系统中,键盘处理程序首先执行等待按键并确认有无按键按下的程序段。

当确认有按键按下后,下一步就要识别哪一个按键按下。对键的识别通常有两种方法:一种是常用的逐行扫描查询法;另一种是速度较快的线反转法。

对照图所示的4×4键盘,说明线反转个工作原理。

首先辨别键盘中有无键按下,有单片机I/O口向键盘送全扫描字,然后读入行线状态来判断。方法是:向行线输出全扫描字00H,把全部列线置为低电平,然后将列线的电平状态读入累加器A中。如果有按键按下,总会有一根行线电平被拉至低电平从而使行线不全为1。

判断键盘中哪一个键被按下使通过将列线逐列置低电平后,检查行输入状态来实现的。方法是:依次给列线送低电平,然后查所有行线状态,如果全为1,则所按下的键不在此列;如果不全为1,则所按下的键必在此列,而且是在与零电平行线相交的交点上的那个键。

具体的功能设计如表:

按键功能表

1-9键

D键

#

使

3.2

LED显示电路

本系统设计的显示电路是为了给使用者以提示而设置的。本系统的显示采用串行显示的方式,只使用单片机的一个串行口,利用74LS247驱动数码管发光显示数码和74LS138控制位选信号,就可以完成单片机的显示功能,显示电路的电路原理图如图所示。LED显示为4位共阳极显示器,用P0.0—P0.3接74LS247的A,B,C,D四端口,74LS247的输出口接LED的七段显示(输出端低电平有效);而P0.4—P0.6接74LS138的A,B,C三个输入口,74LS138的输出口接LED的位显示。通过软件实现数字和位控制。

LED显示电路

3.3

开锁电路

在本次设计中,基于节省材料的原则,暂时用发光二极管代替电磁锁,发光管亮,表示开锁;灭,表示没有开锁。电路图如下所示。当P2.0口输出低电平时,二极管发光,表示开锁。

开锁电路

3.4报警电路

报警模块由红色LED灯和单片机组成。当89C51的P2.1口输出为低电平时,红色LED灯亮,89C51输出为高电平时,红色LED灯处于熄灭状态。

第四章

软件设计

4.1软件设计思路

电子密码锁工作的主要过程是LED数码管提示开始输入密码,通过键盘输入密码,同时LED显示密码输入情况,按下确认键后判断密码的正确性,作出开锁或报警处理。当输入密码连续输入错误3次时,系统报警。

密码的设定,在此程序中密码是固定40H—45H中,假设预设的密码为“123456“共6位密码。

由于采用两个按键来完成密码的输入,那么其中一个按键为功能键,另一个按键为数字键。在输入过程中,首先输入密码的长度,接着根据密码的长度输入密码的位数,直到所有长度的密码都已经输入完毕;或者输入确认功能键之后,才能完成密码的输入过程。进入密码的判断比较处理状态并给出相应的处理过程。

4.2

各子程序设计

通过流程图来体现各个子程序的工作原理,及程序执行情况和功能。

4.2.1

、键盘扫描子程序流程图:

键盘扫描流程图

4.2.2

、LED显示子程序流程图:

LED显示流程图

4.2.3、

密码比较和报警程序警流程图:

密码比较和报警流程

4.2.4、延时子程序说明:

我们的延时子程序通过软件延时,也就是先个两个寄存器分别赋予初值,然后减一之后判断是否为零,都为零时延时结束,不为零继续执行,从而实现延时。

第五章

总结

第六章

参考文献

1.王迎旭编.《单片机原理与应用》[M].机械工业出版社.

2.楼然苗编.《51系列单片机设计实例》[M].北京航空航天大学出版社.

3.黄勤编.《计算机硬件技术基础实验教程》[M].重庆大学出版社

4.刘乐善编.《微型计算机接口技术及应用》[M].华中科技大学出版社.

5.陈光东编.《单片微型计算机原理及接口技术》[M].华中科技大学出版社.

第七章

附录A

系统硬件原理图

第八章

附录B

程序清单

ORG

0000H

;程序初始化及原始密码输入程序

MOV

R7,#00H

DJNZ

R7,$

MOV

R7,#10H

MOV

R6,#06H

MOV

R1,#35H

MOV

R5,#00H

L1:

MOV

A,R7

MOV

DPTR,#TABLE

MOVC

A,@A+DPTR

MOV

@R1,A

DEC

R1

INC

R7

DJNZ

R6,L1

START:

MOV

P2,#0FFH

;键盘扫描程序

MOV

R4,#06H

MOV

R0,#40H

CLEAR:

MOV

@R0,#00H

INC

R0

DJNZ

R4,CLEAR

L2:

MOV

R3,#0F7H

MOV

R1,#00H

L3:

MOV

A,R3

MOV

P1,A

MOV

A,P1

MOV

R4,A

SETB

C

MOV

R6,#04H

L4:

RLC

A

JNC

KEYIN

INC

R1

DJNZ

R6,L4

CALL

DISP

MOV

A,R3

SETB

C

RRC

A

MOV

R3,A

JC

L3

JMP

L2

KEYIN:

MOV

A,R1

;判断键值程序

XRL

A,#0BH

JZ

X3

MOV

A,R1

XRL

A,#0FH

JZ

X4

MOV

R7,#10

D1:

MOV

R6,#24

DJNZ

R6,$

DJNZ

R7,D1

D2:

MOV

A,P1

XRL

A,R4

JZ

D2

MOV

A,R1

MOV

DPTR,#TABLE

MOVC

A,@A+DPTR

MOV

R7,A

MOV

A,R7

XRL

A,#0AH

JZ

SET0

MOV

A,R7

XRL

A,#0BH

JZ

START

MOV

A,R7

XRL

A,#0CH

JZ

L2

MOV

A,R7

XRL

A,#0DH

JZ

L2

MOV

A,R7

XRL

A,#0EH

JZ

L2

MOV

A,R7

XCH

A,40H

XCH

A,41H

XCH

A,42H

XCH

A,43H

XCH

A,44H

XCH

A,45H

CALL

DISP

JMP

L2

X3:

JMP

DISP2

X4:

JMP

COMP

DISP:

MOV

R0,#45H

;显示程序

MOV

A,@R0

ADD

A,#50H

MOV

P0,A

CALL

DELAY

DEC

R0

MOV

A,@R0

ADD

A,#40H

MOV

P0,A

CALL

DELAY

DEC

R0

MOV

A,@R0

ADD

A,#30H

MOV

P0,A

CALL

DELAY

DEC

R0

MOV

A,@R0

ADD

A,#20H

MOV

P0,A

CALL

DELAY

DEC

R0

MOV

A,@R0

ADD

A,#10H

MOV

P0,A

CALL

DELAY

DEC

R0

MOV

A,@R0

ADD

A,#00H

MOV

P0,A

CALL

DELAY

RET

SET0:

MOV

R2,#06H

;重设密码程序

MOV

R0,#45H

MOV

R1,#35H

E1:

MOV

A,@R0

XCH

A,@R1

DEC

R0

DEC

R1

DJNZ

R2,E1

CALL

DELAY

E2:

JMP

START

COMP:

MOV

R1,#45H

;密码比较

MOV

R0,#35H

MOV

R2,#06H

C1:

MOV

A,@R1

XRL

A,@R0

JNZ

C3

;错误跳转

DEC

R1

DEC

R0

DJNZ

R2,C1

CLR

P2.0

MOV

R1,#50

;密码正确

CC2:

MOV

R2,#100

C2:

MOV

R6,#100

DJNZ

R6,$

DJNZ

R2,C2

DJNZ

R1,CC2

JMP

START

C3:

CLR

P2.2

;密码错误显示

MOV

R1,#10

CC5:

MOV

R2,#100

C5:

MOV

R6,#100

DJNZ

R6,$

DJNZ

R2,C5

DJNZ

R1,CC5

INC

46H

MOV

A,46H

CJNE

A,#03H,CC4

;错误是否有3次判断

MOV

46H,#00H

ACALL

K1

CC4:

JC

C4

C4:

JMP

START

K1:

SETB

P2.2

MOV

R0,#3

K11:

CLR

P2.1

MOV

R2,#20

KK1:

MOV

R3,#50

KK2:

MOV

R4,#100

DJNZ

R4,$

DJNZ

R3,KK2

DJNZ

R2,KK1

RET

DISP2:

MOV

R0,#35H

;清零程序

CALL

DISP

MOV

A,P1

XRL

A,R4

JZ

DISP2

CALL

DELAY

JMP

START

DELAY:

MOV

R7,#93

;延时子程序

D3:

MOV

R6,#248

DJNZ

R7,D3

RET

ORG

0300H

TABLE:

DB

01H,02H,03H,0CH

DB

04H,05H,06H,0DH

DB

07H,08H,09H,0EH

DB

0AH,00H,0BH,0FH

DB

01H,02H,03H,04H,05H,06H

END

电气与信息工程系课程设计评分表

设计方案的合理性与创造性

开发板焊接及其调试完成情况

硬件设计或软件编程完成情况*

硬件测试及软件调试结果*

设计说明书质量

设计图纸质量

答辩汇报的条理性和独特见解

答辩中对所提问题的回答情况

完成任务情况

独立工作能力

组织纪律性(出勤率)

综合评分

指导教师签名:________________

期:________________

注:①表中标*号项目是硬件制作或软件编程类课题必填内容;

②此表装订在课程设计说明书的最后一页。课程设计说明书装订顺序:封面、任务书、目录、正文、评分表、附件(非16K大小的图纸及程序清单)。

23

TAG标签: