8位数字密码锁课程设计报告.docx

上传人:b****7 文档编号:11423322 上传时间:2023-03-01 格式:DOCX 页数:19 大小:421.52KB
下载 相关 举报
8位数字密码锁课程设计报告.docx_第1页
第1页 / 共19页
8位数字密码锁课程设计报告.docx_第2页
第2页 / 共19页
8位数字密码锁课程设计报告.docx_第3页
第3页 / 共19页
8位数字密码锁课程设计报告.docx_第4页
第4页 / 共19页
8位数字密码锁课程设计报告.docx_第5页
第5页 / 共19页
点击查看更多>>
下载资源
资源描述

8位数字密码锁课程设计报告.docx

《8位数字密码锁课程设计报告.docx》由会员分享,可在线阅读,更多相关《8位数字密码锁课程设计报告.docx(19页珍藏版)》请在冰豆网上搜索。

8位数字密码锁课程设计报告.docx

8位数字密码锁课程设计报告

基于VDHL的8位数字密码锁设计

摘要

本文主要介绍运用VDHL技术设计数字密码锁的方法。

本设计采用自上而下的数字系统设计方法,将数字密码锁系统分解为若干子系统,并且进一步细划为若干模块,然后用硬件描述语言VDHL来设计这些模块,并且分别进行软件的仿真。

仿真结果表明:

该数字密码锁能够效验8位十进制数密码,且有预置密码(即万能密码),显示输入密码,设置密码,修改密码,输入错误回删,关锁等功能。

该密码锁体积小,功耗低,操作简单,不怕掉电,维护和升级都十分方便,具有非常好的应用前景

关键词:

QUARTUSⅡ;VDHL;数字密码锁

 

8-bitdigital-basedVDHLlockdesignAbstractThispaperdescribestheuseofdigitallocksVHDLtechnicaldesignapproach.Thisdesignusestop-downdesignofdigitalsystem,thedigitalcodelocksystemisdividedintoseveralsubsystems,andfurtherdetailedplanningforanumberofmodules,thenthehardwaredescriptionlanguageVDHLtodesignthesemodulesandthesimulationsoftware,respectively.Simulationresultsshowthat:

thedigitalcodelocktoefficacy8-bitdecimalcode,andhavepresetpassword(thatis,universalpassword),showpassword,setpassword,changepassword,entertheerrorbacktothedelete,lockandotherfunctions.Thelocksmallsize,lowpowerconsumption,simpleoperation,notafraidofpower-down,maintenanceandupgradesareveryconvenient,hasaverygoodprospectofapplication.shui./

Keywords:

QUARTUSⅡ;VHDL;digitalcodelock

 

引言····························································6

1.EDAVHDL简介··················································7

2.课程设计目的与容·············································8

2.1课程设计目的··············································8

2.2课程设计容·············································8

2.3课程设计提示··············································8

3.电子密码锁设计过程·············································9

3.1设计规划·················································9

4.VHDL源程序···················································10

4.1密码锁&30秒计时模块····································11

4.2仿真后原理图············································12

4.3动态扫描模块············································13

4.4仿真后原理图············································14

5.系统仿真······················································15

5.1连线完成后原理图·········································15

5.2波形仿真·················································15

5.3仿真结果·················································16

6.心得体会·······················································19

7.参考文献·······················································20

 

CONTENTS

Introduction••••••••••••••••••••••••••••6

1.EDAVHDLIntroduction•••••••••••••••••••••••7

2.Thepurposeandcontentofcurriculumdesign•••••••••••8

    2.1Coursesdesignedto••••••••••••••••••8

2.2Curriculumcontent•••••••••••••••••••••••8

2.3CourseDesignTips•••••••••••••••••••••••8

3.Electroniccodelockdesignprocess•••••••••••••••9

    3.1Thedesignandplanning••••••••••••••••9

4.VHDLsource••••••••••••••••••••••••••••10

4.1&30secondslocktimingmodule•••••••••••••••11

4.2Afterthesimulationschematic•••••••••••••••••12

4.3DynamicScanningModule•••••••••••••••••••••13

After4.4Simulationdiagram••••••••••••••••••••14

5.SystemSimulation•••••••••••••••••••••••15

5.1Aftertheconnectiondiagram•••••••••••••••••••15

5.2WaveformSimulation•••••••••••••••••••••••15

5.3Simulationresults••••••••••••••••••••••••166.Feelingsandexperiences•••••••••••••••••••••19

7.References••••••••••••••••••••••••••••20

朗读

显示对应的拉丁字符的拼音

 

字典-查看字典详细内容

 

引言

随着人们生活水平的提高,如何实现家庭防盜这一问题也变的尤其的突出,传统的机械锁由于其构造的简单,被撬的事件屡见不鲜,电子锁由于其性髙,使用灵活性好,安全系数高,受到了广大用户的亲昵,电子密码锁的使用体现了人们消费水平、保安意识和科技水平的提髙,而且避免了携带甚至丢失钥匙的麻烦。

目前设计密码锁的方法很多,例如用传统的PCB板设计、用PLC设计或者用单片机设计等等。

而用VHDL可以更加快速、灵活地设计出符合各种要求的密码锁,优于其他设计方法。

VHDL是一种符合IEEE标准的硬件描述语言,其最大的特点是借鉴高级程序设计语言的功能特性,对电路的行为与结构进行高度抽象化、规化的形式描述,并对设计的不同层次、不同领域的模拟验证与综合优化等处理,使设计过程延伸到高度自动化。

 

1.EDA,VHDL简介

1.1EDA简介

EDA是电子设计自动化(ElectronicDesignAutomation)缩写,是90年代初从CAD(计算机辅助设计)、CAM(计箅机辅助制造)、CAT(计箅机辅助测试)和CAE(计算机辅助工程)的概念发展而来的。

EDA技术是以计算机为工具,根据硬件描述语述言HDL.shui./(HardwareDescriptionlanguage)完成的设计文件,自动地完成逻辑编译、化简、分割、综合与优化、布局布线、仿真以与对于特定目标芯片的适配编译和编程下载等工作。

典型的EDA工具中必须包含两个特殊的软件包,即综合器和适配器。

综合器的功能就是将设计者在EDA平台上完成的针对某个系统项目的HDL、原理图或状态图形描述,针对给定的硬件系统組件,进行编译、优化、转换和综合,最终获得我们欲实现功能的描述文件。

适配器的功能将由综合器产生的网表文件配置与指定的目标器件中,产生最终的下载文件,如JED文件。

1.2VHDL简介

VHDL主要用于描述数字系统的结构,行为,功能和接口。

除了含有许多具有硬件特征的语句外,VHDL的语言形式和描述风格与句法是十分类似于一般的计算机高级语言。

VHDL的程序结构特点是将一项工程设计,或称设计实体(可以是一个元件,一个电路模块或一个系统)分成外部(或称可是部分,与端口)和部(或称不可视部分),既涉与实体的部功能和算法完成部分。

在对一个设计实体定义了外部界面后,一旦其部开发完成后,其他的设计就可以直接调用这个实体。

这种将设计实体分成外部分的概念是VHDL系统设计的基本点。

而且,应用VHDL进行工程设计有很多优点。

 

2.课程设计的目的与容

1.1课程设计的目的

随着人们生活水平的提高,如何实现家庭防盜这一问题也变的尤其的突出,传统的机械锁由于其构造的简单,被撬的^件屡见不鲜,电子锁由于其性髙,使用灵活性好,安全系数高,受到了广人用户的亲,电子密码锁的使用也体现了人们消费水平、保安意识和科技水平的提高,而且避免了携带甚至丢失钥匙的麻

1.2课程设计的容

设计一个数字密码锁,在锁开的状态下输入密码,设置密码共8位,用数据开关k1-k10分别代表数字1,2,..,,9,0,输入的密码用七段数码管显示。

具体要求如下。

数字密码锁的密码为8位十进制数字,密码可以设置和修改;开锁时间定为30秒;可用七段显示器显示开锁倒计时时间值;开锁计时时间30秒到,锁没开则用蜂鸣器报警,开锁时允许修改输入错误的密码数字。

万能密码设置:

供主人忘记密码时使用。

并用1位LED状态表示锁的开闭状态。

1.3课程设计提示

此系统可以分为密码输入删除控制模块,寄存模块,比较模块,扫描显示模块,定时模块几部分

密码输入与删除控制模块设计考虑;

<1>编码器:

对数据开关K1—K10的电平信号,分别代表1-9,0;采用一热码方式编码。

<2>设置与删除密码操作与显示按设计要求处理。

<3>信号设置

Set:

密码确认信号-----当8位密码输入完成后,按Set键则密码送锁存器锁存,比较模块得数据A,密码显示电路清零。

Back:

数字删除按键-----每按一次删除最后输入的数字,密码显示右移一位,同时左边空位补“0”。

Lock:

密码锁状态显示信号-----Lock=0(LED灯灭)表示锁未开,Lock=1(LED灯亮)锁已开。

Close:

关锁信号-----当密码送寄存器锁存后,按下Close,则密码锁Lock=0,锁被锁上。

Check:

密码效验信号-----在Lock=0状态下,从数据开关输入8位开锁密码后按下Check,则开锁数码送寄存模块锁存为B。

如果A=B,则D触发器置“1”,锁被锁上。

 

3电子密码锁的设计过程

3.1设计规划

密码锁流程图如图3-1所示:

总体框架图(图3-2)

图3-2

 

4.VHDL源程序

4.1密码锁&30秒计时模块

modulemimasuo(n0,n1,n2,n3,n4,n5,n6,n7,n8,n9,reset,back,check,set,close,lock,num1,num2,num3,num4,num5,num6,num7,num8,qh,ql,cout,clk,cin);

inputn0,n1,n2,n3,n4,n5,n6,n7,n8,n9,back,check,set,close,cin;

inputclk;

inputreset;

outputlock;

output[3:

0]num1,num2,num3,num4,num5,num6,num7,num8;

reg[3:

0]num1,num2,num3,num4,num5,num6,num7,num8;

reg[31:

0]code;

reg[4:

1]temp;

reglock;

outputcout;

output[3:

0]qh,ql;

reg[3:

0]qh,ql;

always(posedgeclk)

begin

if({n0,n1,n2,n3,n4,n5,n6,n7,n8,n9}!

=10'b0000000000)//密码输入控制模块

begin

case({n9,n8,n7,n6,n5,n4,n3,n2,n1,n0})

10'b0000000001:

temp=4'd0;

10'b0000000010:

temp=4'd1;

10'b0000000100:

temp=4'd2;

10'b0000001000:

temp=4'd3;

10'b0000010000:

temp=4'd4;

10'b0000100000:

temp=4'd5;

10'b0001000000:

temp=4'd6;

10'b0010000000:

temp=4'd7;

10'b0100000000:

temp=4'd8;

10'b1000000000:

temp=4'd9;

endcase

num8<=num7;

num7<=num6;

num6<=num5;

num5<=num4;

num4<=num3;

num3<=num2;

num2<=num1;

num1<=temp;

end

elseif(back)

begin

num1<=num2;

num2<=num3;

num3<=num4;

num4<=num5;

num5<=num6;

num6<=num7;

num7<=num8;

num8<=1'd0;

end

end

always(posedgeclk)//定时与报警模块

begin

if(lock||check||qh==2&&ql==9)

beginqh<=0;ql<=0;end

elseif(cin)

begin

if(ql==9)

beginql<=0;

if(qh==2)qh<=0;

elseqh<=qh+1;

end

elseql<=ql+1;

end

end

assigncout=(qh==2&&ql==9&&cin&&lock==0)?

1:

0;

always(posedgeclk)//开锁控制模块

begin

if(lock==0&&check)

begin

if(code=={num8,num7,num6,num5,num4,num3,num2,num1})lock<=1;

elseif({num8,num7,num6,num5,num4,num3,num2,num1}==32'b0111)

lock<=1;

end

elseif(lock==1&&close)lock<=0;

elseif(lock==0&&cout==1)lock<=0;

end

always(posedgeclk)

begin

if(!

reset)code<=32'h00000007;

elseif(lock==1&&set)

code<={num8,num7,num6,num5,num4,num3,num2,num1};

end

endmodule

 

4.2仿真后原理图:

图4-2shui./

4.2动态扫描模块

moduleselb(in1,in2,in3,in4,in5,in6,in7,in8,clk,flag,a,b,c,d,e,f,g);

inputclk;

input[3:

0]in1,in2,in3,in4,in5,in6,in7,in8;

outputa,b,c,d,e,f,g;

output[2:

0]flag;

rega,b,c,d,e,f,g;

reg[3:

0]temp;

reg[2:

0]flag;

always(posedgeclk)

begin

flag=flag+1;

case(flag)

0:

begintemp=in1;end

1:

begintemp=in2;end

2:

begintemp=in3;end

3:

begintemp=in4;end

4:

begintemp=in5;end

5:

begintemp=in6;end

6:

begintemp=in7;end

7:

begintemp=in8;end

default:

begintemp=in1;end

endcase

case(temp)

4'd0:

{a,b,c,d,e,f,g}=7'b1111110;

4'd1:

{a,b,c,d,e,f,g}=7'b0110000;

4'd2:

{a,b,c,d,e,f,g}=7'b1101101;

4'd3:

{a,b,c,d,e,f,g}=7'b1111001;

4'd4:

{a,b,c,d,e,f,g}=7'b0110011;

4'd5:

{a,b,c,d,e,f,g}=7'b1011011;

4'd6:

{a,b,c,d,e,f,g}=7'b1011111;

4'd7:

{a,b,c,d,e,f,g}=7'b1110000;

4'd8:

{a,b,c,d,e,f,g}=7'b1111111;

4'd9:

{a,b,c,d,e,f,g}=7'b1111011;

default:

{a,b,c,d,e,f,g}=7'bzzzzzzz;

endcase

end

endmodule

 

4.3仿真后原理图

图4-3

 

5.系统仿真

5.1连线完成后原理图:

将前面两个程序模块并加入输入输出管脚,连线完成。

得到以下原理图,然后进行仿真。

如图5-1:

图5-1

5.2波形仿真

将仿真成功后原理图进行波形仿真,并设置相应参数,表现其各种功能,仿真成功后总波形图如图5-2:

图5-2

 

5.3仿真结果

<1>万能密码功能:

如图5-3-1

图5-3-1

 

<2>设置密码功能:

如图5-3-2

图5-3-2

说明:

设置的8位十进制密码为10000009,关锁后用新密码10000009打开了锁

<3>修改密码功能:

如图5-3-3

图5-3-3

说明:

原密码为10000009修改新密码为00000008,之后check开了锁,说明修改密码功能正确

 

<4>输入错误回删功能:

如图5-3-4

图5-3-4

说明:

输入0000000即7位后输入错误数1之后使用back回删功能再输入8之后check,锁开了..说明错误回删功能正确

<5>30秒计时警报功能:

如图5-3-5

图5-3-5

说明:

当输入状态下30秒未输入正确密码则输出高电平..

 

6.心得体会

在设计过程当中,我遇到了很多问题,比如,刚开始,我的设计不能输入数字,。

通过EDA实验书中提供的信息,我仔细观察电路的波形图,终于找到问题所在。

通过反复的仿真、思考最后终于找到了解决方案。

该设计经过多次修改和整现,我觉得这是一个比较不错的设计,可以满足人们的基本要求,我的水平有限

,此电路一定也存在一定的问题(如数码管显示不正常),但总体上基本达到了设计要求。

通过这二天的学习,我感觉有很大的收获:

首先,通过学习使自己对课本上的知识可以应用于实际,使的理论与实际相结合,加深自己对课本知识的吏好圳解,同时也训练了我个人的动手能力:

能够充分利用图书馆去杏阅资料,增加了许多课本以外的知识。

对QUARTUSⅡ等与相关仿真软件操作,能达到学以致用。

对我们学生来说,理论与实际同样重要,这是我们以后在工作中说明自己能力的一个重要标准。

当然,平吋老师的指导也是一个必不可少的环节,在此,感黄乡生老师的

栽培和教导,黄老师虽然年纪稍大了,但是对教学工作的认真负责使我印象非常深刻,在此非常感黄老师的悉心教导,也祝愿黄老师身体健康,工作顺心。

 

.shui./

 

7.参考文献

[1]王金明,数字系统设计与VerilogHDL(第三版).:

电子工业,20091

[2]卢毅,赖杰,VHDL与数字电路设计.:

科学,20023

[3]边计年,薛宏熙,用VHDL设计电子线路.:

清华大学出版

社,20008

 

东华理工大学课程设计评分表

学生:

赖江涛班级:

080631学号:

08063102

课程设计题目:

8位数字密码锁设计

项目容

满分

实评

能结合所学课程知识、有一定的能力训练。

符合选题要求

(5人一题)

10

工作量适中,难易度合理

10

能熟练应用所学知识,有一定查阅文献与运用文献资料能力

10

理论依据充分,数据准确,公式推导正确

10

能应用计算机软件进行编程、资料搜集录入

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

当前位置:首页 > 求职职场 > 简历

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1