1、 1 EDA 设计实习报告 成绩: 教师签名: 姓 名 学 院 ( 系 ) 信息学院电子系 专业名称班级 学号 课程设计内容 基于 VHDL 文本输入法的电子密码锁的设计 时间 2010 年 5 月 2 一、一、 课程设计课程设计的的目的目的: 本课程设计主要是基于 VHDL 文本输入法设计电子密码锁, 随着社会物质财富的日益增长, 安全 防盗已成为全社会关注的问题。基于 EDA 技术设计的电子密码锁,以其价格便宜、安全可靠、使用方 便,受到了人们的普遍关注。而以现场可编程逻辑器件(FPGA)为设计载体,以硬件描述语言(VHDE)为 主要表达方式,以 Quartus开发软件和 GW48EDA
2、开发系统为设计工具设计的电子密码锁,由于其能 够实现数码输入、数码清除、密码解除、密码更改、密码上锁和密码解除等功能,因此,能够满足社会 对安全防盗的要求。 二、二、 系统设计实现的基本功能系统设计实现的基本功能 (1) 密码输入:每按下一个数字键,就输入一个数值,并在显示器上显示出该数值。同时将先前输 入的数据依次左移一个数字位置。 (2) 密码清除:按下清除键可清除前面所有的输入值,清除成为“0000” 。 (3) 密码更改:按下更改键可将目前数据设定为新的密码。 (4) 密码上锁:按下上锁键可将密码锁上锁。 (5) 密码解除:按下解除键首先检查输入的密码是否正确,密码正确即解锁。 三、三
3、、电子密码锁的结构原理电子密码锁的结构原理 根据系统设计要求,系统设计采用自顶向下的设计方法。 3.1 电子密码锁的整体结构 电子密码锁的整体结构如图 1 所示,它包括密码锁输入模块、控制模块和显示模块等。 原理图: 图 1 3 1密码锁输入模块密码锁输入模块 密码锁的输入模块由时序产生电路、键盘扫描电路、键盘译码电路和按键存储电路组成。如下图示: 图 2 a 时序产生电路 产生电路中使用的三种不同频率的工作脉冲波形, 即系统时钟脉冲、 弹跳消除取样信号和键盘扫描信号。 b 键盘扫描电路 扫描电路的作用是提供键盘扫描信号,扫描信号变化顺序依次是 11101101101101111110.- 依
4、序地周而复始。 c键盘译码电路 上述键盘中的按键分为数字按键和文字按键,每一个按键可能负责不同的功能,例如清除键、上锁键 和解锁键等。数字按键主要是用来输入数字的,但是键盘所产生的输出是无法直接拿来用作密码锁控 制电路的输入的;另外,不同的按键具有不同的功能,所以必须由键盘译码电路来规划每个按键的输 出形式,以便执行相应的动作。 d 按键存储电路 因为每一次扫描会产生新的按键数据,可能会覆盖前面的数据,所以需要一个按键存储电路。将整个 键盘扫描完毕后的结果记录下来。 按键位置与数码关系(表)按键位置与数码关系(表)图图 3 扫 描 位 置CSR 【10】 00 00 00 01 01 01 1
5、0 10 10 11 11 11 键盘输出信号 SEL 【30】 0011 0101 0110 0011 0101 0110 0011 0101 0110 0011 0101 0110 按键号 1 2 3 4 5 6 7 8 9 * 0 # 图 4 所示是密码锁输入模块的仿真波形 时序产生电路 键盘扫描电路 按键数据缓存器 键盘 弹跳消除电路 键盘译码电路 4 2密码锁控制模块密码锁控制模块 密码锁的控制电路是整个电路的控制中心,主要完成对数字按键输入和功能按键输入的响应控制。 a数字按键输入的响应控制 如果按下数字键,第一个数字会从显示器的最右端开始显示,此后每新按下一个数字时,显示器上的
6、数字必须左移一位,一边将新的数字显示出来。 假如要更改输入的数字,可以按倒退按键来清除前一个输入的数字,或者按清除键清除所有输入的数 字,再重新输入四位数。 由于这里设计的是一个四位的电子密码锁,所以当输入的数字键超过四个时,电路不予理会,而且不 再显示第四个以后的数字。 b功能按键输入响应控制 清除键:清除所有的输入数字,即做归零动作。 上锁键:按下此键时可将密码锁的门上锁(上锁前必须先设定一个四位的电子密码) 。 解除键:按下此建辉检查输入的密码是否正确,若密码正确无误则解锁。 图 4 所示是密码锁控制模块的仿真波形 5 3密码锁译码模块: 本电子密码锁的显示模块比较简单,其作用是将控制模块的 BCD 码输出转换为 7 段显示编码,然后驱 动数码管,其仿真波形如图 6 所示。 电子密码锁的整合和验证 要完成电子密码锁的设计,还必须将上述三个功能模块进行整合。其整合电路图如图 1 所示。 电子密码锁整个系统的仿真如下图示: 四、设计的心得体会四、设计的心得体会 此次的设计是参考了EDA 技术实验与课程设