基于单片机的电子密码锁设计.docx

上传人:b****2 文档编号:1989398 上传时间:2022-10-25 格式:DOCX 页数:15 大小:132.36KB
下载 相关 举报
基于单片机的电子密码锁设计.docx_第1页
第1页 / 共15页
基于单片机的电子密码锁设计.docx_第2页
第2页 / 共15页
基于单片机的电子密码锁设计.docx_第3页
第3页 / 共15页
基于单片机的电子密码锁设计.docx_第4页
第4页 / 共15页
基于单片机的电子密码锁设计.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

基于单片机的电子密码锁设计.docx

《基于单片机的电子密码锁设计.docx》由会员分享,可在线阅读,更多相关《基于单片机的电子密码锁设计.docx(15页珍藏版)》请在冰豆网上搜索。

基于单片机的电子密码锁设计.docx

基于单片机的电子密码锁设计

机械与电子工程学院

课程设计报告

 

课程名称单片机课程设计

设计题目基于单片机的电子密码锁

所学专业名称电气工程及其自动化

班级

学号

学生姓名

指导教师

 

机电学院单片机课程设计

任务书

设计名称:

基于单片机的电子密码锁

学生姓名:

指导教师:

起止时间:

一、课程设计目的

设计一种基于基于单片机的电子密码锁。

二、课程设计任务和基本要求

设计任务:

当密码输入正确之后,锁就打开,如果输入的三次的密码不正确,就锁定按键3秒钟,同时发现报警声,直到没有按键按下1分钟后,才取消按键锁定功能;否则在3秒钟内仍有按键按下,就重新锁定按键3秒时间并报警

基本要求:

1、采用二个按键实现密码的输入功能,密码长度为3位;

2、开锁信号可用发光二极管指示。

3.撰写课程设计论文符合模板相关要求,字数要求3000字以上。

机电学院单片机课程设计

指导老师评价表

院(部)

机电学院

年级专业

电气工程及其自动化

学生姓名

学生学号

题目

基于单片机的电子密码锁

一、指导老师评语

 

指导老师签名:

年月日

二、成绩评定

 

指导老师签名:

年月日

目录

1前言3

1.1设计背景3

1.2电子密码锁发展趋势4

2总体设计方案的确定5

2.1电子密码锁设计的具体要求5

2.2总体设计方案选定5

3系统硬件设计7

3.1单片机AT89S51简介7

3.1.1主要特性7

3.1.2引脚功能说明8

3.2AT89S51相对于89C51增加的新功能包括:

9

3.3液晶显示FYD12864的介绍10

3.3.1基本特性10

3.3.2方框图11

3.3.3模块接口说明11

3.4硬件电路的设计13

3.4.1最小系统的设计13

3.4.2芯片擦除15

3.4.3开锁机构15

3.4.4键盘设计16

3.4.5显示电路设计17

3.5电路设计总图18

4系统软件设计20

4.1主程序模块20

4.2键盘扫描及识别子程序21

4.3系统模块密码设置子程序23

4.4程序调试23

参考文献26

附录电子密码锁程序源代码29

摘要

本论文详细地论述了以单片机为处理器的密码锁自动控制器的硬件、软件设计和系统编程的问题。

本控制器以ATMEL公司的AT89S51单片机为核心键盘、显示电路,输出控制电路,告警提示电路等构成。

利用目前使用的微处理器AT89S51作为控制元件设计了一种电子密码锁。

其具有可设置多组密码、多次改写和保存密码的优点,克服了普通锁需要随身携带钥匙且易丢失、保密性差的缺点,在宾馆、办公大楼、仓库、保险柜和家庭普遍适用。

关键词AT89S51LCD12864电子密码锁4×4矩阵键盘

 

1前言1.1设计背景

电子密码锁应用于金融业,其根本的作用是“授权”,即被“授权”的人才可以存取钱、物。

广义上讲,金融业的“授权”主要包括以下三种层次的内容:

1、授予保管权,如使用保管箱、保险箱和保险柜;2、授予出入权,如出入金库、运钞车和保管室;3、授予流通权,如自动存取款。

目前,金融行业电子密码锁的应用主要集中在前两个层面上。

一般情况下,锁具防盗的关键是锁身外壳、闭锁的部件的强度、锁止型式、配合间隙和布局。

提高电子密码锁之防护能力的必然途径是报警,在金融业的许多场所有人值守、有电视监控,具有报警功能,可以综合物理防范和人力防范两种作用。

报警的前提是具备探测功能,根据电子密码锁的使用场所和防护要求,可选择多种多样的探测手段。

在中国的城市金融业中,实现联网报警已经成为对各金融网点的基本要求。

根据国内外的实践经验,金融业实行安全防范风险等级很有必要,即依据使用的防盗报警器材的性能、安装布局和人员值守状况等,可以评估被防护物或区域的防护能力,得出风险等级,其中,电子密码锁的性能至关重要。

1.2设计目标

1、采用二个按键实现密码的输入功能,密码长度为3位;

2、当密码输入正确之后,锁就打开,如果输入的三次的密码不正确,就锁定按键3秒钟,同时发现报警声,直到没有按键按下1分钟后,才取消按键锁定功能;否则在3秒钟内仍有按键按下,就重新锁定按键3秒时间并报警;

3、开锁信号可用发光二极管指示。

2总体设计方案

选用单片机AT89S51作为本设计的核心元件,利用单片机灵活的编程设计和丰富的IO端口,及其控制的准确性,实现基本的密码锁功能。

在单片机的外围电路外接输入键盘用于密码的输入和一些功能的控制,外接LCD1602显示器用于显示作用。

其原理如下图2.1所示:

图2-1单片机控制密码锁原理图

2.1系统的组成

如图1所示系统框图:

主要由电源电路、矩阵电路、单片机最小系统、报警电路、显示电路等几部分组成。

其中矩阵电路用于输入数字的密码和进行各种功能的实现。

可以通过连接单片机的矩阵键盘输入密码,后经过单片机对用户输入的密码与自己保存的密码进行对比,从而判断密码是否正确,然后控制引脚的高低电平传到开锁电路或者报警电路控制开锁还是报警。

LCD则是显示密码的输入进程的,输入正确则会显示开锁成功,同时发光二级管灯亮。

电源电路提供电压电流保证。

从而使系统电路顺利工作。

图2-2系统原理方框图

2.2系统工作原理

如图2所示电路原理图,是以单片机为主要控制中心,外部连接LCD1602,矩阵键盘电路,电源电路,报警电路,复位电路等。

其中P3.0——P3.7口接矩阵键盘电路,XTAL1和XTAl2接晶振电路,P2.0口接报警电路,P0口接LCD显示电路,RST接复位电路。

每个电路都是由单片机控制,从而实现系统的功能。

图2-3电路原理图

 

3系统硬件设计3.1单片机AT89S51简介

AT89S51是美国ATMEL公司生产的低功耗,高性能CMOS8位单片机,片内含4kbytes的可系统编程的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准8051指令系统及引脚。

它集Flash程序存储器,既可在线编程(ISP)也可用传统方法进行编程及通用8位微处理器于单片芯片中,ATMEL公司的功能强大,低价位AT89S51单片机可为您提供许多高性价比的应用场合,可灵活应用于各种控制领域。

3.2液晶显示FYD12864的介绍3.3.1基本特性

低电源电压(VDD:

+3.0--+5.5V);

显示分辨率:

128×64点;

内置汉字字库,提供8192个16×16点阵汉字(简繁体可选);

内置128个16×8点阵字符;

2MHZ时钟频率;

显示方式:

STN、半透、正显;

驱动方式:

1/32DUTY,1/5BIAS;

驱动方式:

1/32DUTY,1/5BIAS;

视角方向:

6点;

通讯方式:

串行、并口可选;

工作温度:

0℃-+55℃,存储温度:

-20℃-+60℃;3.2硬件电路的设计

本设计单片机硬件资源的分配:

P0.0~P0.7用于LCD液晶显示作用。

P3.0、P3.7用于蜂鸣器和报警灯的控制。

P2.0用于开锁电路的控制。

P1.0~P1.7用于键盘电路的控制。

P2.0~P2.4用于LCD显示模块的控制端口的控制。

用户通过LCD提示信息,用键盘输入正确密码,从而达到开锁的目的。

当用户输入的密码正确并且是在按下确定键的话,单片机便输出开门信号,送到开锁驱动电路,然后驱动电磁锁,达到开门的目的。

电路驱动和开锁两级组成。

由D5、R1、T10组成驱动电路,其中T10可以选择普通的小功率三极管如9014、9018都可以满足要求。

D5作为开锁的提示;由D6、C24、T11组成。

其中D6、C24是为了消除电磁锁可能产生的反向高电压以及可能产生的电磁干扰。

T11可选用中功率的三极管如8050,电磁锁的选用要视情况而定,但是吸合力要足够且由一定的余量。

在本次设计中,基于节省材料的原则,暂时用发光二极管代替电磁锁,发光管亮,表示开锁;灭,表示没有开锁。

图3-1密码锁开锁机构电路图

3.3键盘设计

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

把每个键都分成水平和垂直的两端接入,比如说扫描码是从垂直的入,那就代表那一行所接收到的扫描码是同一个bit,而读入扫描码的则是水平,扫描的动作是先输入扫描码,再去读取输入的值,经过比对之后就可知道是哪个键被按下。

由於这种按键是机械式的开关,当按键被按下时,键会震动一小段时间才稳定,为了避免让8051误判为多次输入同一按键,

我们必须在侦测到有按键被按下,就Delay一小段时间,使键盘以达稳定状态,再去判读所按下的键,就可以让键盘的输入稳定。

图3.8为键盘整体模框图:

图3-2键盘整体模框图

3.4电路设计总图

Proteus软件是LabcenterElectronics公司的一款电路设计与仿真软件,它包括ISIS、ARES等软件模块,ARES模块主要用来完成PCB的设计,而ISIS模块用来完成电路原理图的布图与仿真。

Proteus的软件仿真基于VSM技术,它与其他软件最大的不同也是最大的优势就在于它能仿真大量的单片机芯片,比如MCS-51系列、PIC系列等等,以及单片机外围电路,比如键盘、LED、LCD等等。

通过Proteus软件的使用我们能够轻易地获得一个功能齐全、实用方便的单片机实验室。

本密码锁采用proteus进行电路图设计,经过元件选型,用万能实验版进行硬件焊接,以实现硬件部分。

下图为proteus设计的密码锁电路图整体抓图

图3-4密码锁电路图整体抓图

4系统调试

因设计主要是作用汇编语言来开发的51单片机项目程序,所以首先必须有一个可以在WindowsXP或Windowsvista操作系统下执行的汇编语言编译器,本设计采用Keil编译器进行编程,因为它可以支持一系列51单片。

图4-1主程序的流程图

4.1主程序模块

主程序主要是完成系统初始化、设置中断向量、检查有无键按下、以及调用显示等等。

主程序部分如下所示:

voidmain()

{

ucharm=0;

EA=1;

EX0=1;

IT0=0;

LED=0;

LED1=0;

InitLCD();//初始12864

ClearScreen(0);//清屏

SetStartLine(0);//显示开始行

while

(1)

{

jianpan();

if(flag==2)

{}

if(m==3)

{}

if(flag==1)

{}

}

}

voidEX_INT0()interrupt0

{

shizhi();

delay(2000);

}

4.2键盘扫描及识别子程序

键盘采用查询的方式,放在主程序中,当没有按键按下的时候,单片机循环主程序,一旦有按键按下,便转向相应的子程序处理,处理结束再返回。

其程序流程如图4.2所示

键盘部分程序如下:

key:

;键盘程序名称

callks;调用子程序ks

jnzk1;判断是否有键按下

jmpkey;跳回键盘程序

ks:

movp1,#0f0h;

mova,p1;

xrla,#0f0h;

re

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 人文社科 > 法律资料

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1