汇编语言-多功能密码锁(2)

2019-03-29 10:32

地址锁存器74LS273是带清除端的八D触发器,只有清除端为高电平时才具有锁存功能,锁存控制端为11脚CLK,在上升沿锁存。8086的ALE端输出的锁存控制信号必须经反相器后才能连到74LS273的CLK端,以满足CLK在上升沿锁存的要求。

4 线-16 线译码器74HCT154

74HCT154 为4 线-16 线译码器,将4 个二进制编码输入译成16 个彼独立的输出

之一,并能将数据从一个输入线分配到16 个输出的任意一个而实现解调功能,与大部分TTL 和DTL 电路完全兼容。其工作原理如下:这种单片4 线—16 线译码器非常适合用于高性能存储器的译码器。当两个选通输入G1 和G2 为低时,它可将4 个二进制编码的输入译成16 个互相独立的输出之一。实现解调功能的办法是:用4 个输入线写出输出线的地址,使得在一个选通输入为低时数据通过另一个选通输入。当任何一个选通输入是高时,所有输出都为高。

6

六、原理图

1、8086和8255A连接

8255A地址分配:PA:200H PB:202H PC:204H 控制寄存器:206H

为了满足8255A的四个端口地址必须为偶地址这一要求,将8255A的A1、A0分别与8086系统地址总线的A2、A1相连,并且,CPU在对8255A的端口进行访问时,总是将地址中的A0设置为0。

2、8255A的A口、C口与矩阵键盘连接

7

键盘元件KEYPAD-PHONE,0-9为数字键,#为确认/返回键和*为密码修改键。 数字键1-9的键值为相应的数值,数字键0的键值为0BH,功能键*的键值为0AH,能键#的键值为0CH。

3、8255A的A口、B口与数码管的连接

8255A的B口输出数码管的段码,A口输出数码管的位码。

4、8086与8253连接

8

8253地址分配:计数器0:400H 计数器1:402H 计数器2:404H控制寄存器:406H 为了满足8255A的四个端口地址必须为偶地址这一要求,将8255A的A1、A0分别与8086系统地址总线的A2、A1相连,并且,CPU在对8255A的端口进行访问时,总是将地址中的A0设置为0。

5、 完整电路图

9

七、软件设计思路

整个硬件设计,主要采用器件CPU8086、并行接口8255和可编程定时/计数器8253。由并行接口8255控制键盘扫描、数码管显示、开锁电平以及报警电平,8255的工作方式是A口输出,B口输出,C口高四位输出,C口低四位输入。通过键盘扫描获得对应的键值,通过对键值判断,判断按键是功能键或数字键,达到输入密码,修改密码,确认输入,返回等功能。由可编程定时/计数器8253产生方波,控制蜂鸣器产生“滴”声。8253工作在计数器0方式3,产生方波,通过延时,是蜂鸣器产生“滴”。8253在每次调用发声子程序中初始化。

根据条件要求,程序首先需要实现的是输入密码。为了区别输入密码和修改密码,当数码管显示都显示“—”,是输入密码。当数码管全灭时,是修改密码。当密码输入完且按下确认键,则输入数字与密码比对。密码正确,则输出开锁电平(高电平有效)。在此时,则可以通过功能键修改密码,密码修改成功发出“滴”声。若不需要,按返回键返回。若密码错误,则发出三声“滴”声,密码错误次数加1,并判断是否已经输入六次错误,是则输出报警电平(高电平有效),并置密码错误次数置0,等待返回键返回;否则等待返回按键返回。

为了实现上述程序,首先要初始化8086、8255,接着进入键盘扫描。每次有按键输入后,还应判断按键是否弹起,可以实现键盘消抖。无论密码正确与否,均需要通过返回键才能返回,所以每次显示完后都要对键盘扫描,判断是否按下返回键,有则退出键盘扫描,没有则继续扫描。开锁电平以及报警电平均在返回时置低电平。

10


汇编语言-多功能密码锁(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:名言警句

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: