键盘电子密码锁EDA课设
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
燕山大学EDA课程设计报告书
题目:键盘电子密码锁
:盖玉帅
班级:14通信一班
学号:140104030017
成绩:
一、设计题目及要求
(1)用10个按键代表0-9,密码为4位固定数;(2)用1个按键作为门铃;
(3)用1个开关作为关门信号;
(4)开锁和报警LED指示,且报警用声音提示。
二、设计过程及容
1.总体设计
(1)程序框图
错误
(2)设计方案
首先用数据选择器预设四位密码,然后用按键输入4位密码,用优先编码器将输入的按键转化为对应的二进制数字,再将输入密码的每一位和预设密码的每一位通过由4位比较器组成的密码验证电路比较,将每一位比较的结果送到4位移位寄存器存储,
当4位比较结束后通过门电路输出比较结果,用两个LED灯和一个蜂鸣器表示比较的结果。
总原理图如下:
仿真结果如下图所示:
当输入四位正确密码时,green引脚变为高电平,red和ringer为低电平。
当输入四位错误密码时,red和ringer引脚变为高电平,green为低电平。
2.模块分析
共分5个模块
(1)按键防抖模块
每个按键后加一个D触发器(DFF)用于防止按键抖动带来错误。
(2)按键输入模块
用优先编码器74147将十个按键编码为四位二进制形式(默认输出为0可解决只有9路输入的问题)。同时每按一次按键产生一个脉冲buffer,用于控制计数电路模块。
电路原理图如下:
仿真波形图如图所示:
(3)计数电路模块
用16进制计数器74161设计一个4进制计数器,使用预置数计数方式,预置数为001,控制预设密码的S0,S1端口,密码输入按键每按下去一次计数器加1,按4次后加到101时跳到001完成一次循环。每输入一位密码后,将预设密码的一位输入到选择器与输入的密码进行比较。当计数器完成一次
循环后,寄存器将4位存储结果输出。
原理图如下:
仿真波形图如下:
(4)密码预设模块
用两个双四选一数据选择器74153组成,通过s0和s1的电平组合决定输出的数字,本电路预设的密码为1417。
电路原理图如下:
仿真波形图如下:
(5)密码比较模块
用四个D触发器(DFF)串联成一个四位的移位寄存器。(参考教材P197)原理图如下:
仿真波形图如下:
3.硬件测试
硬件仿真成功后,下载到试验箱测试。每输入一位正确密码,test连接的发光二极管就亮一次,当输入4位正确密码1417时,显示密码正确的发光二极管点亮,输入错误后,显示密码错误的发光二极管点亮且蜂鸣器发出错误的警报信号。
上述实验现象说明实验成功。
三、设计结论
在做课程设计时,各个模块很快画完原理图并调试正常,只是在联合到一起时的仿真结果不正确,仔细检查后发现总原理图有两根线接反了。改正后,又出现新的问题,在第一个计数周期,接收到三个按键脉冲就会产生结果,而后面的周期又都正常。将计数电路的计数方式改为预置数计数解决了此问题。
通过这次EDA课程设计,我对数字电子技术基础有了更深刻的认识,并且掌握了很多原来就学的不太明白的知识,以及之前自以为很明白的东西。同时,这次课程设计也让我深刻感受到,做事不能急于求成,要沉下心来,按照既定程序一步一步的来,过于求快往往会事倍功半。当我们持续做一件事情遇到瓶颈时,不妨换件事情做,或者放松娱乐一下,然后再回来继续研究,往往可以获得意想不到的灵感。
EDA课程的开设可以增强我们的动手能力,加深我们对课本理论知识得理解。最后感谢学校给我们这次实践机会,感谢老师这两周为我们解
标准答问题。
文案
标准
文案EDA课程设计成绩单