一站式电子元器件采购平台

华强商城公众号

一站式电子元器件采购平台

元器件移动商城,随时随地采购

华强商城M站

元器件移动商城,随时随地采购

半导体行业观察第一站!

芯八哥公众号

半导体行业观察第一站!

专注电子产业链,坚持深度原创

华强微电子公众号

专注电子产业链,
坚持深度原创

电子元器件原材料采购信息平台

华强电子网公众号

电子元器件原材料采购
信息平台

基于8086的电子密码锁设计与仿真

来源:http://www.elecfans.com/emb/danpianji/20180131627204.html 发布时间:2018-02-01

摘要: 电子密码锁是一种通过密码输入来控制电路或是芯片工作,从而控制机械开关的闭合,完成开锁、闭锁任务的电子产品。它的种类很多,有简易的电路产品,也有基于芯片的性价比较高的产品。应用较广的电子密码锁是以芯片为核心,通过编程来实现的。

电子密码锁是一种通过密码输入来控制电路或是芯片工作,从而控制机械开关的闭合,完成开锁、闭锁任务的电子产品。它的种类很多,有简易的电路产品,也有基于芯片的性价比较高的产品。应用较广的电子密码锁是以芯片为核心,通过编程来实现的。

设计实现的功能

输入密码:

(1)、开始执行时数码管每一位都显示“米”,点输入密码数码管只有第一位显示“米”,点击数字键进行数字选择;

(2)、按下“确认”键后跳到第二个数字,操作同第一步;

(3)、当四个密码选中完毕,按下“确认输入”键,显示输入的密码;

(4)、按下“开锁”键,若密码正确,同时显示*YES,密码锁打开;

(5)、按下“开锁”键,若密码错误,则显示ERRO,密码锁不能打开,按下“输入密码”键,即可重新输入密码。

更改密码:

(1)、在显示*YES时,按下“更改密码”键后,输入新的四位密码;

(2)、按下“确认输入”键,显示新密码,按下“确认”键,即可设定新密码。

错误警报:

若输入错误密码超过5次,警报会自动响起,只有再次输入正确密码后方可解除警报。

硬件电路设计

相关芯片简介

1. 8255

第一片8255

第一片8255-IC采购网

定义A.B。C口都为输出状态,A.B口控制数码管的输入口,对应相应的段码表,来显示。C口的PC0,PC1经过2-4译码器,来激活数码管1,2,3,4通道,并采用00,01,10,11,循环输出的方式,使数码管通道循环激活,实现动态显示。

第二片8255

第二片8255-IC采购网

定义A,B,C口都为输入状态,对应输入相应的按钮状态,对应相应的程序,实现相应功能。

2. 8253

8253-IC采购网

使用0通道,方式3,对输入的始终信号分频,当输入密码次数大于5次时,初始化8253,并发出警报提示声。当输入密码正确后,激活1通道,警报提示声接触。

3. 2-4译码器

2-4译码器-IC采购网

由于8086运行速度过快,数码管动态显示出现显示不全的现象,因此PC0,PC1输出经过2-4译码器之后,再激活数码管,起到缓冲作用。

4. 16位数码管

16位数码管-IC采购网

16位数码管的数码管,由16个引脚控制,低电平有效,其中A-H控制外圈0, K-M控制内部*S1-s4是通道控制,高电平有效。

仿真电路总体设计

仿真电路总体设计-IC采购网

本实验设计中,硬件部分涉及到了8086CPU、可编程并行接口8255A,并配合74LS373锁存器、74LS245缓冲器、74LS138译码器等基本元器件,实现了设想的电子密码锁。

8255A:如图,8255A的D0~D7端口与CPU数据线ADO~AD7相接,CPU通过控制线的片选、读、写信号接口对8255A进行读、写与片选操作。外设接口端的A0-A7八个开关连接245的A0-A7端口,将外设信息传送到245中,键入密码输入、密码确定、修改密码等多种功能。

8255A-IC采购网

开关功能

如图,A口的PA0-PA7端口通过锁存器与数码管相连用于外圈显示,B口的PB0-PB7端口通过74LS373锁存器与数码管进行连接用于内部“米”字格的显示。

软件编程设计

密码的输入与判定-IC采购网

基于8086的电子密码锁设计与仿真-IC采购网

按键控制

(1)、控制字

给8255A输入端口控制字: void fun82531()

{

__asm

{

mov dx, 0x8006

mov al, 0x37

out dx, al

}

outp(GATE0,0x02);

outp(GATE0,0x00);

}

void fun82532()

{

__asm

{

mov dx, 0x8006

mov al, 0x77

out dx, al

}

outp(GATE0,0x99); outp(GATE0,0x99); }

(2)、密码键入控制

整个过程中主要是对是否有按键信息输入进行扫描判断,并将所得信息与灯管编号进行比对,确定所选择要键入数字的灯管。当目前的灯管数字被选出后,自动跳到下一个灯管,直到四位数字全部选择完毕。

字符动态显示

四位密码选出后,显示四位选定数字,然后检测密码正确性,8255A通过端口A、B、C读取指令,根据检测结果,密码正确则输出代码显示*YES,错误则显示ERRO。

更改密码,键入“更改密码”控制字后,与输入密码的流程相同,先选择灯管,待选定数字后跳至下一个,直到四位数字全部选定,然后键入“确认更改”指令,则密码更改成功。

系统实现

proteus仿真实验

本实验的Proteus仿真模拟图-IC采购网

如图,为本实验的Proteus仿真模拟图,整个实验共用到8086CPU一个、74LS245一个、可编程并行接口8255A一个,74LS273锁存器三个、74LS138译码器一个、数码管一个、与非门两个、开关八个、电阻八个。

了解更多相关设计技术信息,请点击华强旗舰电子圈(http://www.hqbuy.com/dzq/dzqsy.html)!

声明:本文观点仅代表作者本人,不代表华强商城的观点和立场。如有侵权或者其他问题,请联系本站修改或删除。

社群二维码

关注“华强商城“微信公众号

调查问卷

请问您是:

您希望看到什么内容: