1 / 14
文档名称:

单片机密码锁设计.doc

格式:doc   页数:14页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

单片机密码锁设计.doc

上传人:286919636 2016/7/19 文件大小:0 KB

下载得到文件列表

单片机密码锁设计.doc

相关文档

文档介绍

文档介绍:单片机密码锁设计什么是密码锁电子密码锁是一种通过密码输入来控制电路或是芯片工作,从而控制机械开关的闭合, 完成***、闭锁任务的电子产品。硬件设计基于 AT89C51 为核心的单片机控制的电子密码锁设计。本设计能完成***,修改密码, 密码错误报警, LCD 显示密码等基本的密码锁功能。设计的电路框如图 1。图一电路的功能单元设计 1. 单片机 AT89C51 组成基本框图***控制电路 AT89C51 单片机矩阵键盘控制指示电路 LCD 显示电路报警控制电路单片机引脚介绍 P0: P0 口是一个漏极开路的 8 位双向 I/O 口。在访问片外存储器时 P0 分时提供低 8位地址线和 8 位双向数据线。当不接片外存储器或不扩展 I/O 口时, P0 可作为一个通用输入/ 输出口。 P0 口作输入口使用时, 应先向口锁存器写“1”, P0 口作输出口时, 需接上拉电阻。 P1: P1 口是一个内部提供上拉电阻的 8 位双向 I/O 口,因此它作为输出口使用时,无需再外接上拉电阻,当作为输入口使用时,同样也需先向其锁存器写“1”。 P2: P2 口也是一个内部提供上拉电阻的 8 位双向 I/O 口,在访问片外存储器时,输出高8 位地址。 P3: P3 口除了一般的准双向通用 I/O 口外,还有第二功能。 VCC : +5V 电源 VSS :接地 ALE : 地址锁存器控制信号。在系统扩展时, ALE 用于控制把 P0 口输出的低 8 位地址锁存起来,以实现低位地址和数据的隔离。此外,由于 ALE 是以晶振 1/6 的固定频率输出的正脉冲,因此,可作为外部时钟或外部定时脉冲使用。/PSEN :外部程序存储器读选通信号。在读外部 ROM 时, /PSEN 有效(低电平) ,以实现外部 ROM 单元的读操作。/EA :访问程序存储控制信号。当/EA 信号为低电平时,对 ROM 的读操作限定在外部程序存储器;当/EA 信号为高电平时,对 ROM 的读操作是从内部程序存储器开始,并可延至外部程序存储器。 RST : 复位信号。当输入的复位信号延续两个机器周期以上的高电平时即为有效, 用完成单片机的复位初始化操作。 XTAL1 和 XTAL2 : 外接晶体引线端。当使用芯片内部时钟时, 此二引线端用于外接石英晶体和微调电容;当使用外部时钟时,用于接外部时钟脉冲信号。 P0 AT89C51 CPU 程序存储器 ROM 并行接口串行接口数据存储器 RAM 中断系统定时器/ 计数器时钟电路 P3 P1 P2 TxD INT0 RxD INT1 T0 T1 外中断内中断 2. 单片机外围电路设计(1) 单片机复位电路: 采用按键手动复位方式中的电平复位方式, 复位电平是通过使 RST 端经电阻与 VCC 电源接通而实现的。(2 )单片机时钟电路: AT89C51 内部有时钟电路,需外接石英晶体和微调电容,本设计的晶振频率为 。 3. 矩阵键盘的设计本设计中用到 4*4 的键盘。键盘扫描方式, 键盘的列线与 P1 口的低 4 位相接, 行线与 P1 口的高 3 位相接。首先使 为低电平“0”, 其余三根列线为高电平“1”, 读行线状态。如果行线都为高电平状态,则 这列上没键按下,如果读出的行线不全为高电平状态,则为低电平的行线与 相交的键处于闭合状态。如果 上没有键闭合,接着使 为低电平,其余列线为高电平, 用同样的方法检查 这列上有没有按键闭合。一直到使 为低电平扫描完成。这一过程称为一次扫描过程。由于按键是利用机械触电的合、断原理,存在弹性的影响,机械触点在闭合及断开瞬间均有抖动过程,从而使电压信号波动,为了保证 CPU 对键的稳定闭合仅作一次键输入处理, 必须采用消除抖动影响。本设计采用软件办法, 在检测到有键按下时, 执行一个延时程序后, 确认该键是否保持闭合状态电平。若仍保持闭合状态电平, 则确认该键处于闭合状态, 从而消除抖动影响。若有按键被按下时, 就将该按键译码出来, 本设计采用双重循环做计数编号, 当某一按键按下时, 其按键编号便是计数编号, 有关按键编号, 扫描信号及读取按键数据返回码整理如表 1。编号按键数据输入码 扫描输出信号 所侦测的按键 011101110 K0 键 111011110 K1 键 210111110 K2 键 301111110 K3 键 411101101 K4 键 511011101 K5 键 610111101 K6 键 701111101 K7 键 811101011 K8 键 911011011 K9 键 1010111011 K10 键