保险箱用的4位数字代码锁设计1.doc

上传人:laozhun 文档编号:2884708 上传时间:2023-03-01 格式:DOC 页数:6 大小:176KB
返回 下载 相关 举报
保险箱用的4位数字代码锁设计1.doc_第1页
第1页 / 共6页
保险箱用的4位数字代码锁设计1.doc_第2页
第2页 / 共6页
保险箱用的4位数字代码锁设计1.doc_第3页
第3页 / 共6页
保险箱用的4位数字代码锁设计1.doc_第4页
第4页 / 共6页
保险箱用的4位数字代码锁设计1.doc_第5页
第5页 / 共6页
点击查看更多>>
资源描述

《保险箱用的4位数字代码锁设计1.doc》由会员分享,可在线阅读,更多相关《保险箱用的4位数字代码锁设计1.doc(6页珍藏版)》请在三一办公上搜索。

1、保险箱用的4位数字代码锁设计设计者:徐斌 2907304002郑海潮 2907304004(排名不分先后)指导老师:姜书艳自动化工程学院摘要:本次设计的任务是设计一个保险箱用的4位数字代码锁,我们利用数字逻辑电路,通过门电路完成设计目的,并在原有设计要求的基础上,实现了密码锁可修改密码的功能,这样用户可根据自己需要设定并随时修改密码。另外,我们设定了三个输出,增强了电路的输出功能,增加了可读性。关键字:校验密码,预设密码,使能,逻辑门,警报总体方案设计:1.设计思路:根据设计要求,我们设计的密码锁有五个输入,四个密码预设值和三个输出,分别假定为A0(B0),A1(B1),A2(B2),A3(B

2、3),EN(输入)和READY,OPEN,ALARM(输出)。其中,A0,A1,A2,A3是用户欲打开密码箱时所输入的校验密码;而相应的B0,B1,B2,B3是用户预设的密码箱的密码;EN是个开箱钥匙孔信号(使能端),只有当它使能有效时,才会具有相应的输出(我们的输出均为发光二极管)。三个输出READY,OPEN,ALARM均连接发光二极管,高电平有效,当灯READY发光时表示使能有效;当灯OPEN发光时表示使能有效且输入密码正确,密码箱打开;当灯ALARM发光时表示使能有效,但是密码输入错误,密码箱不打开;当使能EN无效时,密码箱不会打开,且不会报警。在实现过程中,关键就是预设密码的设置及输

3、入的校验密码的正确性的判断。分别阐述如下:由于我们设计的密码为二进制密码,其各位的值是0或1,所以可以用逻辑开关分别连接四个预设密码端(也可理解为输入端,这样的话,就有九个输入端),用户可根据需要自行设定密码,比如,开关B1和开关B3置高电平,开关B2和开关B4置低电平,这样用户设定的密码就是“1010”。对于输入的校验密码的正确性的判断方法,我们很容易就想到异或门的功能,即当两个输入相同是输出为“1”,否则为“0”。这样,我们可以根据输出来判断各个数位上的密码数字输入是否正确。根据以上叙述,当我们在加上使能输入和稍加补充后,就能设计出相应的逻辑电路。2.电路设计图:逻辑表达式为:READY=

4、EN ALARM=EN(B3A3)+(B2A2)+(B1A1)+(B0A0) OPEN=(B3A3)+(B2A2)+(B1A1)+(B0A0)EN3.真值表(以预设密码为“1100”列写):ENA0A1A2A3READYOPENALARM0dddd00010000101100011011001010110011101101001011010110110110101101111011100010111001101110101011101110111100110111011011111010111111101有以上真值表知:当输入使能EN无效(“0”)时,不管输入密码A0,A1,A2,A3为何值,

5、输出均为“0”,表现为发光二极管不亮。只有当使能EN有效且输入为“1100”,与预置密码相同时,输出READY为“1”,OPEN为“1”,ALARM为“0”。4. Verilog HDL语言进行仿真(1)用MAXPLUS II绘制电路原理图如下:(2)由电路原理图仿真结果如下:说明如下:为了体现我们设计的系统具有用户自行设置和更改密码的功能,进行仿真时,在不同的时间段,我们给B0,B1,B2,B3输入了不同的值及其相应的A0,A1,A2,A3(有的输入组合与B0,B1,B2,B3对应相等,有的与其对应不相等)的值,再观察各种情况下的输出。由以上仿真结果知,电路如实完成了设计的要求。以开始波形为

6、例,预设密码为“0011”(B0,B1,B2,B3);EN=1,使能有效,并且用户密码输入也为“0011”,与预设值相同,所以输出READY=1,OPEN=1,ALARM=0,密码箱打开。其他情况可类似分析。(3)由Verilog语言编程仿真,代码如下:module lock(EN,B3,B2,B1,B0,A3,A2,A1,A0,READY,ALARM,OPEN);input EN,B3,B2,B1,B0,A3,A2,A1,A0;output READY,ALARM,OPEN;assign READY=EN;assign ALARM=EN&(B3A3)|(B2A2)|(B1A1)|(B0A0)

7、;assign OPEN=(ALARM)&EN;endmodule(4)由Verilog程序仿真结果如下:结束语:通过本课程的设计,我们学会了如何用逻辑门设计具有一定功能的电路,并使用Verilog HDL语言和搭建电路原理图进行仿真。在设计电路前,我们认真分析了设计的要求,思考具体的实现方法。通过认真讨论,我们有了初步的想法,并在设计过程中,不断的修正和改进,提高该电路的实用性,得出了最后的电路设计图。由于Verilog HDL语言和仿真软件的使用是我们的自学内容,所以在之后的工作中,我们分工进行,分别负责Verilog HDL语言编程和MAXPLUS II软件的学习,并相互交流学习心得,达到了事半功倍的效果,最后撰写设计文稿。在设计过程中,我们都以认真,严谨的态度对待,共同努力,终于完成了课程设计。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 建筑/施工/环境 > 项目建议


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号