EDA课程设计报告电子密码锁.doc
《EDA课程设计报告电子密码锁.doc》由会员分享,可在线阅读,更多相关《EDA课程设计报告电子密码锁.doc(17页珍藏版)》请在三一办公上搜索。
1、EDA课程设计报告电子密码锁专业:通信工程 学号:11111111111姓名:*2015-6-26目录一 设计目标或任务要求1.1 关于电子密码锁1.2设计目标或任务要求二 任务分析、设计方案2.1 密码锁的组成部分2.2 矩阵式键盘的工作原理2.3 密码锁输入电路各主要功能模块的设计2.4 密码锁控制电路各主要功能模块的设计2.5 密码锁显示电路的设计三 具体实现过程3.1 密码锁的整体组装设计四 仿真、验证结果4.1键盘输入去抖电路的VHDL源程序(附仿真图)4.2密码锁输入电路的VHDL源程序(附仿真图)4.3密码锁控制电路的VHDL源程序(附仿真图)4.4密码锁显示电路七段译码器设计源
2、程序(仿真图)4.5实验验证五 结束电子密码锁一 设计目标或任务要求1.1 关于电子密码锁随着电子技术的发展,具有防盗报警等功能的电子密码锁代替密码量少、安全性差的机械式密码锁已是必然趋势。电子密码锁与普通机械锁相比,具有许多独特的优点:保密性好,防盗性强,可以不用钥匙,记住密码即可开锁等。电子密码锁是一种通过密码输入来控制电路或是芯片工作,从而控制机械开关的闭合,完成开锁、闭锁任务的电子产品。它的种类很多,有简易的电路产品,也有基于芯片的性价比较高的产品。现在应用较广的电子密码锁是以芯片为核心,通过编程来实现的。其性能和安全性已大大超过了机械锁,其特点如下:1保密性好,编码量多,远远大于弹子
3、锁。随机开锁成功率几乎为零。2密码可变。 用户可以经常更改密码,防止密码被盗,同时也可以避免因人员的更替而使锁的密级下降。3误码输入保护。当输入密码多次错误时,报警系统自动启动。4. 电子密码锁操作简单易行。1.2 设计目标或任务要求1、在锁开的状态下输入密码,设置的密码共4位,用数据开关K1K10分别代表数字1、2、9、0,输入的密码用数码管显示,最后输入的密码显示在最右边的数码管上,即每输入一位数,密码在数码管上的显示左移一位。可删除输入的数字,删除的是最后输入的数字,每删除一位,密码在数码管的显示右移一位,并在左边空出的位上补充“0”。2、用一位输出电平的状态代表锁的开闭状态,绿色发光管
4、指示。3、为保证密码锁主人能打开密码锁,设置一个万能密码,在主人忘记密码时使用。利用基于所学EDA相关知识设计一个具有较高安全性和较低成本的通用电子密码锁,其具体功能要求如下: (1) 数码输入:每按下一个数字键,就输入一个数值,并在显示器上的最右方显示出该数值,同时将先前输入的数据依序左移一个数字位置。 (2) 数码清除:按下此键可清除前面所有的输入值,清除成为“0000”。 (3) 密码更改:按下此键时会将目前的数字设定成新的密码。 (4) 激活电锁:按下此键可将密码锁上锁。 (5) 解除电锁:按下此键会检查输入的密码是否正确,密码正确即开锁。二 任务分析、设计方案2.1 密码锁的组成部分
5、作为通用电子密码锁,主要由三个部分组成:数字密码输入电路、密码锁控制电路和密码锁显示电路。 根据以上选定的输入设备和显示器件,并考虑到实现各项数字密码锁功能的具体要求,整个电子密码锁系统的总体组成框图如图2.1所示。(1) 密码锁输入电路包括时序产生电路、键盘扫描电路、键盘弹跳消除电路、键盘译码电路等几个小的功能电路。 (2) 密码锁控制电路包括按键数据的缓冲存储电路,密码的清除、变更、存储、激活电锁电路(寄存器清除信号发生电路),密码核对(数值比较电路),解锁电路(开/关门锁电路)等几个小的功能电路。(3) 七段数码管显示电路主要将待显示数据的BCD码转换成数码器的七段显示驱动编码。图2.1
6、 数字电子密码锁系统总体框图图2.2是电子密码锁的输入电路框图,由键盘扫描电路、弹跳消除电路、键盘译码电路、按键数据缓存器,加上外接的一个34矩阵式键盘组成。图2.2电子密码锁的输入电路框图2.2 矩阵式键盘的工作原理矩阵式键盘是一种常见的输入装置,在日常的生活中,矩阵式键盘在计算机、电话、手机、微波炉等各式电子产品上已经被广泛应用。图2.3是一个34矩阵式键盘的面板配置图,其中数字09作为密码数字输入按键,*作为“上锁”功能按键,#作为“解锁/清除”功能按键。图2.3.34矩阵式键盘的面板配表2.1. 行扫描信号、列按键输入信号与按键位置的关系KY3KY0111011101110110111
7、011101101110111011011101110111KX2KX0011101110011101110011101110011101110按键号123456789*0#2.3密码锁输入电路各主要功能模块的设计 2.3.1 时序产生电路本时序产生电路中使用了三种不同频率的工作脉冲波形:系统时钟脉冲(它是系统内部所有时钟脉冲的源头,且其频率最高)、弹跳消除取样信号、键盘扫描信号。2.3.2 键盘扫描电路扫描电路的作用是用来提供键盘扫描信号(表4.1中的KY3KY0)的,扫描信号变化的顺序依次为11101101101101111110.依序地周而复始。 2.3.3 键盘译码电路上述键盘中的按键
8、可分为数字按键和文字按键,每一个按键可能负责不同的功能,例如清除数码、退位、激活电锁、开锁等,详细功能参见表1.3。表2.3 键盘参数表扫描位置KY3KY0键盘输出KX2KX0对应键盘按键键盘译码输出实现按键功能11100111F=0001数码输入1012F=0010数码输入1103F=0011数码输入11010114F=0100数码输入1015F=0101数码输入1106F=0110数码输入10110117F=0111数码输入1018F=1000数码输入1109F=1001数码输入0111011*T=0100激活电锁1010F=0000数码输入110#T=0001退格、解锁2.3.4 弹跳消
9、除电路弹跳消除电路的实现原理如图1.6所示,先将键盘的输入信号D_IN作为电路的输入信号,CLK是电路的时钟脉冲信号,也就是取样信号,D_IN经过两级D触发器延时后再使用RS触发器处理。图2.6 弹跳消除电路的内部实现原理图此处RS触发器的前端连接和非门的处理原则是:(1)因为一般人的按键速度至多是10次/秒,亦即一次按键时间是100ms,所以按下的时间可估算为50ms。以取样信号CLK的周期为8ms计,则可以取样到6次。(2)对于不稳定的噪声,在4ms以下则至多抽样一次。(3)在触发器之前,接上AND-NOT之后,SR的组态如表1.2所示。表2.2RS触发器真值表SRD-OUT00不变101
10、0102.3.5 按键存储电路 因为每次扫描会产生新的按键数据,可能会覆盖前面的数据,所以需要一个按键存储电路,将整个键盘扫描完毕后的结果记录下来。按键存储电路可以使用移位寄存器构成。2.3.6 密码锁输入电路模块框图 输入电路引脚图如下图所示,图中CLK_1K为系统原始时钟脉冲(1 kHz)KEY_IN为键盘按键输入,CLK_SCAN为键盘扫描序列输出,DATA_N:数字输出功能,DATA_F:功能输出,FLAG_N为数字输出标志,FLAG_F为功能输出(上锁及开锁)标志,CLK_CTR是控制电路工作时钟信号,CLK_DEBOUNCE是去抖工作时钟信号,大约125 Hz 。图2.7. 密码输
11、入模块框图2.4密码锁控制电路各主要功能模块的设计密码锁的控制电路是整个电路的控制中心,主要完成对数字按键输入和功能按键输入的响应控制。2.4.1数字按键输入的响应控制1)如果按下数字键,第一个数字会从显示器的最右端开始显示,此后每新按一个数字时,显示器上的数字必须左移一格,以便将新的数字显示出来。2)假如要更改输入的数字,可以按倒退按键来清除前一个输入的数字,或者按清除键清除所有输入的数字,再重新输入四位数。3)由于这里设计的是一个四位的电子密码锁,所以当输入的数字键超过四个时,电路不予理会,而且不再显示第四个以后的数字。2.4.2功能按键输入的响应控制控制功能如下:1)清除键:清除所有的输
12、入数字,即做归零动作。2)激活电锁键:按下此键时可将密码锁的门上锁。(上锁前必须预先设定一个四位的数字密码。3)解除电锁键:按下此键会检查输入的密码是否正确,若密码正确无误则开门。图2.8电子密码锁的三种模式及关系2.4.3. 密码控制模块图模块引脚如下图所示:图中DATA_N3.0:4位行输入.DATA_N3.0:为4位列扫描输出,FLAG_N和FLAG_F则对应ENLOCK实现清除/上锁功能,CLK为全局时钟信号,DATA_BCD15.0为输出16位BCD码,经译码器后转换为4位密码输出。图2.9.密码控制模块图2.5 密码锁显示电路的设计密码锁显示电路的设计比较简单,这里直接采用四个4-
13、7译码器来实现。BCD-七段显示译码器(74LS48)1)输入:8421BCD码,用A3 A2 A1 A0表示(4位)。 2)输出:七段显示,用Ya Yg 表示(7位) 。图中A3.0为按键输入在经过去抖电路后的的BCD码的高4位输入数值,经过4-7译码器译码后输出09之间的数值,因为输入为16位的BCD码,而每一个译码器仅4位输入,故一共需要4个译码器来实现密码锁显示电路的设计。译码器引脚如下图所示:图2.10. 七段译码器输入输出引脚图三 具体实现过程3.1 密码锁的整体组装设计将前面各个设计好的功能模块进行整合,可得到一个完整的电子密码锁系统的整体组装设计原理图,如图1.8所示图3.1密
14、码锁的整体组装设计原理如上图所示为系统设计原理图,图中CLK为输入信号系统原始时钟脉冲(1 kHz),KEY_IN2.0为按键输入信号,即当有键按下时时钟脉冲信号检测到有信号输入,KEYBOARD模块对输入信号进行键盘扫描处理,判断按下的是数字键还是功能键,每次的输入数值都会通过七段译码器显示结果,最后在核定密码真确后则开锁。四 仿真、实验验证过程及硬件结果、现象、结论4.1 键盘输入去抖电路的VHDL源程序(附仿真图)LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL;ENTITY DCFQ ISPORT(CLK, CLRN, PRN, D: IN STD_L
15、OGIC; Q: OUT STD_LOGIC);END ENTITY DCFQ ;ARCHITECTURE ART OF DCFQ ISBEGINPROCESS (CLK, CLRN, PRN)BEGINIF CLRN=0 AND PRN=1 THENQ=0;ELSIF CLRN=1 AND PRN=0 THENQ=1; ELSIF CLKEVENT AND CLK=1 THENQ =D; END IF ; END PROCESS ; END ARCHITECTURE ART; -DEBOUNCING.VHDLIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL;
16、LIBRARY ALTERA; USE ALTERA.MAXPLUS2.ALL;ENTITY DEBOUNCING ISPORT(D_IN, CLK: IN STD_LOGIC; DD1, DD0, QQ1, QQ0 : OUT STD_LOGIC; D_OUT, D_OUT1: OUT STD_LOGIC ); END ENTITY DEBOUNCING ;ARCHITECTURE ART OF DEBOUNCING ISCOMPONENT DCFQ ISPORT(CLK, CLRN, PRN, D: IN STD_LOGIC; Q: OUT STD_LOGIC); END COMPONEN
17、T DCFQ; SIGNAL VCC, INV_D : STD_LOGIC ; SIGNAL Q0, Q1 : STD_LOGIC ; SIGNAL D1, D0 : STD_LOGIC ; BEGIN VCC = 1 ; INV_D CLK, CLRN = INV_D, PRN = VCC, D =VCC , Q = Q0); U2: DCFQ PORT MAP (CLK = CLK, CLRN = Q0, PRN = VCC, D =VCC , Q = Q1); PROCESS (CLK) BEGIN IF CLKEVENT AND CLK=1 THEN D0 = NOT Q1; D1 =
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- EDA 课程设计 报告 电子 密码锁

链接地址:https://www.31ppt.com/p-4146515.html