以AT89S51为核心的单片机控制密码锁设计计划书_第1页
以AT89S51为核心的单片机控制密码锁设计计划书_第2页
以AT89S51为核心的单片机控制密码锁设计计划书_第3页
以AT89S51为核心的单片机控制密码锁设计计划书_第4页
以AT89S51为核心的单片机控制密码锁设计计划书_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

以 核心的单片机控制 密码锁设计计划书 1、 概述 本实验利用集成电路芯片 码管以及 4阵式键盘来设计密码锁。将软件和硬件有机的结合起来,使得系统能够正确的开启密码,数码管能够正确的显示所设定的数字。 2、 设计要求 A 密码锁由 4*4 键盘和 4 位数码管组成。 B 当输入密码时,只显示 8,当密码输入完毕按下确认键时,对输入的密码与设定的密码进行比较,若密码正确,则门打开,此处用 光二极管亮一秒作为提示。若密码不正确,则可以重新输入密码。如果连续三次输入密码错误,则禁止输入。 3 设计流程: 查阅有关文献资料拟定电路原型依据题目功能要求,进行电路元件选择画出原理电路 系统硬件电路图 完成课题的程序 设计 程序设计清单 写出设计报告。 4 可选器件 : 51 系列单片机、 24码管、 74门等 采用 一种是用以 核心的单片机控制方案。 利用单片机灵活的编程设计和丰富的 口,及其控制的准确性,不但能实现基本的密码锁功能,还能添加 调电存储、声光提示控制 功能。其原理如下图所示。 振电路 复位电路 键盘输入模块 密码存储模块 示模块 开锁电路 蜂鸣器报警电路 各模块功能如下: 1键盘输入模块:分为密码输入按键与功能按键,用于完成密码输入功能。 2密码存储模块:用于完成掉电存储功能,使修改的密码断电后仍能保存。 3 晶振电路:用于单片机的起振。 4复位电路:完成系统的复位。 5 示模块:用于完成对系统状态显示及操作提示功能。 6开锁电路:应用发光二极管模拟开锁,完成开锁及开锁提示 。 芯片功能介绍 单片机 绍 一种带 4K 字节闪存可编程可擦除 只读存储器 ( 低电压、高性能 位微处理器,俗称 单片机 。 一种带 2K 字节闪存可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除 1000 次。该器件采用密度非易失存储器制造技术制造,与工业标准的 令集和输出管脚相兼容。由于将多功能 8 位 闪烁存储器组合在单个芯片中, 一种高效微控制器, 它的一种精简版本。 片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。外形及引脚排列如 下 图所示 : 图 1 脚图 脚说明: 电电压。 地。 : 为一个 8 位漏级开路双向 I/O 口,每脚可吸收 8电流。当 的管脚第一次写 1 时,被定义为高阻输入。 够用于外部程序数据存储器,它可以被定义为数据 /地址的第八位。在 程时, 作为原码输入口,当 行校验时, 出原码,此时 部必须被拉高。 : 是一个内部提供上拉电阻的 8 位双向 I/O 口, 缓冲器能接收输出 4电流。 管脚写入 1 后,被内部上拉为高,可用作输入, 下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在 作为第八位地址接收。 : 为一个内部上拉电阻的 8 位双向 I/O 口, 缓冲器可接收,输出 4 个 电流,当 被写 “1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时, 的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。 当用于外部程序存储器或 16 位地址外部数据存储器进行存取时, 输出地址的高八位。在给出地址 “1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时, 输出其特殊功能寄存器的内容。在 程和校验时接收高八位地址信号和控制信号。 : 管脚是 8 个带内部上拉电阻的双向 I/O 口,可接收输出 4 个 写入 “1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平, 将输出电流( 是由于上拉的缘故。 位输入。当振荡器复位器件时,要保持 两个机器周期的高电平时间。 访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在 程期间,此引脚用于 输入编程脉冲。在平时, 以不变的频率周期输出正脉冲信号,此频率为振荡器频率的 1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个 冲。如想禁止 输出可在 址上置 0。此时, 有在执行 令是 起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态 止,置位无效。 /部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次 /效。但在访问外部数据存储器 时,这两次有效的 /号将不出现。 / /持低电平时,则在此期间外部程序存储器( 0000不管是否有内部程序存储器。注意加密方式 1 时, /内部锁定为 /保持高电平时,此间内部程序存储器。在 程期间,此引脚也用于施加 12V 编程电源( 向振荡放大器的输入及内部时钟工作电路的输入。 自反向振荡器的输出。 别为反向放大器的输入和输出。该反向放大器可以配置为片内振荡器 。石晶振荡和陶瓷振荡均可采用。如采用外部时钟源驱动器件,不接。由于输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度。 整个 列和三个锁定位的电擦除可通过正确的控制信号组合,并保持 脚处于低电平 10完成。在芯片擦操作中,代码阵列全被写“ 1”且在任何非空存储字节被重复编程以前,该操作必须被执行。 此外, 有稳态逻辑,可以在低到零频率的条件下静态逻辑,支持两种软件可选的掉电模式。在闲置模式下, 止工作。但 时器,计数器,串口和中断系统仍在工作。在掉电模式下,保存 内容并且冻结振荡器,禁止所用其他芯片功能,直到下一个硬件复位为止。 6、 键盘功能及工作原理 键盘功能主要有按键识别、去抖、重键处理、发送扫描码、自动重发、接收键盘命令、处理命令等。键盘有编码键盘和非编码键盘。编码键盘程序设计简单,但硬件电路复杂,价格较高;非编码键盘用软件来实现识别键、编码转换、去抖等功能,硬件电路简单,价格便宜。现代微机系统中广泛采用非编码键盘。工业键盘多采用 4 行 4 列的二维矩阵行列结构。采用行扫描法识别按下的按键。 本设计就采用行列式键盘,同时也能减少键盘与单片机接口时所占用的 I/按键比较多的时候,通常采用这样方法。其原理如右图所示。 4*4 行列式键盘原理电路图 每一条水平(行线)与垂直线(列线)的交叉处不相通,而是通过一个按键来连通,利用这种行列式矩阵结构只需要 N 条行线和 M 条列线,即可组成具有 N M 个按键的键盘。 在这种行列式矩阵键盘非键盘编码的单片机系统中,键盘处理程序首先执行等待890 2 4 6 8 10 4 4 键并确认有无按键按下的程序段。 当确认有按键按下后,下一步就要识别哪一个按键按下。对键的识别通常有两种方法:一种是常用的逐行扫描查询法;另一种是速度较快的线反转法。 对照上图所示的 4*4 键盘,说明线反转个工作原理。 首先辨别键盘中有无键按下,有单片机 I/O 口向键盘送全扫描字,然后读入行线状态来判断。方法是:向行线输出全扫描字 00H,把全部列线置为低电平,然后将列线的电平状态读入累加器 A 中。如果有按键按下,总会有一根行线电平被拉至低电平从而使行线不全为 1。 判断键盘中哪一个键被按下使通过将列线逐列置低电平后,检查行输入状态来实现的。方法是: 依次给列线送低电平,然后查所有行线状态,如果全为 1,则所按下的键不在此列;如果不全为 1,则所按下的键必在此列,而且是在与零电平行线相交的交点上的那个键。 按键的操作面板如下图所示。 按键操作面板示意图 按键包括有数字键和功能键。数字键包括 0 9 键,用于密码的输入。功能键有确认键。具体的功能定义如下表。 按键 键名 功能说明 0 9 键 数字键 输入密码 A 键 确认键 密码输入完成 硬件设计 由实验要求采用 4 行 4 列的矩阵行列结构。 89片机有 4 个 8 位 I/用 低四位作为行扫描线,高四位作为列扫描线。 软件设计 消抖及重键处理:通过软件上延时程序来消除抖动;采用后按键优先处理,即多键同时按下时,只重复发送最后按下键的扫描码。 程序包括键盘扫描子程序、发送键码子程序、发送数据子程序、接收命令子程序、主程序等。键盘扫描子程序用于扫描键状态,将被按键的位置号存入缓冲器中;发送键码子程序用于将缓冲区键的接通码或断开码发送给计算机键盘接口或者存在键盘密码缓冲区中;发送数据子程序用于将数据发给计算机键盘接口;接收命令子程序用于接收计算机键盘接口发来的键盘命令;主程序用于系统初始化,子程序调度,锁定状态的显示等。 7、 时钟电路设计 时钟电路为单片机产生时序脉冲,单片机所有运算与控制过程都是在统一的时序脉冲的驱动下的进行的,如果单片机的时钟 电路停止工作(晶振停振),那么单片机也就停止运行了。当采用内部时钟时,连接方法如下图所示,在晶振引脚 19脚)和 18脚)引脚之间接入一个 12个引脚对地分别再接入一个电容即可产生所需的时钟信号,电容的容量一般在几十皮法,如 33 8、 复位电路设计 复位是单片机的初始化操作。单片机启运运行时,都需要先复位,其作用是使 系统中其他部件处于一个确定的初始状态,并从这个状态开始工作。因而,复位是一个很重要的操作方式。但单片机本身是不能自动进行复位的,必须配合相应的外部电 路才能实现。该复位电路采用按键电平复位式复位电路。当单片机已在运行当中时,按下复位键后松开,在复位引脚 9 脚)脚持续出现 24 个振荡器脉冲周期(即 2 个机器周期)的高电平信号将使单片机复位。也能使 一段时间的高电平,从而实现上电或开关复位的操作 9、开锁单元 通过单片机送给开锁执行机构,电路驱动电磁锁吸合,从而达到开锁的目的。其原理如下图所示。 密码锁开锁机构示意图 当用户输入的密码正确而且是在规定的时间(普通用户要求在 12s 内输入正确的密码,管理员要求在 5s 输入正确的密码)输入的话,单片机便输出开门信号,送到开锁驱动电路,然后驱动电磁锁,达到开门的目的。在本次设计中,基于节省材料的原则,暂时用发光二极管代替电磁锁,发光管亮,表示开锁;灭,表示没有开锁。 10、 电存储单元的设计 掉电存储单元的作用是在电源断开的时候,存储当前设定的单价信息。 司的 2节的电可擦除存储芯片,采用两线串行的总线和单片机通讯,电压最低可以到 定电流为 1态电流 10芯片内的资料可以在断电的情况下保存 40 年以上,而且采用 8 脚的 装,使用方便。其电路如图 3 6 所示。 图 3 6 掉电存储电路原理图 图中 上拉电阻, 其作用是减少 静态功耗, 由于 锁驱动电路 指示灯 密码正确? Y 返回 N 的数据线和地址线是复用的,采用串口的方式传送数据,所以只用两 根线 位脉冲)和 据 /地址)与单片机传送数据。 每当设定一次单价,系统就自动调用存储程序,将单价信息保存在芯片内;当系统重新上电的时候,自动调用读存储器程序,将存储器内的单价等信息,读到缓存单元中,供主程序使用。由于实验室没有这类器件,因此在实际制作过程中这项功能省略。 11、总电路连线图 12、程序框图 附录 张向峰: 设计电路原理图、设计与调试键盘扫描程序, 档部分整理,整体程序调试。 高居顺: 硬件开发板调试(未调试出结果),设计电路原理图,整体程序的调试,显示程序的设计与调试。 张太玉: 查阅相关文件,做程序框图,延时程序的设计,部分 档的整理。 隋仕坤: 学习 电路原理图,密码输入程序与密码比较程序的编译与调试。 高鹏辉: 学习 电路原理图,开锁报警程序的编译与调试。 附录 ;以下 4 个字节显示存储区 30H 31H 32H 33H ;以下 4 个字节存放初始密码 34H 35H 36H 37H ;以下 4 个字节存放键盘输入的 4 位密码 38H 39H 3 3 3 ;键值 3 ;密码输入次数 ;* ;以下为初始化程序 ,包括数据存储空间初始化 ,设置初始密码 0000H 0100H 00H 00H 00H 00H 00H 00H 00H 00H 00H A,#00H B,#00H 00H ;输入密码存储区清 0 00H 00H 00H 00H ;设置初始密码为 0123 01H 02H 03H 00H ;* ; 主程序开始 7 ;显示存储区 开始显示 8888 7 7 7 03H ;密码错误次数置三 ;调用数码显示子程序 0123 等待按键 ;调用按键程序 00 ;是否为 ( 3 号键)不相等则跳转到 ;检测到“ 显示 等待密码输入 00: 转入 密码输入程序 1: ;密码输入完毕 检测“ 01 ;检测到“ 则比较 ;显示 0 ;显示区清空 ;转入密码比较程序 01H, ;返回值 1 正确开锁否则调至 查密码错误次数 ;密码正确 调用开锁程序 ;开锁后返回 2: 3 ;三次错误则报警 ;错误未达三次则显示 N 返回密码输入程序 ;密码输入错误显示 N 后可继续输入密码 ;未满三次继续调用密码输入程序 ;* ; 读键值子程序 ;调用判别有无按键闭合子程序 A,#0 ;有键闭合 ,则转 ;调用程序延时 ,消除抖动 ;消抖后再次判断是否有键闭合 A,#0 ;有键闭合 ,转 0 ;键盘列扫描模式 ,先扫描第一列 00H ;初始扫描第一列 ,列号为 0 A, ;使第一列为 1,检测有无按键 A, B,A ; 0 位为 1,说明无键按下 ,转至下一行 A,#0 ; 0 位为 0,有键按下 ,行起始行键号为 0 ;跳转至 算键号 ;位为 1,说明无键按下 ,转至 下一行 A,#4 ; 1 位为 0,有键按下 ,行起 始行键号为 4 ;跳转至 算键号 ; 2 位为 1,说明无键按下 ,转至下一行 A,#8 ; 2 位为 0,有键按下 ,行起始行键号为 8 ;跳转至 算键号 ;位为 1,说明无键按下 ,转至 下一列 A,#12 ; 3 位为 0,有键按下 ,行起始行键号为 12 ;跳转至 算键号 A, ;行起始键号与列号之和为键号 ;指向下一列 ,列号加 1 A, ;是否 4 列全扫描完毕 A ;没有 ,准备扫描下一列 ;回到键扫程序开始处 0 ;将所有的列都置 1,并将低四位作为 输入口 A, ;读取行状态 ;* ; 密码输入程序 04H ;没键按下时处理 ;无按键则转 B ;用来保存密码 ;显示左移程序 ;调用显示程序 ;4 位密码是否输入完毕 * ; 密码比较程序 A, ;输入密

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论