简单六位数字密码锁

简单六位数字密码锁
简单六位数字密码锁

目录

第1章绪论 (1)

1.1 设计任务 (1)

1.2 设计要求 (1)

第2章系统方案设计 (2)

2.1 硬件设计思想 (2)

2.2软件设计思想 (3)

第3章电路设计 (4)

3.1 电路原理 (4)

3.2 电路原理图 (4)

第4章程序设计 (5)

4.1流程图 (5)

4.2 算法描述 (5)

第5章程序清单与仿真结果 (6)

5.1 程序清单 (6)

5.2 仿真结果 (14)

第6章设计总结 (17)

6.1 设计体会 (17)

参考文献 (18)

致谢 (19)

实物展示.................................... 错误!未定义书签。

第1章绪论

1.1 设计任务

(1)设置七个键位,分别是确认,数字1,数字2,数字3,数字4,数字5,数字6,工作有提示(设通电状态为红灯亮)。

(2)在单片机内部预设六位密码,在使用密码解锁器时,要按预设的密码依次输入才能完成解锁。预设密码以外的数字都不能解开密码锁(如输入非6位或输入6位与预设密码不同的数字)。

(3)输入密码时,数码管同步显示输入的数字。

(4)输入正确后,有解锁提示(设为绿灯亮),输入错误后也有提示(设为红灯闪烁和鸣笛警告)

(5)输入错误后可以重输,要有复位功能。

1.2 设计要求

利用AT89S52单片机的P2端口的P2.0--P2.6连接到7个按键开关上,分别是输入键数字1,数字2,数字3,数字4,数字5,数字6和确认键,P2.7接蜂鸣器。启动时,按下电源开关,红色指示灯长亮,输入密码,而数码管显示输入的相应数字,然后按下确认键,若密码正确,绿灯亮,数码管熄灭,弱密码错误,红灯闪烁,蜂鸣器响,发出警报。

第2章系统方案设计

2.1 硬件设计思想

2.1.1 键盘设计

本设计使用7按键,从上到下,从左至右依次设为确认键,数字1,数字2,数字3,数字4,数字5,数字6,用来输入密码,如下图

图2.1 键盘仿真图

2.1.2 数字显示设计

使用共阳极七段数码管来显示输入的数字,图如下:

图2.2 显示仿真图

2.1.3 检验密码电路设计

使用LED灯和蜂鸣器来提示输入的密码是否正确,若密码正确,绿灯亮,若密码错误,红灯闪烁,蜂鸣器响,电路如图:

图2.3 密码验证系统仿真图

2.2软件设计思想

电子密码锁工作的主要过程是从键盘开始输入密码,同时LED显示密码输入情况,按下确认键后判断密码的正确性,作出开锁或报警处理。

密码的设定,在此程序中密码是固定的,预设的密码为"532416"共6位密码。

在单片机内部预设六位密码,在使用密码解锁器时,要按预设的密码依次输入才能完成解锁。预设密码以外的数字都不能解开密码锁(如输入非6位或输入6位与预设密码不同的数字)

输入密码时,数码管要在单片机的控制下同步显示输入的数字。

3.1 电路原理

单片机最小系统。一个AT89S52单片机做为控制电路,运用其P2口来实现密码的输入和蜂鸣器的报警,通过P0口给数码显示管高低不同电平信号,来实现输入密码的显示,P1接指示灯。

3.2 电路原理图

图3.2 电路原理图

4.1流程图

图4.1 系统流程图

4.2 算法描述

1、设计一个延时子程序

void delayms(unsigned int t)

{

unsigned int i,j;

for(i=t;i>0;i--)

for(j=114;j>0;j--);

}

2、主程序

void init()

void delayms(unsigned int t)

void main()

第5章程序清单与仿真结果5.1 程序清单

#include

sbit mm1=P2^0;//密码按键1-8

sbit mm2=P2^1;

sbit mm3=P2^2;

sbit mm4=P2^3;

sbit mm5=P2^4;

sbit mm6=P2^5;

sbit mmok=P2^6;

sbit l1=P1^0;

sbit l2=P1^2;

sbit fmq=P2^7;

void init()

{

P0=0xff;//禁止数码管显示

mm1=1;

mm2=1;

mm3=1;

mm4=1;

mm5=1;

mm6=1;

mmok=1;

fmq=1;

l1=1;

l2=1;

}

void delayms(unsigned int t)

{

unsigned int i,j;

for(i=t;i>0;i--)

for(j=114;j>0;j--);

}

void main()

{

unsigned char mmsr,bn,bn1,bn2,bn3,bn4,bn5;

mmsr=0;

bn=0;

bn1=0;

bn2=0;

bn3=0;

bn4=0;

bn5=0;

mmsr=1;

init();

while(1)

{

if(mmsr==1)

{

if(mm5==0) //系统8位程序密码532416 {

delayms(10);

if(mm5==0)

{

bn=1;

P0=0xff;//消隐

P0=0x92;//显示5

}

}

if((mm3==0)&(bn==1))

{

delayms(10);

if((mm3==0)&(bn==1))

{

bn1=1;

P0=0xff;//消隐

P0=0xb0;//显示3

}

}

if((mm2==0)&(bn1==1))

{

delayms(10);

if((mm2==0)&(bn1==1))

{

bn2=1;

P0=0xff;//消隐

P0=0xa4;//显示2

}

}

if((mm4==0)&(bn2==1)) {

delayms(10);

if((mm4==0)&(bn2==1)) {

bn3=1;

P0=0xff;//消隐

P0=0x99;//显示4

}

}

if((mm1==0)&(bn3==1)) {

delayms(10);

if((mm1==0)&(bn3==1))

{

bn4=1;

P0=0xff;//消隐

P0=0xf9;//显示1

}

}

if((mm6==0)&(bn4==1)) {

delayms(10);

if((mm6==0)&(bn4==1)) {

bn5=1;

P0=0xff;//消隐

P0=0x82;//显示6

}

}

if(mm1==0) {

delayms(10);

if(mm1==0)

{

P0=0xff;//消隐

P0=0xf9;//显示1

}

}

if(mm2==0)

{

delayms(10);

if(mm2==0)

{

P0=0xff;//消隐

P0=0xa4;//显示2

}

}

if(mm3==0)

{

delayms(10);

if(mm3==0)

{

P0=0xff;//消隐

P0=0xb0;//显示3

}

}

if(mm4==0)

{

delayms(10);

if(mm4==0)

{

P0=0xff;//消隐

P0=0x99;//显示4

}

}

if(mm5==0)

{

delayms(10);

if(mm5==0)

{

P0=0xff;//消隐

P0=0x92;//显示5

}

}

if(mm6==0)

{

delayms(10);

if(mm6==0)

{

P0=0xff;//消隐

P0=0x82;//显示8

}

}

if(mmok==0)

{

delayms(10);

if(mmok==0)

{

if((bn==1)&(bn1==1)&(bn2==1)&(bn3==1)&(bn4==1)&(bn5==1)) //密码成功

{

while(1)

{

P0=0xff;

l2=0;

delayms(100);

}

}

else

{

while(1)

{

P0=0xff;

fmq=0;

l1=0;

delayms(100);

l1=1;

delayms(100);

}

}

}

}

}

}

}

{

unsigned char mmsr,bn,bn1,bn2,bn3,bn4,bn5;

mmsr=0;

bn=0;

bn1=0;

bn2=0;

bn3=0;

bn4=0;

bn5=0;

mmsr=1;

init();

while(1)

{

if(mmsr==1)

{

if(mm5==0) //系统8位程序密码532416

{

delayms(10);

if(mm5==0)

{

bn=1;

P0=0xff;//消隐

P0=0x92;//显示5

}

}

if((mm3==0)&(bn==1)) {

if((mm1==0)&(bn3==1)) {

delayms(10);

if((mm1==0)&(bn3==1))

{

bn4=1;

P0=0xff;//消隐

P0=0xf9;//显示1

}

}

if((mm6==0)&(bn4==1)) {

delayms(10);

if((mm6==0)&(bn4==1))

{

bn5=1;

P0=0xff;//消隐

P0=0x82;//显示6 }

}

if(mm1==0)

{

delayms(10);

if(mm1==0)

{

P0=0xff;//消隐

P0=0xf9;//显示1

P0=0x92;//显示5 }

}

if(mm6==0)

{

delayms(10);

if(mm6==0)

{

P0=0xff;//消隐

P0=0x82;//显示8

}

}

if(mmok==0)

{

delayms(10);

if(mmok==0)

{

if((bn==1)&(bn1==1)&(bn2==1)&(bn3==1)&(bn4==1)&(bn5==1)) //密码成功

{

while(1)

{

P0=0xff;

l2=0;

delayms(100);

}

}

else

{

while(1)

P0=0xff;

}

5.2 仿真结果

1,开始仿真,按下开关,红灯亮

图5.1 仿真图

2,输入正确的密码(532416),数码管显示相应的数字

图5.2 输入数字“5”

图5.3 输入数字“3”

图5.4 输入数字“2”

图5.5 输入数字“4”

图5.6 输入数字“1”

图5.7 输入数字“6”

3,(正确密码)按下确认键,绿灯亮

图5.8 输入正确密码状态图

4,若输入错误密码,则红灯闪烁,蜂鸣器响(图内为导通状态)

图5.9 输入错误密码状态图

第6章设计总结

6.1 设计体会

通过这次课程设计和设计中遇到的问题,我积累了一定的经验,刚开始做设计时总是会犯一些错误,只有经过不停的改错不停的编译才能得到正确的程序。这说明了作为软件编程人员是不能粗心大意的,一个程序的质量的高低与你细心与否有着一定的联系。

设计中要求有耐心和毅力,还要细心,稍有不慎,一个小小的错误就会导致结果的不正确。对错误的检查要求我要有足够的耐心,这对以后从事集成电路设计工作会有一定的帮助。

本次课程设计是我到目前为止觉得受益匪浅也是收获最大的一次实习。身为通信专业的学生,设计是我们将来必需具备的技能。而这次课程设计恰恰给我们提供了一个应用自己所学知识去勇于创新和实践的平台。从通过理论设计,到仿真软件仿真,再到确定具体方案,再到安装实际电路,最后到调试电路、成型。整个过程都需要我充分利用所学的知识进行思考、借鉴。

可以说,本次课程设计是针对前面所学的知识进行的一次比较综合的检验。总的来说,这次课程设计虽然很累,但却是苦中有乐,非常充实。在这次实习中,正确的思路是很重要的,只有你的设计思路是正确的,那你的设计才有可能成功。因此我们在设计前必须做好充分的准备,认真查找详细的资料,为我们设计的成功打下坚实的基础,所以跑图书馆和上网、查资料成为了我每天的必修课。

本次课程设计不仅培养了我们的科学严谨的学习态度,使我们认识到不管做任何事都要付出一定的努力,才会有大的收获。

本次设计的完成,离不开刘老师的指导。在此,非常感谢刘老师的指导和同学的帮助。

参考文献

[1]蔡美琴,张为民,沈新群等.MCS51系列单片机系统及其应用[M].北京:高等教育出版社,1992.

[2]何立民.单片机应用技术选篇(5)[M].北京:北京航空航天大学出版社,1997. [3]杨光友. 单片机微型计算机原理及接口技术[M].北京:中国水利水电出版社,2002 [4]李广弟.单片机基础[M].北京:北京航空航天大学出版社,1994

[5]阎石.数字电子技术基础(第三版). 北京:高等教育出版社,1989

致谢

感谢刘伟春老师对我的指导和悉心帮助和包容。还有同组同学的团队合作,在李星亮老师的悉心指导下我们完成了这次课程设计。课程设计的过程是苦的但也是快乐的。感谢老师和同学的帮助没有你们就没有这编论文,没有你们不可能做出来,再感谢你们。

(完整word版)6位电子密码锁设计

电子信息工程《专业基础课程设计》研究报告 电子密码锁设计 学生姓名: 学生学号: 指导教师: 所在学院: 专业班级: 中国·大庆 2015年 6 月

信息技术学院 课程设计任务书 学院专业级,学号姓名 一、课程设计课题: 电子密码锁设计 二、课程设计工作日自年月日至年月日 三、课程设计进行地点:信息技术学院 321 四、程设计任务要求: 1.课题来源: 教师下发。 2.目的意义:设计一个电子密码锁。 3.基本要求: (1)设计6位电子密码锁,当输入正确密码时,输出开锁信号,用相应的发光二极管点亮表示开锁和关锁; (2)密码可以修改; (3)从第一个按钮触动后15秒内若锁未打开,则电路进入自锁状态,并进行声、光报警。 课程设计评审表

目录 1 设计任务要求 (1) 2 方案比较 (1) 3单元电路设计 (2) 4元件选择 (6) 5整体电路 (8) 6说明电路工作原理 (9) 7 困难问题及解决措施 (10) 8 总结与体会 (10) 9 致谢 (11) 10参考文献 (12)

1设计任务要求 (1)设计6位电子密码锁,当输入正确密码时,输出开锁信号,用相应的发光二极管点亮表示开锁和关锁;(2)密码可以修改; (3一个按钮触动后15秒内若锁未打开,则电路进入自锁状态,并进行声、光报警。 1.1 设计概述 通过本次设计掌握数字电路系统设计的方法,熟悉电子密码锁设计相关硬件的使用,了解电子密码锁的系统构成,利用数字门电路实现电子密码锁的设计与实现,可以加深自己对所学专业的认识,关联知识,增强自己的动手能力,积累实践经验,为以后的工作打好基础。通过本次设计掌握数字电路系统设计的方法,熟悉电子密码锁设计相关硬件的使用,了解电子密码锁的系统构成,利用数字门电路实现电子密码锁的设计与实现,可以加深自己对所学专业的认识,关联知识,增强自己的动手能力,积累实践经验,为以后的工作打好基础。 2方案比较 2.1.1 方案选择 本方案是用按键式的输入方式输入密码,然后预设密码由74HC160和BCD数码管显示,而输入密码则由4508和BCD数码管显示,密码比较由异或门器件来实现,定时装置由555定时 图2方案二原理框图

四位数字密码锁

数字电路基础实验设计报告班级:521 姓名:李世龙 学号:2010052106 设计题目:四位数字密码锁 指导老师:张光普

四位密码锁 一设计任务:通过组合逻辑电路来实现四位密码锁功能。当输入正确的密码时LED灯亮但蜂鸣器不响,输入错误密码时LED灯不亮但蜂鸣器响。当关闭密码锁开关时无论输入什么样的密码LED灯都亮蜂鸣器都响。密码的输入由开关的闭合与断开控制高低电平进行密码的输入。 二设计原理: 开关J1,J2, J3,J4通过接低电平或者接入高电平进行密码的输入,J5为密码锁的开关当它接入高低电平来控制密码锁是否工作。其他的门电路来实现密码锁转换功能。

真值表 J5 J1 J2 J3 J4 LEDBUZZE R 0 ×××× 1 1 1 0 0 0 0 0 1 1 0 0 0 1 0 1 1 0 0 1 0 0 1 1 0 0 1 1 01 1 0 1 0 0 0 1 1 0 1 0 1 0 1 1 0 1 1 0 0 1 1 0 1 1 1 0 1 1 1 0 0 0 0 1 1 1 0 0 1 0 1 1 1 0 1 0 0 1 1 1 0 1 1 0 1 1 1 1 0 0 10 1 1 1 0 1 0 1 1 1 1 1 0 0 1 1 1 1 1 1 0 1 三测量和调试结果: 当J5接入电平密码锁处于非工作状态无论输入密码是什么LED灯都会亮起,蜂鸣器会一直响。当J5接入高电平时密码锁处于正常工作状态,当输入正确的密码1100时即J1,J2接入高电平J3,J4接入低电平时LED灯会亮但蜂鸣器不会响,当输入其他密码时均为错误密码LED灯不亮蜂鸣器会响。 按照设计原理图接好电路后发现输入正确的密码LED灯会亮,但输入错误的密码和密码锁处于非工作状态时蜂鸣器不响。通过对电路的检查发现蜂鸣器的正负接反了重新改正电路,电路正常工作 设计任务完成 四参考文献

6位数字密码锁控制器

得分:_______ 南京林业大学 研究生设计报告 2011 ~ 2012 学年第一学期 课程名称:微机控制与自动化 报告题目:六位数字密码锁控制器 学号: 作者:陈亭亭 联系电话: 任课教师: 二○一一年十二月

六位数字密码锁控制器 一、设计目的: 随着社会的发展,单片机市场已经形成一个规格齐全、品种繁多的大家族,用户有非常大的选择余地。单片机的应用十分广泛,在工业控制领域、家电产品、智能化仪器仪表、计算机外部设备,特别是机电一体化产品中,都有非常重要的用途。本设计作为微机原理与自动化的课程作业,泥实现以下目的: 1.通过自主编程,以熟悉80c51单片机的控制及编程方法; 2.通过设计与编程,熟悉单片机与外设的连接方法; 3.通过使用protel绘画电路图,熟悉protel软件; 4.熟悉液晶显示器的使用方法。 二、设计实现的功能: 1.通过0~9十个数字键实现六位密码的设置,验证和修改,在密码输入错误时系统 会自动报警,可按复位键重新输入密码。 2.通过LED七段数码管显示密码。 三、设计所需的芯片器材 ATMEL公司的AT89C51单片机,74LS273的8D锁存器,74LS244的8位三态缓冲器,LED显示器、按键若干。 四、总体方案设计 1.总体框图设计 选用AT89C51单片机,加上相应的按键、晶振、复位、显示电路,并进行各种软件的设计。密码锁控制器的总体设计框图如图1所示。 2. 显示控制方案 在构成多位LED显示时,点亮数码管的方式有静态显示和动态显示两种。 静态显示方式:LED的静态显示是指当数码管显示某一字符时,相应段的发光二极管处于恒定地导通或截止状态,直到显示另一字符为止。 静态显示方式各位可独立显示。由于各位分别由一个8位I/O接口控制段选码,故在同一时间里,每一位显示的字符可以各不相同。这种显示方式接口,较小的电流即可获得

4位数字密码锁的设计

1技术指标 用与非门设计一个4位或多位代码的数字锁,要求如下: A:设计一个保险箱用的多位代码数字锁,比如4位代码ABCD四个输入端和一个开锁用的钥匙插孔输入端E,当开箱时(E=1),如果输入代码(例如ABCD=1010)与设定的代码相同,则保险箱被打开,即输出端Z=1,否则电路发出报警信号: B: 进行电路仿真,并说明其工作原理。

2方案比较 方案一:由4个单刀双掷开关构成密码开关,用户可以通过控制开关来控制A、B、C、

3Proteus软件介绍 Proteus软件是来自英国Labcenter electronics公司的EDA工具软件。 Proteus软件有十多年的历史,在全球广泛使用,除了其具有和其它EDA工具一样的原理布图、PCB自动或人工布线及电路仿真的功能外,其革命性的功能是,他的电路仿真是互动的,针对微处理器的应用,还可以直接在基于原理图的虚拟原型上编程,并实现软件源码级的实时调试,如有显示及输出,还能看到运行后输入输出的效果,配合系统配置的虚拟仪器如示波器、逻辑分析仪等,您不需要别的,Proteus为您建立了完备的电子设计开发环境!尤其重要的是Proteus Lite可以完全免费,也可以花微不足道的费用注册达到更好的效果;功能最强的Proteus专业版也非常便宜,人人用得起,对高校还有更多优惠。 Proteus组合了高级原理布图、混合模式SPICE仿真,PCB设计以及自动布线来实现一个完整的电子设计系统。此系统受益于15年来的持续开发,被《电子世界》在其对PCB 设计系统的比较文章中评为最好产品—“The Route to PCB CAD”。Proteus产品系列也包含了我们革命性的VSM技术,用户可以对基于微控制器的设计连同所有的周围电子器件一起仿真。用户甚至可以实时采用诸如LED/LCD、键盘、RS232终端等动态外设模型来对设计进行交互仿真。 其功能模块:—个易用而又功能强大的ISIS原理布图工具;PROSPICE混合模型SPICE仿真;ARES PCB设计。PROSPICE仿真器的一个扩展PROTEUS VSM:便于包括所有相关的器件的基于微处理器设计的协同仿真。此外,还可以结合微控制器软件使用动态的键盘,开关,按钮,LEDs甚至LCD显示CPU模型。 Proteus支持许多通用的微控制器,如PIC,A VR,HC11以及8051。 交互的装置模型包括:LED和LCD显示,RS232终端,通用键盘。 Proteus有强大的调试工具;包括寄存器和存储器,断点和单步模式。 IAR C-SPY和Keil uVision2等开发工具的源层调试。 Proteus应用特殊模型的DLL界面-提供有关元件库的全部文件。 Proteus与其他的仿真软件相比较,在下面的优点: 1、能仿真模拟电路、数字电路、数模混合电路; 2、能绘制原理图、PCB图; 3、几乎包括实际中所有使用的仪器;

《数字密码锁》教学设计 兴隆县茅山联小贾慧雅

《数字密码锁》教学设计 兴隆县兴隆镇学区茅山联小贾慧雅 一、教学内容:冀教版《数学》六年级下册探索乐园51页、52页。 二、教学目标: 1.结合具体事例,经历探索数字密码编码规律的过程。 2.了解数字密码的编码规律,能解答简单数字编码的实际问题。 3.知道数字密码的用途,体会数学的价值,树立学好数学的信心。 三、教学重难点 教学重点:自主探索出数字密码的编码规律并能运用规律解决生活中的实际问题。 教学难点:推算出三位密码的组成规律及依据。 四、教学过程: (一)情境导入 1、利用学生感兴趣的谜语导入:一把缺口剑,佩带在腰间,若要进门去,门上转一转。由谜底是钥匙引入本节课内容:数字密码锁。 (预设:学生可能会提到指纹锁,毕竟现在很多手机都是指纹解锁,此时教师应予以肯定,如果学生没有提到数字密码锁,教师可以课件出示使用数字密码锁物品的相关图片进行提示。) 2、让学生寻找生活中哪些物品使用数字密码锁呢? (预设:保险柜、保险箱、旅行箱、手机等等。) (设计意图:让学生了解数学来源于生活,而又服务于生活。感受到数学与生活的密切联系。) 3、提出兔博士的问题:旅行箱上为什么采用数字密码锁? (设计意图:让学生明白数字密码锁存在的必要性及重要意义。)(二)探究新知,精讲点拨 1、两位密码:先研究一下比较简单的两位密码,假如密码锁的密码是由两个数字□□组成的,每格都可以出现0、1、 2、 3、 4、 5、

6、7、8、9十个数字。这样的密码锁一共有多少个密码呢? 用0打头时可以组成几个密码?学生可以在本上写一写。 用0打头,可以得到10个密码:00、01、02、03、04、05、06、07、08、09。 用1打头呢?也得到10个密码:10、11、12、13、14、15、16、17、18、19。 用2打头呢?按这样推算,十个数字就能组成100个密码,用算式表示就是10×10=100(个)。 2、三位密码:如果密码锁的密码是由三个数字□□□组成的,那么0、1、2、 3、 4、 5、 6、 7、 8、9十个数字就能组成1000个密码。 10×10×10=1000(个) 提出蓝灵鼠的问题:你能根据两个数组成100个密码推算出这个结果吗?试一试! (预设:●组成密码的数字都可以是0、1、2、3、4、5、6、7、8、9的十个数字。如果第一位数字是0,第二位数字是0,第三位数字是0、1、2、3、4、5、6、7、8、9,即:000、001、002、003、…009共10个密码。 如果第一位数字是0,第二位数字是1,第三位数字是0、1、2、3、4、5、6、7、8、9,即:010、011、012、013、…019共10个密码;……,所以第一位数字是0的密码共有10×10=100(个) 同样第一位数字是1,也有100个,第一位数字是2,也有100个,…第一位数字是9,也有100个,所以由三个数字组成的密码共有10×10×10=1000(个) ●用0、1、2、3、4、5、6、7、8、9可以组成100个两个数字的密码,在每个密码后面再加一个数字,都能组成10个密码,所以一共可以组成100×10=1000(个) ●用0、1、2、3、4、5、6、7、8、9十个数字中任一个数打头,

PLC六位密码锁

课程名称:可编程控制器技术及应用 设计题目:基于PLC的六位密码锁设计院系:电气工程系 专业:电子信息工程 年级:20 09级 姓名:李垚 指导教师:许金福 西南交通大学峨眉校区 2012 年 4 月13 日

课程设计任务书 专业电子信息工程姓名李垚学号20098157 开题日期:2012 年 3 月 1 日完成日期:2012 年 6 月15 日 题目基于PLC的六密码锁设计 一、设计的目的 1) 设计出PLC控制的密码锁程序; 2) 掌握PLC的编程软件编程平台、定时器、计数器、传送指令、主子程序等有关指令的编程方法; 3)熟悉PLC与上机通讯、软件调试的方法; 4)培养大学生的综合设计能力、分析问题与解决问题的能力。 二、设计的内容及要求 1)设计内容:用PLC设计一个6位密码锁,实现对重要场所的安全门控。 2)设计要求:A、输入密码正确时,执行开门信号。 B、输入密码错误3次以上时报警,密码输入正确后取消报警。 C、重设密码。 三、指导教师评语 四、成绩 指导教师(签章) 年月日摘要:本设计是采用西门子PLC来设计密码程序的,程序中应用到 了近20 个计数器。设计的密码锁外观图类似于银行取款机台上的键 盘。给人感觉就和那种输入密码的过程一样。其实不然,本设计中采 用了计数器控制的特点,每个计数器的次数设定为几次那么所对应的 按键就要按几次。本设计分为开锁环节和解锁环节,开锁环节设定六

个按键有效,解锁环节设定了七个按键有效,这样一来设定的开锁密 码位数就大于等于六位了,解锁密码位数就大于等于七位。要看计数 器设定的次数而定。如果密码锁报警的话必须先输入解锁密码,后输 入开锁密码方能开锁。 设计背景: 随着人们生活水平的提高,如何实现家庭放到这一问题也变得尤其的突出,传统的机械锁由于其结构的简单,被撬的事件屡见不鲜,同时,季节所一般配有金属钥匙,带起来太重,万一弄丢了,所可能就没用了。电子锁保密性高,密码泄露了,换个密码,锁照样能用;使用灵活性好,安全系数高,能够防止不法分子多次试探密码;性价比好,因此,密码锁受到了广大用户的青睐。 出于安全、方便等方面的需要,许多智能锁(如指纹辨识、IC卡辨识)已相继问世,但这些产品的特点是针对特定指纹或有效卡,只能使用与保密要求高且仅供个别人使用的箱、柜。房间等,而且卡片式IC卡还有易丢失等特点,加上成本比较高,一定程度上限制了这类产品的普及和推广。 电子锁是采取电子电路控制,以电磁铁或者卫星电机和锁体作为执行装置的机电一体化锁具,相比传统的机械锁具,电子锁不适用金属钥匙,保密性、精度都有很大提高。电子所得发明思路,源自古代发明的自动机械,例如古希腊数学家赫伦的液压自动门,中国古代诸葛亮的木牛流马,它们以重力或蒸汽压力驱动,最广泛的用途乃是用在古代木道德地下机关。电子工业的诞生,使得一微小电量驱动机械成为可能,于是有了电子锁一日潜力的跃进。 一、I/O模块的选择 在PLC控制系统中,为了实现生产机械的控制,需要将对象的各种测量参数按要求的方式送入PLC,PLC经过计算处理以后再将结果以数字量的形式输出,此时也把该输出变换为适合于生产机械控制的量,输入模块的选择应考虑输入信号的不同即数字量和模拟量,根据现场设备模块之间的距离进行选

数字电路设计实验-简易密码锁

数字电路设计实验报告 ——简易密码锁 学院: 班级: 学号: 姓名:

目录 ●任务要求 ●系统设计 ?设计思路 ?总体框图 ?分块设计 ●波形仿真及波形分析●源代码 ●功能分析 ●故障分析及问题解决●总结及结论

●任务要求 设计并实现一个数字密码锁,密码锁有四位数字密码和一个确认开锁按键,密码输入正确,密码锁打开,密码输入错误进行警示。 基本要求: 1、密码设置:通过键盘进行4 位数字密码设定输入,在数码管上显示所输入数字。通过密码设置确定键(BTN 键)进行锁定。 2、开锁:在闭锁状态下,可以输入密码开锁,且每输入一位密码,在数码管上显示“-”,提示已输入密码的位数。输入四位核对密码后,按“开锁”键,若密码正确则系统开锁,若密码错误系统仍然处于闭锁状态,并用蜂鸣器或led 闪烁报警。 3、在开锁状态下,可以通过密码复位键(BTN 键)来清除密码,恢复初始密码“0000”。闭锁状态下不能清除密码。 4、用点阵显示开锁和闭锁状态。 提高要求: 1、输入密码数字由右向左依次显示,即:每输入一数字显示在最右边的数码管上,同时将先前输入的所有数字向左移动一位。 2、密码锁的密码位数(4~6 位)可调。 3、自拟其它功能。 ●系统设计 设计思路 将电子密码锁系统分为三个部分来进行设计,数字密码输入部分、密码锁控制电路和密码锁显示电路。密码锁输入电路包括时序产生电路,键盘扫描电路,键盘译码电路等,将用

户手动输入的相关密码信息转换为软件所能识别的编码,作为整个电路的输入。密码锁控制电路包括相应的数据存储电路,密码核对电路,能够进行数值的比较,进行电路解锁,开锁,密码的重新设置等。密码锁显示电路包括将待显示数据的BCD 码转换成数码管的七段显示驱动编码,密码锁在相应的状态下的点阵输出以及蜂鸣器的报警输出。 总体框图 按复位键 键入初始密码0000 密码错误 密码正确 按确认键 按复位键 按确认键 密码锁显示电路 密码锁控制电路 数码管显示 报警电路 密码更改与密码设计电路 键入状态 闭锁状态 开锁状态 报警状态

简单六位数字密码锁

目录 第1章绪论 (1) 1.1 设计任务 (1) 1.2 设计要求 (1) 第2章系统方案设计 (2) 2.1 硬件设计思想 (2) 2.2软件设计思想 (3) 第3章电路设计 (4) 3.1 电路原理 (4) 3.2 电路原理图 (4) 第4章程序设计 (5) 4.1流程图 (5) 4.2 算法描述 (5) 第5章程序清单与仿真结果 (6) 5.1 程序清单 (6) 5.2 仿真结果 (14) 第6章设计总结 (17) 6.1 设计体会 (17) 参考文献 (18) 致谢 (19) 实物展示.................................... 错误!未定义书签。

第1章绪论 1.1 设计任务 (1)设置七个键位,分别是确认,数字1,数字2,数字3,数字4,数字5,数字6,工作有提示(设通电状态为红灯亮)。 (2)在单片机内部预设六位密码,在使用密码解锁器时,要按预设的密码依次输入才能完成解锁。预设密码以外的数字都不能解开密码锁(如输入非6位或输入6位与预设密码不同的数字)。 (3)输入密码时,数码管同步显示输入的数字。 (4)输入正确后,有解锁提示(设为绿灯亮),输入错误后也有提示(设为红灯闪烁和鸣笛警告) (5)输入错误后可以重输,要有复位功能。 1.2 设计要求 利用AT89S52单片机的P2端口的P2.0--P2.6连接到7个按键开关上,分别是输入键数字1,数字2,数字3,数字4,数字5,数字6和确认键,P2.7接蜂鸣器。启动时,按下电源开关,红色指示灯长亮,输入密码,而数码管显示输入的相应数字,然后按下确认键,若密码正确,绿灯亮,数码管熄灭,弱密码错误,红灯闪烁,蜂鸣器响,发出警报。

4位数字密码锁的设计

1技术指标? 用与非门设计一个4位或多位代码的数字锁,要求如下: A:设计一个保险箱用的多位代码数字锁,比如4位代码ABCD四个输入端和一个开锁用的钥匙插孔输入端E,当开箱时(E=1),如果输入代码(例如ABCD=1010)与设定的代码相同,则保险箱被打开,即输出端Z=1,否则电路发出报警信号: B:进行电路仿真,并说明其工作原理。

2方案比较 方案一:由4个单刀双掷开关构成密码开关,用户可以通过控制开关来控制A、B、C、D四个输入端的电平的高低,进而控制输出电平的高低以及报警信号的工作。当输入端与

方案二:用4个异或门连接输入端,并分别于反相器连接,再相与。当输入密码与设置密码相同时,电路输出为高电平,发光二极管不亮,当输入密码与设置密码不相同时,电路输出为低电平,发出报警,发光二极管亮。其电路图如图6.1 3Proteus软件介绍 Proteus软件是来自英国Labcenterelectronics公司的EDA工具软件。 Proteus软件有十多年的历史,在全球广泛使用,除了其具有和其它EDA工具一样的原理布图、PCB自动或人工布线及电路仿真的功能外,其革命性的功能是,他的电路仿真是互动的,针对微处理器的应用,还可以直接在基于原理图的虚拟原型上编程,并实现软件源码级的实时调试,如有显示及输出,还能看到运行后输入输出的效果,配合系统配置的虚拟仪器如示波器、逻辑分析仪等,您不需要别的,Proteus为您建立了完备的电子设计开发环境!尤其重要的是Proteus Lite可以完全免费,也可以花微不足道的费用注册达到更好的效果;功能最强的Proteus专业版也非常便宜,人人用得起,对高校还有更多优惠。?Proteus组合了高级原理布图、混合模式SPICE仿真,PCB设计以及自动布线来实现一个完整的电子设计系统。此系统受益于15年来的持续开发,被《电子世界》在其对PCB设计系统的比较文章中评为最好产品—“The Route to PCB CAD”。Proteus产

四位数字密码锁设计

电子科技大学 数字电路课程设计报告题目:保险箱用四位数字代码锁 院系: 专业: 学号: 学生姓名: 指导教师:

保险箱用四位数字代码锁 一.设计要求: 设计一个保险箱用的4位数字代码锁,该锁有规定的地址代码A、B、C、D4个输入端和一个开箱钥匙孔信号E的输入端,锁的代码由实验者自编。当用钥匙开箱时,如果输入的4个代码正确,保险箱被打开;否则,电路将发出警报(可用发光二极管亮表示)。 具体要求:1)写出改组合逻辑电路的分析和设计方法; 2)参考有关资料画出原理图,找出要使用的芯片; 3)画出真值表以验证是否真确; 4)使用Verilog HDL语言进行仿真。 二.设计方案: 1.该组合逻辑电路的分析和设计方法: 本设计方案中我采用多路复用器,2-4译码器,LED灯和或门等器件来完成设计。用2个74x151多路复用器扩展为16-2多路复用器,题目中的地址代码A、B、C、D4个输入端作为扩展的多路复用器的地址端,D0-D8作为数据端。开箱钥匙孔信号E作为2-4decoder的使能端。设计开锁的正确代码为0101,当用钥匙开锁(即2-4decoder的使能端有效)时,如果正确输入开锁密码:0101,则输出Y为逻辑高电平,Y’为逻辑低电平,锁被打开,而LED灯不会亮(即不会报警);如果输入的密码错误或者钥匙孔信号无效,则输出Y为逻辑低电平,Y’为逻辑高电平,锁无法打开,逻辑高电平Y’驱动LED灯亮,产生报警效果。 2.设计原理图:(以下电路图为用Quartus II综合后截屏所得) 总体逻辑电路图

151多路复用器逻辑电路图 假设用钥匙开锁(即钥匙孔信号E有效)时的真值表 4.Verilog HDL语言仿真: 程序代码: module e2_4decoder(i,en,y); input en; input [1:0] i; output [3:0] y; reg [3:0] y; always @(i or en)begin if(en)

四位数字密码锁的设计

EDA 课程设计报告书 课题名称 四位数字密码锁的设计 姓 名 学 号 院 系 专 业 指导教师 年 月 日 ※※※※※※※※※ ※※ ※※ ※ ※ ※※※※※※※※※ 级学生 EDA 课程设计

设计任务及要求: (1)设计任务: 本课程设计要求设计的数字密码锁密码为4位,由密码锁输入电路、码锁控制电路、密码锁处理电路、显示电路四大部分组成,将各电路组合起来,构成了一个完整的电子密码锁。 (2)设计要求: ①、密码输入:每按一个数字键,就输入一个数值,且将在显示器上的最 右上方显示出该数字,并将先前已经输入的数据依序左移一位。 ②、数码清除:按下此键可以清除前面所有的输入值,清除成为“0000”。 ③、密码修改:按下此键时将目前的数字设定成新的密码。 ④、激活电锁:按下此键可将密码锁上锁,红色LED灯将闪烁一次。 ⑤、解除电锁:按下此键会检查输入的密码是否正确,若绿色LED亮则表 示密码正确,密码锁将解锁。 指导教师签名: 年月日二、指导教师评语: 指导教师签名: 年月日 三、成绩 验收盖章 年月日

四位数字密码锁的设计 1 设计目的 随着人们生活水平的提高,如何实现家庭防盗这一问题也变的尤其的突出,传统的机械锁由于其构造简单,被撬的事件屡见不鲜,电子锁由于其保密性高,使用灵活性好,安全系数高,受到了广大用户的喜爱,电子密码锁的使用也体现了人们消费水平、保安意识和科技水平的提高,而且避免了携带甚至丢失钥匙的麻烦。 2 设计的主要内容和要求 设计一个简单的数字电子密码锁,密码为 4 位。要求具备如下功能: (1)如果输入数字键,第一个数字会从数码管的最右端开始显示,此后每按下一个数字键,数码管上的数字必须往左移动一格,以便将新的数字显示出来。 (2)本密码锁为四位密码锁,当输入的数字超过四个时,不会显示第四个以后的数字。 (3)按下密码清零键,清除所有输入的数字,清除成为“0000”,即做归零动作。 (4)按下解锁键,检查输入的密码是否正确,若解锁指示灯(绿色LED灯)闪烁一次,即表示密码正确(开锁)。 (5)按下改密键,将当前输入的数字设置成新密码,且上锁指示灯(红色LED 灯)闪烁一次,即密码锁已上锁。 3 整体设计方案 本系统采用模块化的设计,整个系统分为数字按键输入、时钟输入、功能按键输入、数字译码块、功能译码模块、核心处理模块、输出处理模块、显示译码电路八个模块。整体电路如图3.1所示。

张平(六位十进制密码锁)-(自动保存的)

张平(六位十进制密码锁)-(自动保存的)

电子初级技能培训2 论文 论文题目:电子密码锁 指导老师:盛磊钟伟 学生姓名:张平 学号: 201412021715 专业:电子信息工程技术 1

2015年 12月01日 2

摘要 锁,是一种保护隐私和秘密的重要工具。如今大到国家机关,小到居民住宅,锁无处不在。密码锁是锁的一种,开启时用的是一系列的数字或符号组成的密码。而电子密码锁是一种通过密码输入来控制电路或是芯片工作,从而控制机械开关的闭合,完成开锁、闭锁任务的电子产品。它的种类很多,有简易的电路产品,也有基于芯片的性价比较高的产品。现在应用较广的电子密码锁是以芯片为核心,通过编程来实现锁的功能的,而我用数字电路来实现电子密码锁的功能。 在本次技能培训中,我组设计了一个六位十进制密码锁。主要分为如下几个部分: 1.用户密码输入单元:位于密码锁外部,为用户提供拨码开关式输入 密码的方式。 2.密码显示单元:用拨码开关对数码管输入一组固定的值来代替密码 防止密码被盗窃。 3.真实密码存储单元:位于密码锁内部,用拨码开关存储真实密码, 且该密码可以被用户修改。 4.密码正误判定单元:位于密码锁内部,用数值比较器来判断用户密 码是否输入正确。 5.连续计次报警单元:位于密码锁内部,计时器配合一个蜂鸣器和红 绿灯,当输入密码三次结束后还没有正确的密码输入,则蜂鸣器报 警三秒且红灯亮,输入正确则绿灯亮且开锁。 关键词:计数器,计时器,锁存器,数值比较器。 3

Abstract it is a kind of important means of protecting privacy and secret. Now the big to the state organs, small to residential, lock is everywhere. A combination lock is a lock, open use the password is composed of a series of Numbers or symbols. And electronic combination lock is a password or to control circuit, so as to control mechanical switches closed, lock, lock task of electronic products. It's a lot of more phyletic, has simple circuit products, also has a high cost performance products based on the chip. Widely used on electronic combination lock is now chip as the core, through the programming to realize the function of the lock, and I use digital circuits to realize the function of electronic combination lock. In this training, my group has designed a six decimal coded lock. Mainly divided into the following several parts: 1. User password input unit: located in the combination lock external, to provide users with dial the code switch type a password. 2. Password display unit: dial the code switch to digital tube a fixed set of input values instead of a password to prevent password theft. 3. The real password storage unit: in the combination lock, with dial the code switch store real password, the password can be modified by the user. 4. The password is right and wrong decision unit: in the combination lock, use numerical comparator to determine whether the user password input is correct. 5. Continuous would alarm unit: the combination lock, internal timer with a buzzer and traffic lights, when the end of the input password 4

设计一个简单的密码锁

龙源期刊网 https://www.360docs.net/doc/5711250061.html, 设计一个简单的密码锁 作者:谢作如池梦茹 来源:《中国信息技术教育》2016年第09期 密码锁是锁的一种,开启时用的是一系列的数字或符号,在生活中十分常见。图1是一个常见的密码锁,用于锁皮箱、抽屉等私人空间。图2所示的也是密码锁,这是一个密码水龙头,只有输入正确的数字密码,才能打开。当然,这个设计在实际使用中未必很方便,但谁也不能否认这是个有趣的想法:连水龙头都可以设置密码,还有什么不可以设置密码呢? 常见的密码锁一般使用机械结构,转动一组刻有数字的拨轮圈,可以带动锁内部的机械。Boson Kit(具体介绍见上期文章)为我们提供了与、或、非等逻辑模块,那么能否用它来做一个基于逻辑的数字密码锁呢?本案例将具体介绍如何用Boson Kit设定密码来控制一只小灯。 ● 功能分析 Boson Kit主板电源的功能很简单,只要输出给小灯的是高电位,就能控制小灯亮。但是我们希望达到的功能是:按下相应的按钮才能点亮小灯。为了使按钮能稳定在“按下”和“弹起”两种状态,我们选择了自锁开关模块作为密码按键。自锁开关是一种能够锁住自己的开关,在第一次按开关按钮时,开关接通并保持,即自锁;在第二次按开关按钮时,开关断开,同时开关按钮弹出来。用计算机的0、1表示其工作输出值,按下为1,弹起为0。如果想要一个数字密码键,只要给开关的按钮贴上数字就可以了。 假设我们的密码键有1、2、3三个数字,而我们的密码是3、1,只有先按下3再按下1,按键2处于弹起的状态时,才算解锁成功。下面,我们来逐步分析设置密码的过程。 1.利用And(逻辑与)模块实现3、1要同时按下才能解锁 在And模块的帮助下,实现按下2位数字解锁十分容易,如图3所示。 但是,这肯定存在问题:当按键1、2、3全部被按下的时候,小灯自然就亮了,完全没有达到密码的功效。 2.利用or(逻辑非)模块实现按钮2弹起状态才能解锁 要让按键1、3被按下而按键2未被按下,这里又多了一个条件,这就需要用到or(逻辑非)模块。线路图可以参考图4所示,此时只有按下1和3且2未按下,灯才能亮起。 3.实现3、1的先后次序按键才能解锁

简单六位数字密码锁

简单六位数字密码锁 This manuscript was revised on November 28, 2020

目录

第1章绪论 设计任务 (1)设置七个键位,分别是确认,数字1,数字2,数字3,数字4,数字5,数字6,工作有提示(设通电状态为红灯亮)。 (2)在单片机内部预设六位密码,在使用密码解锁器时,要按预设的密码依次输入才能完成解锁。预设密码以外的数字都不能解开密码锁(如输入非6位或输入6位与预设密码不同的数字)。 (3)输入密码时,数码管同步显示输入的数字。 (4)输入正确后,有解锁提示(设为绿灯亮),输入错误后也有提示(设为红灯闪烁和鸣笛警告) (5)输入错误后可以重输,要有复位功能。 设计要求 利用AT89S52单片机的P2端口的连接到7个按键开关上,分别是输入键数字1,数字2,数字3,数字4,数字5,数字6和确认键,接蜂鸣器。启动时,按下电源开关,红色指示灯长亮,输入密码,而数码管显示输入的相应数字,然后按下确认键,若密码正确,绿灯亮,数码管熄灭,弱密码错误,红灯闪烁,蜂鸣器响,发出警报。 第2章系统方案设计 硬件设计思想 键盘设计 本设计使用7按键,从上到下,从左至右依次设为确认键,数字1,数字2,数字3,数字4,数字5,数字6,用来输入密码,如下图 图键盘仿真图 数字显示设计 使用共阳极七段数码管来显示输入的数字,图如下: 图显示仿真图 检验密码电路设计 使用LED灯和蜂鸣器来提示输入的密码是否正确,若密码正确,绿灯亮,若密码错误,红灯闪烁,蜂鸣器响,电路如图: 图密码验证系统仿真图

软件设计思想 电子密码锁工作的主要过程是从键盘开始输入密码,同时LED显示密码输入情况,按下确认键后判断密码的正确性,作出开锁或报警处理。 密码的设定,在此程序中密码是固定的,预设的密码为"532416"共6位密码。 在单片机内部预设六位密码,在使用密码解锁器时,要按预设的密码依次输入才能完成解锁。预设密码以外的数字都不能解开密码锁(如输入非6位或输入6位与预设密码不同的数字) 输入密码时,数码管要在单片机的控制下同步显示输入的数字。 第3章电路设计 电路原理 单片机最小系统。一个AT89S52单片机做为控制电路,运用其P2口来实现密码的输入和蜂鸣器的报警,通过P0口给数码显示管高低不同电平信号,来实现输入密码的显示,P1接指示灯。 电路原理图 图电路原理图 第4章程序设计 流程图 图系统流程图 算法描述 1、设计一个延时子程序 void delayms(unsigned int t) { unsigned int i,j; for(i=t;i>0;i--) for(j=114;j>0;j--); } 2、主程序 void init() void delayms(unsigned int t) void main()

数字密码锁

EDA综合设计实验设计题目:数字密码锁 本系统采用有限状态机进行设计,目的在于实现八位二进制,串行输入数字密码锁,并具有开锁与错误提示。开锁代码为八位二进制数,当输入代码的位数和位值与预先设置的密码一致时方可开锁,并使数码管显示由“B”变为“A”

设计报告 目录 1、摘要 (003) 2、数字密码锁的设计 (003) 2.1 系统设计 (003) 2.2 单元电路设计 (004) 2.3 软件设计 (004) 3、系统测试 (005) 4、结论 (006) 5、参考书目 (006) 6、附录 (007)

一、摘要 本系统是基于EDA作为开发工具,VHDL语言为硬件描述语言,QUARTUS II作为程序运行平台,所开发的程序通过调试运行、波形仿真验证,初步实现了设计目标。 本系统采用有限状态机进行设计,目的在于实现八位二进制,串行输入数字密码锁,并具有开锁与错误提示。开锁代码为八位二进制数,当输入代码的位数和位值与预先设置的密码一致时方可开锁,并使数码管显示由“B”变为“A”。 二、数字密码锁的设计 数字密码锁有两类:一类是并行接收数据,称为并行锁;一类是串行接受数据,称为串行锁。如果输入代码与锁内密码一致,锁被打开;否则,应封闭开锁电路。 (一)系统设计 本系统的设计要求是八位二进制,串行输入数字密码锁,并具有开锁与错误提示。 方案一:由时钟脉冲发生器、按键、指示灯和控制部分等组成。时钟输入CLK由外部时钟脉冲发生器的输出提供。设计中的指示灯就是发光二极管,共十个,用来指示系统的工作状态。其中八个为一组,用来显示已经输入的密码的个数,剩余两个,一个为开锁绿色指示灯LT;另一个为报警红色指示灯LF。控制部分是VHDL语言设计的核心部分,主要由方波生成模块、消抖同步模块和密码锁逻辑控制模块这四个模块组成,可以完成密码的修改、设定及非法入侵警报、驱动外围电路等功能(原理图如图一所示)。本系统虽然设计完善,但程序复杂,占用资源多,设计不够灵活。故本设计采用方案二。 图一:方案一设计图

三位密码锁实验报告

数字系统设计

实习(训)报告评语 等级: 评阅人:职称: 年月日

河南工程学院 实习(训)报告 实习目的(内容):电子密码锁 实习时间:自 6 月17 日至 6 月28 日 共12天 实习地点:三号实验楼A307 实习单位: 指导老师: 翁嘉民系主任: 3

目录 1.引言 (5) 2.设计思想 (6) 2.1系统原理框图 2.2总体实现原理 3.芯片主控设计 (7) 3.1系统设计方案 3.2FPGA有限状态机 3.3设计流程 3.4状态编码 3.5密码的输入 3.6密码记录与比较 3.7密码的显示 4.引脚锁定 (11) 5.程序仿真 (13) 6.方框图 (14) 7.心得体会 (18) 4

基于Verilog HDL的FPGA的电子密码锁的设计报告摘要:基于FPGA设计的电子密码锁是一个小型的数字系统,与普通机械锁相比,具有许多独特的优点:保密性好,防盗性强,可以不用钥匙,记住密码即可开锁等。目前使用的电子密码锁大部分是基于单片机技术,以单片机为主要器件。在实际应用中,程序容易跑飞,系统的可靠性较差。本文介绍的一种基于现场可编辑门阵列FPGA器件的电子密码锁的设计方法,采用VHDL语言对系统进行描述,并在EP3C10E144C8上实现。 通过仿真调试,利用可编程逻辑器件FPGA的电子密码锁的设计基本达到了预期目的。当然,该系统在一些细节的设计上还需要不断地完善和改进,特别是对系统的扩展有很好的使用系统和设计的价值。 一、引言 数字电路主要是基于两个信号(我们可以简单的说是有电压和无电压),用数字信号完成对数字量进行算术运算和逻辑运算的电路我们称之为数字电路,它具有逻辑运算和逻辑处理等功能,数字电路可分为组合逻辑电路和时序逻辑电路。 1 EDA简介 EDA(Electronics Design Automation)技术是随着集成电路和计算机技术的飞速发展应运而生的一种高级、快速、有效的电子设计自动化工具。它是为解决自动控制系统设计而提出的,从70年代经历了计算机辅助设计(CAD),计算机辅助工程(CAE),电子系统设计自动化(ESDA)3个阶段。前两个阶段的EDA产品都只是个别或部分的解决了电子产品设计中的工程问题;第三代EDA工具根据工程设计中的瓶颈和矛盾对设计数据库实现了统一管理,并提出了并行设计环境概念,提供了独立于工艺和厂家的系统级的设计工具。EDA关键技术之一就是采用硬件描述语言对硬件电路进行描述,且具有系统级仿真和综合能力。目前应用比较广泛的硬件描述语言就是Verilog HDL。 2 Verilog HDL简介 Verilog HDL和VHDL一样,是目前大规模集成电路设计中最具代表性、使用最广泛的硬件描述语言之一。Verilog HDL具有如下特点: (1)能够在不同的抽象层次上,如系统级、行为级、RTL级、门级和开关级,对设计系统进行精确而简练的描述。 (2)能够在每个抽象层次的描述上对设计进行仿真验证,及时发现及时发现可能存在

数字密码锁设计

数字密码锁设计 一、设计任务与要求 设计由编码器、集成逻辑门电路、声光报警指示电路构成的密码锁电路,研究门电路的接口与驱动技术、学习组合逻辑电路的设计方法;用Proteus 软件仿真;实验测试逻辑功能。 具体要求如下: (1)密码锁电路由密码输入电路、密码设置电路和密码控制电路组成,密码输入及密码设置均采用十进制数形式,密码输入通过键盘或按键输入。密码设置通过开关输入。 (2)如果输入的密码与预先设定的密码相同,则保险箱被打开,密码控制电路的输出端E=1,F=0;否则电路发出声、光报警信号,即输出端E=0,F=1。 (3)实验时,“锁被打开”的状态可用绿色发光二极管指示;声、光报警可分别用红色发光二极管及蜂鸣器指示。 (4)写出设计步骤,画出最简的逻辑电路图。 (5)对设计的电路进行仿真、修改,使仿真结果达到设计要求。 (6)安装并测试电路的逻辑功能。 (7)拓展内容:如果考虑一个开锁用的钥匙插孔输入端G,当开锁时(G=1),密码输入才有效,试在上述电路基础上修改该电路。 二、课题分析及设计思路 (1)密码输入电路及密码设置电路的设计思路 由于密码输入及密码设置均采用十进制数形式,故可利用8421BCD 码编码器分别实现,以一位密码输入及密码设置为例,其实现框图如下: 图1 密码输入及密码设置电路的实现框图 (2)密码控制电路的设计思路 分析以上设计任务与要求,密码控制电路的实现框图如下:

图2 密码控制电路实现框图 很容易得到:)()()()(1111D D C C B B A A F E ⊕?⊕?⊕?⊕== 由上述逻辑表达式可确定相应的逻辑电路图。 (3)TTL 集成门电路与LED 发光二极管的接口电路设计 TTL 集成门电路除了可驱动门电路外,还能驱动一些其它器件如LED 发光二极管。以集成反相器为例,有如下两种情况如图3(a )、(b)所示: 图3(a ) 输出高电平时LED 亮 图3 (b) 输出低电平时LED 亮 电路中串接的电阻R1、R2 为限流电阻,其作用是保护LED 因过流而烧坏。其大小按如下公式进行选择: D F OH I V V R -=1 D OL F CC I V V V R --=2 上述两式中,I D 为LED 正常发光时的电流,V F 为LED 导通电压,V OH 、V OL 分别为 反相器的高、低电平输出电压。如I D =5mA ,V F =2.2V ,V OH =3.4V ,V OL =0.2V 时,算得R1=240欧,R2=520 欧。 注意:① 图3(a )接法时,发光二极管的电流不能超过门电路的“最大拉电流”,图3(b) 接法时,发光二极管的电流不能超过门电路的“最大灌电流”,否则会导致输出电平的 混乱。当然,如果该门电路处于整个逻辑电路的最末端,则发光二极管的电流可不受此

相关文档
最新文档