单片机控制的电子密码锁系统设计文档格式.docx

上传人:b****5 文档编号:8366568 上传时间:2023-05-11 格式:DOCX 页数:37 大小:470.32KB
下载 相关 举报
单片机控制的电子密码锁系统设计文档格式.docx_第1页
第1页 / 共37页
单片机控制的电子密码锁系统设计文档格式.docx_第2页
第2页 / 共37页
单片机控制的电子密码锁系统设计文档格式.docx_第3页
第3页 / 共37页
单片机控制的电子密码锁系统设计文档格式.docx_第4页
第4页 / 共37页
单片机控制的电子密码锁系统设计文档格式.docx_第5页
第5页 / 共37页
单片机控制的电子密码锁系统设计文档格式.docx_第6页
第6页 / 共37页
单片机控制的电子密码锁系统设计文档格式.docx_第7页
第7页 / 共37页
单片机控制的电子密码锁系统设计文档格式.docx_第8页
第8页 / 共37页
单片机控制的电子密码锁系统设计文档格式.docx_第9页
第9页 / 共37页
单片机控制的电子密码锁系统设计文档格式.docx_第10页
第10页 / 共37页
单片机控制的电子密码锁系统设计文档格式.docx_第11页
第11页 / 共37页
单片机控制的电子密码锁系统设计文档格式.docx_第12页
第12页 / 共37页
单片机控制的电子密码锁系统设计文档格式.docx_第13页
第13页 / 共37页
单片机控制的电子密码锁系统设计文档格式.docx_第14页
第14页 / 共37页
单片机控制的电子密码锁系统设计文档格式.docx_第15页
第15页 / 共37页
单片机控制的电子密码锁系统设计文档格式.docx_第16页
第16页 / 共37页
单片机控制的电子密码锁系统设计文档格式.docx_第17页
第17页 / 共37页
单片机控制的电子密码锁系统设计文档格式.docx_第18页
第18页 / 共37页
单片机控制的电子密码锁系统设计文档格式.docx_第19页
第19页 / 共37页
单片机控制的电子密码锁系统设计文档格式.docx_第20页
第20页 / 共37页
亲,该文档总共37页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

单片机控制的电子密码锁系统设计文档格式.docx

《单片机控制的电子密码锁系统设计文档格式.docx》由会员分享,可在线阅读,更多相关《单片机控制的电子密码锁系统设计文档格式.docx(37页珍藏版)》请在冰点文库上搜索。

单片机控制的电子密码锁系统设计文档格式.docx

通过本次基于AT89C51系列单片机密码锁的设计,可以了解、熟悉有关单片机开发设计的过程,并加深对单片机的理解和应用以及掌握单片机与外围接口的一些方法和技巧,这主要表现在以下一些方面:

1)密码锁系统包含了8051系列单片机的最小应用系统的构成。

2)可以了解到1602液晶的接口、工作原理以及这种显示器的接口实例与具体连接与编程方法。

3)用AT24C02储存密码的原理和方法。

1.2背景知识介绍

单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。

概括的讲:

一块芯片就成了一台计算机。

它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。

同时,学习使用单片机是了解计算机原理与结构的最佳选择。

单片机自20世纪70年代问世以来,以极其高的性价比受到人们的重视和关注,所以应用很广,发展很快。

单片机的优点是体积小、重量轻、抗干扰能力强,价格低廉,可靠性高,灵活性好,开发较为容易。

单片机以其一系列优点,近几年得到迅猛发展和大范围推广,广泛应用于工业控制系统,数据采集系统、智能化仪器仪表,及通讯设备、日常消费类产品、玩具等。

并且已经深入到工业生产的各个环节以及人民生活的各个层次中,如车间流水线控制、自动化系统等、智能型家用电器等。

ATMEL公司开发生产了新型的8位单片机——AT89系列单片机。

它不但具有一般MCS-51单片机的所有特性,而且还拥有一些独特的优点,此次设计中所用到的AT89C51就是其中典型的代表。

单片机内部也有和电脑功能类似的模块,比如CPU,内存,并行总线,还有和硬盘作用相同的存储器件,用它来做一些控制电器一类不是很复杂的工作足矣了。

我们现在用的全自动滚筒洗衣机,排烟罩VCD等等的家电里面都可以看到它的身影。

1.3本文主要工作以及内容安排

本文主要介绍电子密码锁需要实现的功能以及如何利用单片机来制作电子密码锁。

在本文中详细地介绍了具体硬件设计和软件模块化编程以及设计中各个功能的实现方法和过程。

具体内容有:

全文共分4章,结构安排如下:

第1章绪论介绍了本次设计目的及意义以及单片机的发展现状、1602字符型液晶在电子密码锁系统中的应用以及主要实现的功能。

第2章介绍了本次设计的硬件电路的设计思路以及元件的选择,详细的说明电路图中各个部分的功能和连线方式,为下一步的编程设计作好铺垫。

第3章介绍了单片机编程软件和常用的编程语言,确定了编程的主题思路以及设计功能的具体实现方法。

第4章介绍了如何在电脑上实现设计的软件仿真。

第2章系统总体方案设计

2.1总体方案设计

考虑各方面因素本设计采用的是用以AT89C51为核心的单片机控制方案。

利用单片机灵活的编程设计和丰富的I/O端口,及其控制的准确性,不但能实现基本的密码锁功能,还能添加掉电存储、声光提示甚至添加遥控控制功能。

其设计方案如图2.1所示。

图2.1单片机控制方案

实现此方案硬件是基础,程序是关键。

要充分利用仿真软件,不断调试程序,以使程序在满足各种功能的情况下最简。

2.1.1实现功能:

密码锁初始密码为:

000000.

(1)开锁:

插上电源后,程序自动调入初始密码,此时依次输入:

000000,然后按[#](确认)键,此时锁会打开,可以看到显示open,密码锁打开。

(2)退出并关锁:

按下[*](取消)键,此时锁关闭,所有输入清除。

(3)修改密码:

在开锁状态下,再次输入正确的密码并按下[#](确认)键,此时听到两声提示,输入新的六位密码并按[D](重设)键,再重复输入一次新密码并按[D],会听到两声提示音,表示重设密码成功,内部保存新密码并存储到AT24C02。

(如两次输入的新密码不一样,则重设密码失败)。

(4)报警并锁定键盘:

当输入密码错误后,报警并锁定键盘3秒,如3秒内又有按键,3秒后再启动。

当重置新密码时,新密码会保存于AT24C02存储器里.。

2.1.24*4键盘说明

采用4*4键盘输入,键盘对应名称如表2.1

表2.1键盘名称分布

1

2

3

A

4

5

6

B

7

8

9

C

*

#

D

其中,[0

9]为数字输入键,用于输入相应的数字

[*]号键为取消当前操作

[#]号键为确认

[D]键为修改密码

其它键无功能及定义

2.2AT89C51单片机介绍

AT89C51单片机包括:

一个8位的微型处理器CPU;

一个128K的片内数据存储器RAM;

4K片内程序存储器ROM;

四个8位并行的I/O接口P0

P3,每个接口既可以输入,也可以输出;

两个定时器/记数器;

五个中断源的中断控制系统;

一个全双工UART的串行I/O口;

片内振荡器和时钟产生电路,但石英晶体和微调电容需要外接。

最高允许振荡频率是12MHZ。

以上各个部分通过内部总线相连接。

下面简单介绍其主要部分的功能。

处理器:

CPU是单片微型计算机内部的核心部件,由它读入用户程序,并

逐条执行指令,它是由8位算术逻辑运算部件(简称ALU)、定时/控制部件,若干寄存器A、B、PSW、SP以及16位程序计数器(PC)和数据指针寄存器(DPTR)等主要部件组成。

算术逻辑单元的硬件结构与典型微型机相似。

它具有对8位信息进行+、-、*、/四则运算和逻辑与、或、异或、取反、清“0”等运算,并具有判跳、转移、数据传送等功能,此外还提供存放中间结果及常用数据寄存器。

控制器部件是由指令寄存器、译码器、定时与控制电路以及信息传送控制等部件组成的。

指令寄存器中存放指令代码。

在执行指令时,从程序存储器中取来经译码器译码后,根据不同指令由定时与控制电路发出相应的控制信号,送到存储器、运算器或I/O接口电路,完成指令功能。

程序计数器PC用来存放下一条将要执行的指令地址,共16位.可对以64K字节的程序存储器直接寻址,指令执行结束后,PC计数器自动增加,指向下一条要执行的指令地址。

CPU功能,总的来说是以不同的方式,执行各种指令。

不同的指令其功能略异。

有的指令涉及到寄存器之间的关系;

有的指令涉及到单片机核心电路内部各功能部件的关系;

有的则与外部芯片如外部程序存储器发生联系。

事实上,CPU是通过复杂的时序电路完成不同的指令功能。

所谓CPU的时序是指控制按照指令功能发出一系列在时间上有一定次序的信号,控制和启动一部分逻辑电路,完成某种操作。

[3]

表2.2.P3口的第二功能

引脚

第2功能

P3.0

RXD(串行口输入端)

P3.1

TXD(串行口输出端)

P3.2

INT0(外部中断0请求输入端,低电平有效)

P3.3

INT1(外部中断1请求输入端,低电平有效)

P3.4

T0(定时器/计数器0计数脉冲端)

P3.5

T1(定时器/计数器1计数脉冲端)

P3.6

WR(外部数据存储器写选通信号输出端,低电平有效)

P3.7

RD(外部数据存储器读选通信号输出端,低电平有效)

输入/输出引脚P0口、P1口、P2口及P3口:

P0口(22脚~39脚),P0.0~P0.7统称为P0口。

当不接外部存储器与不扩展I/O接口时,它可作为准双向8位输入/输出接口。

当接有外部程序存储器或扩展I/O口时,P0口为地址/数据分时复用口。

它分时提供8位双向数据总线;

P1口(1脚~8脚),P1.0~P1.7统称为P1口,可作为准双向I/O接口使用。

对于EPROM编程和进行程序校验时,P0口

接收输入的低8位地址;

P2口(21脚~28脚),P2.0~P2.7统称为P2口,一般可作为准双向I/O接口。

当接有外部程序存储器或扩展I/O接口且寻址范围超过256个字节时,P2口用于高8位地址总线送出高8位地址。

对于EPROM编程和进行程序校验时,P2口接收输入的8位地址;

P3口(10脚~17脚),P3.0~P3.7统称为P3口。

它为双功能口,可以作为一般的准双向I/O接口,也可以将每1位用于第2功能,而且P3口的每一条引脚均可独立定义为第1功能的输入输出或第2功能。

P3口的第2功能见表2.2所示。

中断系统:

AT89C51单片机有5个中断源,由两个中断优先级,每个中断源的优先级可以编程为高优先级或低优先级。

中断允许受到CPU开中断和中断源开中断的两级控制。

AT89C51单片机有两个中断优先级,高优先级和低优先级,每个中断源都可以编程为高中断优先级和低中断优先级。

这可以实现两级中断嵌套,嵌套的原则是:

一个正在执行的中断服务程序可以被较高优先级的中断请求中断,而不能被同级或较低级的中断请求所中断。

两极中断通过使用IP寄存器设置。

AT89C51的管脚有四十多个这里就不在一一列出,图2.2.为其管脚分布。

图2.2.8051的管脚分布

2.3硬件设计

2.3.1时钟电路的设计

时钟电路用于产生MCS-51单片机工作时所必需的时钟控制信号,MCS-51单片

机的内部电路在时钟信号的控制下,严格的按时序执行指令进行工作。

电路中的电容C1和C2典型值通常选择为30pF左右本设计采用20pF,电路图如2.3。

对外接电容的值虽没有严格的要求,但电容的大小会影响振荡器频率的高低、振荡器的稳定性和起振的快速性。

晶振的振荡频率的范围通常是在1.2MHZ-12MHZ之间,本设计采用12MHZ。

晶振的频率越高,则系统的时钟频率也就越高,单片机的运行速度也就越快。

但反过来运行速度快对存储器的速度要求也就越高,对印制电路板的工艺要求也高,即要求线间的寄生电容要小;

晶振和电容应尽可能安装得与单片机芯片靠近,以减少寄生电容,更好地保证振荡器稳定、可靠地工作。

为了提高温度稳定性,应采用温度稳定性良好的电容。

[12]

图2.3时钟电路

2.3.2复位电路的设计

单片机复位是使CPU和系统中的其他功能部件都处在一个确定的初始状态,并从这个状态开始工作。

单片机复位的条件是:

必须单片机复位引脚加上持续两个机器周期(即24个振荡周期)以上的高电平,单片机才进入复位状态(即程序从0000H地址开始执行)。

复位后的状态:

单片机复位后,片内RAM中低128的内容不会改变,但特殊功能寄存器被初始化。

复位期间单片机的ALE和PSEN引脚输出高电平,复位后单片机的特殊功能寄存器状态除SP为07H,P0

P3为FFH外其余都被复位为0。

AT89C51单片机的第9管脚RST(RESET缩写),当向RST管脚输入一个非常短暂的高电平时,单片机就会复位。

复位管脚与计算机上的复位键功能很相似,当计算机正在进行或死机时,只要按一下复位键,计算机,就会重新启动。

单片机

的复位和这个过程相似,无论单片机在执行什么程序,如果触发复位就会使其回到程序的开头重新开始执行程序。

最简单的复位电路就是在RST端与Vcc之间连接一个10uF的电解电容。

单片机上电瞬间,电容的正极电压瞬间变为Vcc,电解电容对于这个瞬间的电压突变相当于短路,于是Vcc(高电平)相当于直接加到了RST端上。

正是这个加在RST上的瞬间高电平使单片机复位。

很快,电解电容充满电,在电路中相当于断路,于是RST端电平由高转低,单片机随即开始执行程序.有时,只使用一个电解电容的复位电路可靠性不高,故本设计采用如图2.4所示的复位电路,以防电源开关或电源插头分-合过程引起的抖动而影响复位。

图2.4复位电路

2.3.3密码存储电路的设计

外置的拨码开关来设定密码,操作既不方便,电路又复杂。

本设计采用了E2PROM来保存密码,它最大的优点就是掉电后,存储的内容不会丢失,这是一种十分理想的方案。

密码写入ROM后即使掉电也没关系,且可以随意读出、写入。

真正改变了以往密码锁的密码由厂家固定,用户只有使用权,而没有更改权的缺点,真正实现了密码锁的保密性。

密码存储电路如图2.5所示。

本设计采用的芯片是ATMEL公司的AT24C02C,内有512字节的ROM,且支持在线读写。

其SDA为数据传送线,接在单片机的P3.5口。

SCK为移位时钟线,接在单片机的P3.4口。

利用P3.4和P3.5口模拟串口来实现单片机和ROM间的数据串行通讯。

AT24C02各管脚介绍:

SCK为串行时钟输入管脚用于产生器件所有数据发送或接收的时钟这是一个输入管脚;

SDA为串行数据用于器件所有数据的发送或接收,

是一个开漏输出管脚可与其它开漏输出或集电极开路输出进行线,A0、A1、A2为器件地址输入端这些输入脚用于多个器件级联时设置器件地址当这些脚悬空时默认值为0;

WP为写保护,如果WP管脚连接到Vcc所有的内容都被写保护只能读,当WP管脚连接到Vss或悬空允许器件进行正常的读/写操作。

图2.5存储电路

2.3.4键盘电路设计

键盘是一组规则排列的开关元器件组合,是最常用的输入设备。

操作人员可以通过键盘向计算机输入数据、地址、指令或其他的控制命令,实现简单的人机对话。

(1)按键输入原理

在单片机应用系统中,除了复位按键有专门的复位电路及专一的复位功能外,其它按键都是以开关状态来设置控制功能或输入数据的。

当所设置的功能键或数字键按下时,计算机应用系统应完成该按键所设定的功能,所以按键信息输入是与软件结构密切相关的过程。

对于一个键盘或一组键,总有一个接口电路与CPU相连。

CPU可以采用查询或中断方式了解有无将键输入并检查是哪一个键按下,将该键编号送入累加器ACC,然后通过跳转指令转入执行该键的功能程序,执行完后再返回主程序。

(2)键盘的分类

键盘按照接口原理可分为编码键盘和非编码键盘两类,这两类键盘的主要区别是识别键符及给出相应键码的方法不同。

编码键盘主要用硬件来实现对按键的识别,非编码键盘主要由软件来实现键盘的定义与识别,只简单地提供行和列的矩阵,其它工作均由软件完成,由于经济实用,所以较多地应用于单片机系统中。

根据结构的不同,非编码键盘又可分为矩阵式键盘和独立式键盘。

矩阵式键盘由行线和列线构成,按键位于行、列交叉点上,矩阵式键盘在按键较多时使用会节

省很多I/O口,但是,各按键间相互影响,因此,必须将行线、列线信号配合起来作适当处理,才能确定闭合键的位置。

(3)按键结构与特点

微机键盘通常使用机械触点式按键开关,其主要功能是把机械上的通断转换成为电气上的逻辑关系。

也就是说,它能提供标准的TTL逻辑电平,以便与通用数字系统的逻辑电平相容。

机械式按键在按下或释放时,由于机械弹性作用的影响,通常伴随有一定时间的触点机械抖动,然后其触点才稳定下来。

其抖动过程如图2.6所示,抖动时间的长短与开关的机械特性有关,一般为510ms。

在触点抖动期间检测按键的通与断状态,可能导致判断出错。

即按键一次按下或释放被错误地认为是多次操作,这种情况是不允许出现的。

为了克服按键触点机械抖动所致的检测误判,必须采取去抖动措施,可从硬件、软件两方面予以考虑。

在键数较少时,可采用硬件去抖,而当按键数较多时,采用软件去抖。

在检测到有按键按下时,执行一个10ms~20ms左右的延时程序后,再确认该键电平是否仍保持闭合状态电平,若仍保持闭合状态电平,则确认该键处于闭合状态;

同理,在检测到该键释放后,也应采用相同的步骤进行确认,从而可消除抖动的影响。

图2.6键盘抖动过程

表2.3.键盘的连线方式

单片机连接管脚

P1.0

P1.3为行线

按键号码

P1.3

1

2

3

A

P1.2

4

5

6

B

P1.1

7

8

9

C

P1.0

*

0

#

D

P1.4—P1.7为列线

P1.4

P1.5

P1.6

P1.7

考虑到本次设计功能的要求以及软件编程和硬件电路连接,在本次设计所采用的是矩阵键盘,用4条I/O线作为行线,4条I/O线作为列线组的键盘,采用软件延时的办法来消除机械抖动。

在行线和列线的每一个交叉点上,设置一个按键,键盘中按键的个数是4*4个=16个。

这种行列式键盘结构能够有效地提高单片机系统中I/O口的利用率。

矩阵键盘和单片机管脚连接(表2.3.)和电路图(图2.7)

P1.4--P1.7为行线,P1.0--P1.3为列线.[8]

图2..74*4矩阵键盘

2.3.5显示电路的设计

显示器是最常用的输出设备,其种类繁多,但在单片机系统设计中最常用的是发光二极管显示器(LED)和液晶显示器(LCD)两种。

由于这两种显示器结构简单,价格便宜,接口容易实现,因而得到了广泛的应用。

发光二极管LED,组成的显示屏,每个点都是一个或多个发光二极管,通过控制电路控制二极管的亮与灭来控制点的发光,从而使整个大屏幕显示图案。

液晶显示器LCD1602,所谓1602是指显示的内容为16*2,即可以显示两行,每行16个字符。

最常见的就是TFT类型的,它是由光源,液晶光栅,和控制芯片组成,他的光源是常亮的白色强光,当光线通过液晶光栅(液晶屏)的时候,通过电压改变液晶颗粒滤光方向,从而改变每个点的颜色和强度来显示图案。

[6]

液晶显示的原理是利用液晶的物理特性,通过电压对其显示区域进行控制,有电就有显示,这样即可以显示出图形。

液晶显示器具有厚度薄、适用于大规模集成电路直接驱动、易于实现全彩色显示的特点,目前已经被广泛应用在便携式电脑、数字摄像机、PDA移动通信工具等众多领域。

液晶显示器分很多种类,按显示方式可分为段式,行点阵式和全点阵式。

段式与数码管类似,行点阵式一般是英文字符,全点阵式可显示任何信息,如汉字、图形、图表等。

两者之间的区别:

(1)二极管本身发光,液晶本身不发光,只是透射光。

(2)二极管体积大,图像质量一般,适合作室外大屏幕,价格较低。

液晶成本较高,面积无法做得很大,但图像质量很好,适合做显示器。

(3)二极管耗电大,液晶耗电小。

(4)二极管图像刷新率低,液晶的高。

二者的档次相差比较大,一般来讲在一些图像简单,对成本控制较严格的场合,用二极管,比如商场、银行等服务部门的电子提示窗,街道、百货公司外面的广告宣传窗;

而液晶一般都是作计算机显示器、电视、手持设备等对图像质量要求高的场合,在本次计设中综合考虑各方面的因素,我选定1602作为显示电路。

1602管脚的具体功能如表2.4。

.

1602液晶的主要参数:

显示容量:

16×

2个字符

芯片工作电压:

4.5~5.5V

工作电流:

2.0mA(5.0V)

模块最佳工作电压

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

当前位置:首页 > 经管营销 > 经济市场

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2