电子密码锁EDA课程设计报告书.doc_第1页
电子密码锁EDA课程设计报告书.doc_第2页
电子密码锁EDA课程设计报告书.doc_第3页
电子密码锁EDA课程设计报告书.doc_第4页
电子密码锁EDA课程设计报告书.doc_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

燕 山 大 学eda课程设计报告书题目: 电子密码锁 1、 设计题目及要求题目:电子密码锁要求:1. 用 10 个按键代表09,输入后应转换为8421bcd 码,如按“6”后转换为“0110”;2. 密码位数为 6 位,具有密码设置和修改功能;3. 开锁和报警均有 led 灯指示,且报警有声音提示,报警音频率为750hz,每鸣叫1 秒停1 秒,共鸣叫5 响;4. 用 6 个数码管显示输入的密码。2、 设计过程及内容1. 设计方案本次eda设计项目主要由输入模块、数据分路模块、输入及密码寄存模块、比较模块、密码重置模块、显示模块及结果输出报警模块组成。图一、电路总图keyinput1为输入模块,其中包含防抖电路,利用74147编码器将单位输入转化成对应的十进制bcd码,并输出按键的脉冲以及计数器所记录按键次数的bcd码,计数器采用74160利用清零端转换成7进制以便记录六位密码。cinput1为数据分路模块,输入端为按键表示的4为bcd码和3位二进制地址码,利用74138(3线8线译码器)进行译码,利用四个译码器并联实现利用地址码对输入数据进行并行输出的功能。compare为寄存和密码比较模块,输入端为3位地址码、keycp脉冲、chpw脉冲、六位十进制bcd码并行输入,其中包含的2个cinput模块用以利用输入的地址码将keycpt和chpw脉冲分别送入6个bj模块,6个bj模块中包含两个寄存器,一个用来寄存系统内密码,一个用来寄存输入的密码,并利用7485进行逐位比较输出结果。flash模块为晶体管的扫描模块,输入为6组十进制bcd码,扫描输入cp,利用74151实现利用地址码对6组bcd码的选择输出,最后实现输出端为三位地址码和4位十进制bcd码。地址码和输出对应循环变化实现数码管的动态显示。show1为显示模块,地址码和bcd码为输入,利用7448以直接驱动数码管。结果输出报警模块包括蜂鸣器和led指示灯。 2、 模块功能介绍(1) 、keyinput1图二、keyinput模块图输入按键首先经过一个fd0模块进行消抖处理,经过消抖电路后经过74147进行译码,把按键输入的脉冲转换成对应的bcd码输出,并经过延时。按键时产生的脉冲作为74160计数器的计数脉冲实现0-7的计数,并输出计数结果的3位bcd码,以及计数器为7时的一个计数脉冲信号unm7。消抖电路主要是输入一个366hz的脉冲作为d触发器的时钟信号,以按键脉冲作为输入,从而滤去频率大于366hz的毛刺,电路图如下:图三 fd0模块图利用时钟上升沿输出数据的特性可以消除那些频率较高的毛刺,实现消抖的目的。(2) 、cinput1图四 cinput1模块电路图cina、cinb 、cinc、 cind为输入的四位bcd码,cins0、cins1、cins2为三位地址码。cinput模块电路如下:图五 cinput模块电路图74138译码器会根据地址码选择相应输出端输出,这样就能根据地址码的不同得到六组4位的bcd码,并将数据送入compare模块中。(3) compare模块电路图如下所示:图六 compare模块电路图电路图中两个cinput模块用以根据地址码输入将keycp和chpw两个信号分别从六个不同位置输出,cinput模块前面已经给出。六个bj模块输入为六组4位bcd码。bj模块电路图如下:图七 bj模块电路图图中en1为chpw脉冲输入,当ma、mb、mc、md输入数据时,同时输入chpw脉冲可以改变存在密码锁中的密码,同时不改密码时en1默认为低电平,数据可以传到那上边的dcs锁存模块中,同时按键脉冲keycp输入en2中提供上升沿,数据被所存住,一路作为输出,一路进入7485与下边的dcs锁存器进行比较,输出比较结果。在更改密码时需要按下chpw键,此时en1位低电平,数据不会被存入上边的锁存器,避免在修改完密码后不需输入密码就显示为密码输入正确结果。图八 dcs锁存器电路图六路比较模块结果利用与门输出1路,为最终的比较结果。(4) 、flash模块flash模块是为了实现六位数码管动态显示,具体电路图如下:图九flash电路图74160实现对地址码0-5的循环显示,连接为6进制。输入一个375khz的脉冲为时钟,使地址码快速在0-5之间循环,地址码输入74151这个8选1数据选择器中,实现对六组4位bcd码的循环显示,由于人的视觉停留的缘故,可以看到六位同时显示。(5) show1模块图十flash模块电路主要作用是利用7448将输入的4位十进制bcd码转化成7段数码管显示模式以直接驱动数码管。(6) 结果输出报警模块电路如图所示:图十一报警模块compare模块输出结果进入d锁存器,脉冲由keyinput模块中计数器到7输出脉冲驱动,该脉冲作为时钟信号加入前经过一个防抖的d锁存器,目的是消除计数过程中产生的毛刺。比较结果经过d锁存器是为了让比较结果可以保存六次按键的周期,从而保证在修改密码时,比较结果的正确性以实现修改密码的脉冲能够成功输入。输出结果驱动led,并作为信号输入fengming模块中。fp电路如下所示:图十二分频电路输入366脉冲,为了实现响一秒停一秒,需要得到0.5hz的信号,同时占空比为1:1,所以加入锁存器,由于d锁存器本身有二分频特性,前边电路设置为366进制。fengming模块如下图所示:图十三fengming模块电路比较结果信号bjjg、1hz信号、计数器记六输出num6进入与门以实现只有比较结果错误且计数数量有六个时才能输入1hz的信号,计数器记6清0可以实现对1hz脉冲的计数,当计数满6时,输出低电平与输入进入与门,使得信号不能继续输入,达到只响5次的目的,用750hz的脉冲供电,使蜂鸣器震动频率为750hz,rest键方便计数器清零,输出新的密码验证结果。(7) 、电路仿真结果图十四 仿真图形三、设计结论(包括设计过程中出现的问题;对eda课程设计感想、意见和建议)在设计过程中出现了很多问题,在老师的帮助下和组内同学的齐心协力下都得到了很好的解决,简单总结如下:1、 时序问题,由于多处电路用到锁存器,计数器等边沿触发装置,所以有些时候锁存内容会与预想不同,比如比较密码模块中输入密码的锁存器就因为按键脉冲过去太快而造成同时锁存住第二次键入得内容,利用lcrll延时器对keycp进行延时可以有效解决问题。2、 分频问题,为了得到占空比为1:1的脉冲需要加入d锁存器,但是又要同时注意d锁存器本身的二分频作用。3、 密码修改问题,以前为了让锁存器存住比较结果的时间内可以修改6位密码,所以把计数器达到6时的脉冲作为d锁存器的时钟,实际中发现修改第六位密码时刚刚按下第六位密码,锁存器就会锁存新的结果,造成修改密码过程只能成功修改5位。4、 eda设计过程中总会出现意想不到的错误,就像老师说的,最好的解决办法绝对不是说理论上应该输出什么,而是引出输出端,看看到底输出什么数据,与理论值是否一致,不一致的话,可能出现的错误是什么,有针对的解决。5、 在进行仿真时千

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论