欢迎来到课桌文档! | 帮助中心 课桌文档-建筑工程资料库
课桌文档
全部分类
  • 党建之窗>
  • 感悟体会>
  • 百家争鸣>
  • 教育整顿>
  • 文笔提升>
  • 热门分类>
  • 计划总结>
  • 致辞演讲>
  • 在线阅读>
  • ImageVerifierCode 换一换
    首页 课桌文档 > 资源分类 > DOCX文档下载  

    EDA课程设计—电子密码锁.docx

    • 资源ID:1503302       资源大小:119.71KB        全文页数:16页
    • 资源格式: DOCX        下载积分:5金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要5金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    EDA课程设计—电子密码锁.docx

    电子密码锁设计摘要随着人们生活水平的提高,如何实现家庭防盗这一问题渐渐变的尤为突出,传统的机械锁由于其构造简洁,故平安性能不容乐观,同时电了技术的高速发展使得具有防盗报警等功能的电子密码锁代替密码量少、平安性差的机械式密码锁已是必定趋势。电子密码锁是一种通过密码输入来限制电路或是芯片工作,从而限制机械开关的闭合,完成开锁、闭锁任务的电子产品。目前设计密码锁的方法有许多,而用VHD1.可以更加快速、敏捷地设计出符合各种要求的密码锁,优其他设计方法。关键字:家庭防盗平安电子密码锁VHD1.2电子密码锁总体设计2.1总体设计方案宏码领输入电路键打猫I启卜«卜时序产生Iii斗J扫描信丁键盘按犍舛跳加除电/T钝显需科电”密码锁控制电路侪存潜清除信号发生“心开/关门债电54J一数值比较由*J-按谯数据缓在*鼠示电路I-er至七段邯码电卜日日日三七段数码n如图2.1电子密码锁总体组成框图该电子密码锁可以分成三部分来设计,数字密码输入部分、密码锁限制电路和密码锁显示电路。作为密码锁的输入部分,可供选择的方案有数字机械式键盘和触摸式数字键盘等多种。考虑种种因素,建议本设计采纳通用数字机械键盘。依据以上选定的输入设备和显示洛件,并考虑到实现各项数字密码锁功能的详细要求,整个电子密码锁系统的总体组成框图如图2.1所示.密码锁输入电路包括时序产生电路、键盘扫描电路、键盘去抖动电路、键盘译码电路等几个小的功能电路。密码镇限制电路包括按键数据的缓冲存储电路,密码的清除、变更、存储、激活电锁电路(寄存器清除信号发生电路),密码核对(数值比较电路),解锁电路(开/关门锁电路)等几个小的功能电路。七段数码管显示电路主要将待显示数据的BCD码转换成数码器的七段显示即动编码。依据以上选定的输入设备和显示器件,并考虑到实现各项数字密码锁功。密码输入般采纳机械式和接触式两种键盘。机械式3x4键盘虽然易产生抖动、磨损等问题,但具有电路结构简洁、成本低,牢兼性高、技术成熟、应用广泛等优点,在密码锁的设计过程中常常被采纳。图2.2是一个3X4矩阵式键盘的面板配置图,其中数字0-9作为密码数字输入按健,作为“上锁”功能按键,#作为“解锁/清除”功能按键,如图2.2所示:图2.2机械式键盘密码密码电路2.2设计思路简述密码锁输入电路ENTER.VHD中对各种分频信号侑号序列的设计有独到之处。该设计中,利用一个自由计数器来产生各种须要的频率,也就是先建立一个N位计数器,N的大小依据电路的需求确定。N的值越大,电路可以除频的次数就越多,这样就可以获得更大的频率变更,以便供应多种不同频率的时钟信号.若输入时钟为C1.K.N位计数器的输出为QN-1,0,则Q(0)为C1.K的2分频脉冲信号,Q(I)为C1.K的4分频脉冲信号,Q(2)为C1.K的8分频脉冲信号Q(N-I)为C1.K的2N分频脉冲信号;Q(5DOWNTO4)取得的是一个脉冲波形序列,其值是依(X)-Ol-IO-Il-(X)-Ol周期性变更的,其变更频率为C1.K的25分频,也就是32分频,我们利用以上规律即可得到各种我们所须要频率的信号或信号序列:(2)摄盘输入去抖电路的设计程序DEBoUeINGVHD在实际系统的开发中有较好的参号价值。(3)密码锁限制电路Controi-VIID中对于数据的更新及移位方法比较好。程序中运用语句"ACCv=ACC(IlDOWNToO)&DATA_N”特别简洁地同时实现了ACC中低4位用DATA-N进行更新,而高12位用ACC中原来的低12位左移而来的处理。(4)在密码锁输入电路等模块的程序的设计和仿真中.为便于视察一些中间结果,在程序中增加了一些观测输出点。这一设计技巧,对于较大的程序或多进程程序的设计特别重要。同时在仿真时,为了便于观测全局结果,降低了分嫉常数.同理,在进行程序仿真时,对于程序中数目较大的分频/计数/计时常数的修改是特别必要的.2.3整体组装设计原理图系统的整体组装设计有密码输入模块、密码限制模块、密码显示模块部分组成,故如图2.3所东:2“*-*<351SeXE3.,3'图2.3系统整体组装设计原理图MO3单元模块程序设计本章节介绍的是雎独模块的程序、原理图、仿真以及功能说明,共有三个模块,分别是电子密码锁输入模块、电子密码锁限制模块以及显示模块。3.1电子密码锁输入模块(1)时序产生电路本时序产生电路中运用了三种不同频率的工作脉冲波形:系统时钟脉冲(它是系统内部全部时钟脉冲的源头,且其领率最高)、弹跳消退取样信号、键盘:扫描信号。键盘扫描电路扫描电路的作用是用来供应键盘扫描信号(表3-1中的KY3KY0)的,扫描信号变更的依次依次为1110-1101-1011-0111-1110依序地周而复始。(3)弹跳消退电路由于本设计中采纳的矩阵式键就是机械开关结构,因此在开关切换的瞬间会布接触点出现信号来同弹跳的现象,对于电子密码锁这种灵敏度较高的电路这种弹跳将很可能会造成误动作输入,从而影响到密码锁操作的正确性。表3/按键位置的数码关系阳WIIIOIIIOIIIOIIOIIIOIIIOIIOilIOlIIOIIOlllOlllOlllOilIOIIIOOill(HnoOilIOI>OilIOIIIOItI24567S9O3.1.l输入模块程序1.IBRARYIEEE;USEIEEE.STD_1.oGlC164.A1.1.:USElEEE.STD1.1CR1TH.A1.1.:USEIEEE.STD_1.OG1C_UNSIGNED.A1.1.;ENTITYENTERISPORT(C1.K_lK:INSTD_1.OGlC;KEYN:INSTDJ.0GIC_VECT0R(2DOWNTO0);DATA-N:OUTSTD_1.OGIe1.VECTOR(3DOWNTOO);DATA_F:OUTSTD_1.OGQVECTOR(3DOWNTOO);F1.AG_N:OUTSTD_1.OG1C:F1.AG_F:OUTSTDjoGIC;CQD:OUTSTD_1.OGlCKSE1.:OUTSTD-1.oGIC-VEeTOR(3DOWNTOO);CSR:OUTSTD_1.OGIC_VECTOR(1DOWNTO0);ENDENTITYENTER;ARCHlTEEJREARTOFENTERISSIGNA1.C-QD:STD.1.IC;SIGNA1.C_SR:STD_1.OGIC_VECTOR(1DOWNTOO);SIGNA1.NFSD,1.OG1C,VECOR(3DOWNTOO);SIGNA1.FN,FF:STDJOGIC;SIGNA1.SE1.:STD_1.OGIC_VECTOR(3DOWNTOO);SIGNA1.Q:STD_1.OG1C_VECTOR(5DOWNTOO);SIGNA1.C:STDJ.0GIC_VECT0R(2DOWNTOO);BEGINDATA_N<=N;DAA-F<=F;H.AG_N<=FN;F1.AG_F<=FF;CQD<=C.QD;CSR<=C_SR;KSE1.<=SE1.;C(O)<=KEYN(O);C(l)<=KEYN(I):C(2)<=KEYJN(2);CoUNTER:B1.oCKISBEGINPROCESS(C1.K-1K)ISBEGINIF(C1.K_1K'EVENTANDC1.K_IK=')THENQ<=Q+l;ENDIF;C_QD<=Q(3);C_SR<=Q(5DOWNTO4):ENDPROCESS;SE1.<=,I11(WHENC_SR=OE1.SE"HOI-WHENC-SR=1E1.SE"1011"WHENC_SR=2E1.SE"0111"WHENC_SR=3E1.SE"iiir;ENDB1.OCKCOUNTER;KEY.DECODER:B1.OCKSiGNA1.Z:STD_1.oGK1.VECTOR(4DOWNTOO);BEGINPROCESS(C.QD)BEGINZ<=C_SR&C:IF(C_QDEVENTNDC_QD=')THENCASEZISWHEN"IIIOI"=>N<="00":WHEN"(XK)1I"=>N<="0(X)1"WHEN"(X)10l"=>N<="(X)IO":WHEN"OOIIO"=>N<="0011"WHEN"OIO1I"=>N<="0100"WHEN"()I1OI"=>N<="0101"WHEN"()11IO"=>N<="0110"WHEN"OO"=>N<="OIII"WHEN"IOIOl"=>N<="IO"WHEN"1OIIO"=>N<=-1(X)1"WHENOTHERS=>N<="IIII"ENDCASE;ENDIF;IFC-QD'EVENNDC_QD=,THENCASEZISWHEN"IIOII"=>F<="0100"WHEN"1IIIO"=>F<="0001"WHENOTHERS=>FV="1()(X)"ENDCASE;ENDIF;ENDPROCESS:FN<=NOT(N(3)ANDN(2)ANDN(I)ANDN(O);FF<=F(2)ORF(0):ENDB1.OCKKEY_DECODER;ENDARCHITECTUREART;3.1.2输入模块单元有上面的程序通过quuriusI1.我们可以得到下面这个封装元件。ENTtERC1.K-1K"KEYJN2.0DATA_N3.0DATA-F3.0F1.AG_NF1.AG_FCQDKSE1.3.0CSR1.0nst图3.l电子密码锁键盘输入图3.2密码锁输入模块仿真图3.1.3输入模块仿真三三三3.2 电子密码锁系统限制模块密码锁的限制电路是整个电路的限制中心,主要完成对数字按键输入和功能按键输入的响应限制。数字按键输入的响应限制:(1)假如按下数字键,第一个数字会从显示器的最右端起先显示,此后每新按一个数字时,显示器上的数学必需左移一格,以便将新的数学显示出来。(2)假如要更改输入的数字,可以按倒退按键来清除前个输入的数字,或者按清除键消除全部输入的数字,再重新输入四位数。(3)由于这里设计的是一个四位的电子密码锁,所以当输入的数字键超过四个时,电路不予理睬,而且不再显示第四个以后的数字。3.2.1 限制模块程序1.IBRARYIEEE;USEIEEE.STD_1.OG1C_1164.A1.1.;USEIEEE.STD.1.IC,ARITH.A1.1.:USE1EEE.STD_1.OG1C_UNS1GNED.A1.1.;ENTITYCONTRO1.ISPORT(DATA_N:INSTD_1.OGlQVEcTOR(3DOWNTO0);DATA.F:INSTD_1.OGRVECTOR(3DOWNTO0);F1.G-N:INSTD_1.OG1C:F1.AG_F:INSTDJ.OGIC;MIMAIN:BUFFERSTD_1.OGlCSETIN:BUFFERSTD_1.oGIcO1.D:BUFFERS'D-1.OG1C;CQD:INSTDJXXjIC;EN1.OCK:OUTSTD_1.OGIC;DATA-BCD:OUTSTD_1.OGIC_VECTOR(15DOWNTO0);ENDENTYCONTRO1.:ARCHITECTUREARTOFCONTRO1.ISSIGNA1.ACC,REG:STD_1.OGIC_VECTOR(15DOWNTO0);BEGINPRoCESS(CQD.卜1.AG_F)ISBEGINIFCQD,EVENTANDCQD='OTHEN1FF1.AG_F=THENIF(DAlAJF="0l(M)")THENMIMAIN<='0'SETIN<=,0'O1.D<=,0':E1.S1F(DA,F="(XX)1")THENIF(MIMAIN=1OANDSETIN='O')THENCASEACC(7DOWNTOO)ISWHEN"OO()1(X)O,=>EN1.OCK<='WHEN"10()11(X)'=>M1M1N<=':WHEN"0IOIOIO,=>SET1N<='O1.D<=;WHENOTHERS=>NU1.1.;ENDCASE;E1.SIF(MIMAIN=')THENIFACC=REGTHENEN1.oCKV=O;M1MAIN<='O'E1.SEMIMAIN<=,0'ENDIF;E1.SIF(SETIN=')THENIF(O1.D=I)THEnIF(ACC=REG)THENO1.DV=U;E1.SESETIN<='O'O1.DV=U;ENDIF;E1.SEREG<=ACC:SETIN<='()'ENDIF;ENDIF;ENDIRENDIF;E1.SIFF1.AG_N='lTHENACC<=ACC(1IDOWNTO0)&DATA_N:ENDIF;ENDIF;ENDPROCESS:DATA.BCD<=ACC;ENDARCHITECTUREART;3.2.2 限制模块单元有上面的程序通过quariusll,我们可以得到卜面这个封装元件。e6Ntft1.DATAN(3.0)MIMAINDATA,F(3.0SETINF1.AGjMO1.DF1.AGEN1.OCKCQDDATAeBCD(15.0mt图3.3电子密码锁限制元件323限制模块仿真图图4.4密码锁限制模块仿我图cB>Bx三MHMX1.lrDWCITUiJ2JCUIYCU311X3.3 电子密码锁系统显示模块密码显示电路主要将显示数据的BCD码转换成相对应的编码.如,若选用七段数码管显示电路,主要招待显示数据的BCD码转换成数码器的七段显示驱动编码。密码锁显示电路的设计比较简洁,这里干脆采纳四个4-7译码器来实现。3.3.1 显示模块程序1.IBRARYIEEE:USEIEEE.STDjoGlCj64.A1.1.;USEIEEE.STD_1.OGIC_UNSIGNED.A1.1.;ENTITYDISP1.AYISPORT(DATA_BCD:INSD-1.OG1C-VECOR(3DOWNTO0);DOUT7:OUTSTDJ.OGIC_VECTOR(6DOWNTO0);ENDDISP1.AY;ARCHITECTUREARTOFDISP1.AYISBEGINPROCESS(DATA_BCD)BEGINCASEDATA.BCDISWHEN"(XXX)"=>DOUT7<="0111111"WHEN"0001"=>DOUT7<="0(X)0110";WHEN-OOIO"=>DOUT7<="IOIIOII"WHEN-001,=>IX>UT7<='I111"WHEN-OKX=>DOUT7<="11(X)110"WHEN"()l()r=>DT7<="lIOI101";WHEN-OIIO"=>DOUT7<="IIIIIOI"WHEN"0111"=>DOUT7<="00(X)11'WHEN"1(XX)"=>DOUT7<="IIllIH"WHEN"I(X)I"=>DOUT7<="IIOI111"WHENOTHERS=>D0UT7<="OoOooOO"ENDCASE:ENDPROCESS;ENDARCinTECTUREART;3.3.2 显示模块单元DISP1.AYDATA_BCD3.OUT7.0i11st2图3.5电了密码锁显示模块元件333显示模块仿真图3.6密码锁显示模块仿真图4小结经过这次EDA课程设计的一个星期,不仅温习和巩固了课堂上所学过的基础学问,而且学到了许多书本上都没有提及的内容,进一步加深了对EDA技术的了解。在课设过程中,调试顶层文件程序时遇到了不少问题,比如,各元件之间的连接和信号的定义,但是最终在细心的检查下,还是胜利解除了错误和警告:在波形仿其时,想要的结果不能在波形上得到正确的显示,在经过十几次的调试后,才发觉是因为输入的时钟信号对于器件的延迟时间来说太短了。时钟周期设匿在15秒左右比较合适,Endtime的值须要设理的长一点IOUS左右,这样就可以视察到完整的仿真结果。其次,在连接各个模块的时候肯定要留意各个输入、输出引脚的线宽,因为每个线宽是不一样的,只有让各个线宽相互匹配,才能得出最终的正豳的结果。否则,出现任何点小的误差就会导致整个文件系统的编评出现错误提示,在器件的选择上也有肯定的技巧,只有选择/适合当前电路所的器件,编译才能胜利。通过这次EDA课程设计使我懂得了理论与实际相结合是很重要的,只有把所学的理论学问与实践相结合起来,才能提高自己的实际动手实力和独立思索的实力。参考文献Hl谭会生,张昌凡.EDA技术及应用(其次版)西安:西安电子科技商校出版社,200112J徐光军,徐光辉CP1.D/FPGA的开发与应用.北京:电子工业出版社,2(X)23J李国丽,朱维勇.EDA与数字系统设计.北京:机械工业出版社,2004编(1997).北京:北京理工高校出版社,1999|4|潘松,黄继业EDA技术好用教程.北京:科学出版社,2(X)2I51.

    注意事项

    本文(EDA课程设计—电子密码锁.docx)为本站会员(夺命阿水)主动上传,课桌文档仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知课桌文档(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-1

    经营许可证:宁B2-20210002

    宁公网安备 64010402000986号

    课桌文档
    收起
    展开