简单六位数字密码锁

简单六位数字密码锁
简单六位数字密码锁

简单六位数字密码锁 This manuscript was revised on November 28, 2020

目录

第1章绪论

设计任务

(1)设置七个键位,分别是确认,数字1,数字2,数字3,数字4,数字5,数字6,工作有提示(设通电状态为红灯亮)。

(2)在单片机内部预设六位密码,在使用密码解锁器时,要按预设的密码依次输入才能完成解锁。预设密码以外的数字都不能解开密码锁(如输入非6位或输入6位与预设密码不同的数字)。

(3)输入密码时,数码管同步显示输入的数字。

(4)输入正确后,有解锁提示(设为绿灯亮),输入错误后也有提示(设为红灯闪烁和鸣笛警告)

(5)输入错误后可以重输,要有复位功能。

设计要求

利用AT89S52单片机的P2端口的连接到7个按键开关上,分别是输入键数字1,数字2,数字3,数字4,数字5,数字6和确认键,接蜂鸣器。启动时,按下电源开关,红色指示灯长亮,输入密码,而数码管显示输入的相应数字,然后按下确认键,若密码正确,绿灯亮,数码管熄灭,弱密码错误,红灯闪烁,蜂鸣器响,发出警报。

第2章系统方案设计

硬件设计思想

键盘设计

本设计使用7按键,从上到下,从左至右依次设为确认键,数字1,数字2,数字3,数字4,数字5,数字6,用来输入密码,如下图

图键盘仿真图

数字显示设计

使用共阳极七段数码管来显示输入的数字,图如下:

图显示仿真图

检验密码电路设计

使用LED灯和蜂鸣器来提示输入的密码是否正确,若密码正确,绿灯亮,若密码错误,红灯闪烁,蜂鸣器响,电路如图:

图密码验证系统仿真图

软件设计思想

电子密码锁工作的主要过程是从键盘开始输入密码,同时LED显示密码输入情况,按下确认键后判断密码的正确性,作出开锁或报警处理。

密码的设定,在此程序中密码是固定的,预设的密码为"532416"共6位密码。

在单片机内部预设六位密码,在使用密码解锁器时,要按预设的密码依次输入才能完成解锁。预设密码以外的数字都不能解开密码锁(如输入非6位或输入6位与预设密码不同的数字)

输入密码时,数码管要在单片机的控制下同步显示输入的数字。

第3章电路设计

电路原理

单片机最小系统。一个AT89S52单片机做为控制电路,运用其P2口来实现密码的输入和蜂鸣器的报警,通过P0口给数码显示管高低不同电平信号,来实现输入密码的显示,P1接指示灯。

电路原理图

图电路原理图

第4章程序设计

流程图

图系统流程图

算法描述

1、设计一个延时子程序

void delayms(unsigned int t)

{

unsigned int i,j;

for(i=t;i>0;i--)

for(j=114;j>0;j--);

}

2、主程序

void init()

void delayms(unsigned int t)

void main()

第5章程序清单与仿真结果

程序清单

#include<>

sbit mm1=P2^0;CS51系列单片机系统及其应用[M].北京:高等教育出版社,1992.

[2]何立民.单片机应用技术选篇(5)[M].北京:北京航空航天大学出版社,1997.

[3]杨光友. 单片机微型计算机原理及接口技术[M].北京:中国水利水电出版社,2002

[4]李广弟.单片机基础[M].北京:北京航空航天大学出版社,1994

[5]阎石.数字电子技术基础(第三版). 北京:高等教育出版社,1989

致谢

感谢刘伟春老师对我的指导和悉心帮助和包容。还有同组同学的团队合作,在李星亮老师的悉心指导下我们完成了这次课程设计。课程设计的过程是苦的但也是快乐的。感谢老师和同学的帮助没有你们就没有这编论文,没有你们不可能做出来,再感谢你们。

实物展示

密码错误后红灯亮并发出蜂鸣声

数字密码“5”

数字密码“3”

数字密码“2”

数字密码“4”

数字密码“1”

数字密码“6”

密码输入正确后绿灯亮

相关主题
相关文档
最新文档