简易位数字密码锁控制电路设计实验报告.pdf

目录 一 前言 2 二 课设任务 2 三 方案设计 原理分析 2 四 译码电路设计 8 五 报警信号产生器 10 六 调试及结果 12 七 体会 13 一 前言 本次课程设计的基本任务是着重提高学生在EDA 知识学习与应 用方面的实践技能 学生通过电路设计安装 调试 整理资料等环节 初步掌握工程设计方法和组织实践的基本技能 逐步熟悉开展科学实 践的程序和方法 EDA 技术是电子信息类专业的一门新兴学科 是现代电子产品 设计的核心 其任务是掌握在系统可编程逻辑器件及其应用设计技 术 为电子产品开发研制打下坚实基础 本课程设计对学生有如下要求 根据设计任务和指标 初步电路 通过调查研究 设计计算 确定电路方案 选择元器件 在计算机上 连好线路 独立进行试验 并通过调试 仿真 改进方案 分析实验 结果 写出设计总结报告 学会自己分析 找出解决问题方法 对设 计中遇到的问题 能独立思考 查阅资料 寻找答案 二 课设任务 1 14 位数字密码分成高 7 位 DH6 DH0 和低 7 位 DL6 DL0 用数字逻辑开关预置 输出信号out 为 1 表示开锁 否则关闭 2 14 位数字密码分时操作 先预置高7 位 然后再置入低 7 位 3 要求电路工作可靠 保密性强 开锁出错立即报警 4 利用 MAX plus2 软件进行设计 编译 并在FPGA 芯片上实现 5 简易 14 位数字密码锁模块的框图如下 三 方案设计 原理分析 首先我是一班的三号 所以我的密码时0100010 0000011 我所做的设计是先把高七位输入锁存 然后在输入低七位 最后判断密码是否正确 密码正确就开锁 密码错误就报 警 数字密码锁控制电路的组成部分 YMQ 模块 1 IC9A 的设计 设计要求 14 位数字密码分时操作 先预置高七位0100010 而 后置低七位 0000011 首先可以使用寄存器将高七位存起来 而后与 低七位一起进行译码 如果密码正确 输出OUT2 为 1 否则为 0 2 数字密码锁控制电路原理图 输入密码正确时波形图 输入错误密码时波形图 数字密码锁控制电路的VHDL 语言编程原理分析 当 CLR 为 0 时 寄存器与 D 触发器被清零 此时在A G 输 入高七位密码 0100010 用 CLK 给一个脉冲 由于此时输出端Q 为 0 经过一个非门为 1 与 CLK 一起经过一个与门 送入寄存器 CLK 端 产生上升沿 而经过非门的CLR 为 1 送入寄存器中 将高七 位通过寄存器送入译码器的高七位中 然后在 A G 输入低七位密 码 0000011 则输出端 Y 为 1 当译码器输出 Y 为 1 的时候 输出端 OUT2 即为 1 输出发光管 全亮 标志密码输入正确 后面的两个D 触发器的输入为1 当用 CLK2 送入脉冲时 两个 D 触发器的 Q 端输出都为 1 其中一个输出 Q 经过三态门 三态门开启 则OUT2B 为 1 开锁 另一个输出1 经过非门变为0 声报警不能进行 0 与分频后的脉冲信号相与送入 光报警 光报警不能进行工作 当译码器输出 Y 为 0 的时候 输出端 OUT2B 为 0 输出发光管 不亮 标志密码输入错误 此时后面的两个 D 触发器的输入为 0 当 用 CLK2 送入脉冲时 两个D 触发器的 Q 端输出都为 0 其中一个 输出 Q 经过三态门 三态门不能开启 则OUT1 为 0 不能开锁 另 一个输出 Q 经过非门变为 1 声报警接蜂鸣器 蜂鸣器发声 1 与分 频后的脉冲信号相与送入光报警 光报警的发光二极管产生闪烁报 警 由于人眼有反应时间 所以频率要经过分频成很小的频率 才能 使人眼可以分辨 若频率比较高 则人眼只能看到灯一直在亮 不能 显示灯光在闪 所以我们要把频率分成小频率 由于试验箱上最小是 4hz 的 而我的程序是八分频 即分为了 2s 闪一下 达到灯光闪 烁的效果 四 译码电路设计 译码电路 VHDL 语言设计 LIBRARY IEEE USE YMQ IS PORT D IN STD LOGIC VECTOR 6 DOWNTO 0 CLK IN STD LOGIC CLR IN STD LOGIC OUT1 OUT STD LOGIC END YMQ ARCHITECTURE ART OF YMQ IS SIGNAL S STD LOGIC VECTOR 13 DOWNTO 0 BEGIN S 6 DOWNTO 0 D PROCESS CLK BEGIN IF CLK EVENT AND CLK 1 THEN IF CLR 1 THEN S 13 DOWNTO 7 D END IF END IF END PROCESS OUT1 1 WHEN S 13 DOWNTO 0 0 ELSE 0 END ART 波形图为 首先设定CLR 为 1 五 报警信号产生器 声光控控制电路的分析 当密码输入错误时 Y 的输出为 0 无论 CLK2 是否为 1 GBJ 由于分频器输出端的脉冲控制 GBJ 开始闪烁 SBJ为 1 处于高电平 控制蜂鸣器发声 分频器的 VHDL 语言设计 LIBRARY IEEE USE DIV IS PORT RESET CLK IN STD LOGIC CLK 8 OUT STD LOGIC END DIV ARCHITECTURE ART OF DIV IS SIGNAL COUNT STD LOGIC VECTOR 2 DOWNTO 0 BEGIN PROCESS RESET CLK BEGIN IF RESET 0 THEN COUNT 000 ELSIF CLK EVENT AND CLK 1 THEN COUNT COUNT 1 ELSE NULL END IF 波形图为 原理分析 本次设计选择八分频设计 设计原理为 NRESET 为清零端 CLK 为脉冲信号 当 NRESET 清零端为 0 时 输出 QA QH 都为 0 不产生信号 当NRESET 清零端为 1 时 无清零信号 QA QH 分别产生 1 8 分频信号 在实际电路下载过程中 可 根据实际情况接入不同级的分频信号 六 调试及结果 1 进行管脚锁定 选择菜单MAX plus2 Flooplan Editor 打开编辑窗口 并且显示出当前项 目的选定的器件 可以通过选择菜单Lagout Device 来选择器件试图 也可以 通过选择菜单Lagout LAB view 来选择 LAB 试图 还可以通过双击试图区的 方法在这两种显示方式间切换 再次选择MAX plus2 compiler 单击 start 按钮 此时系统产生可以下 载配置器件的文件 2 将设计下载到实验箱 在连接有实验箱的计算机上调出仿真原理图 在 MAX plus2 菜单下选 择 Programmer 单击按钮 configure 完成配置 在 Hardware Fype 下 拉框中选择 Byte Blaster 单击 OK 即可 在实验板上进行操作 电路的管脚锁定情况如下 引脚标志位置管脚引脚标志位置管脚 CLKO CP2 2 D5 LK5 36 CLK1 LK12 50 D6 LK6 37 CLK2 LK11 49 D7 LK7 38 CLR LK10 48 D1 LK1 28 GBJ L12 21 D2 LK2 29 SBJ SP 27 D3 LK3 30 OUT1 L14 23 D4 LK4 35 OUT2 L13 22 七 体会 这是一次综合性很强的实验 从最初的设想 到具体功能的实现 再到电 路的连接 直至最后的电路调试 每一个环节都让我加深了对实际问题的思考 同时也让我动手能力有了很大的提高 是我受益匪浅 明白了设计一个功能电 路的具体要求和步骤 同时也对EDA 知识有了更深刻的理解和认识 并将其 运用到了实际生活中 使其为实际生活服务 这次最大的收获就是学会了很系统地去解决一个实际问题 学会了巧妙运 用模块化的思想 在整个电路设计与实现中 最成功的地方就是有条理地将功 能细化 分成一个一个小的功能来实现 每做好一个小功能实现的电路 就将 其集成为一块具有此功能的芯片 这样 在之后的电路连接中就只要将这块芯 片接入即可 最后就这样一级一级地将电路集成 最后生成的密码锁控制电路 在这个过程中 我更深刻地体会从分立元件到中下规模集成电路再到大规 模集成电路的组成过程 同时也更加深入地了解了MAX plus2这一软件的更多 的功能 更重要的是在此过程中 我学会了独立思考 遇到问题一步一步去研 究与解决解决 对于电路出现的问题不急于拆线 而是一部分一部分地对其应 有的功能进行调试 对问题进行各个击破 总而言之 这次实验让我觉得受益 匪浅 不再觉得学无所用 实验所解决的问题与生活紧密相连 从而将平时学 书本上的理论与实践很好地结合起来 最终当做出成品时 有很大的成就感 遇到的问题及解决方案 1 编译通过后 下载到硬件上之后 发现程序并没有预期的效果 如显 示乱序而没有规律等等 当加入适当的选通信号或者脉冲后发现问题得到了解 决 所以必须在实践中不断地修改以得到正确的结论 2 高电平有效还是低电平有效 这是一个非常容易忽视的问题 有时就 知道这个端口要控制信号但不考虑好什么电平有效 造成错误 使得使能端或 者清零端的出现错误控制信号 并且到底是脉冲控制 还是边沿控制一定要清 楚 在实验时候可以避免一些不必要的麻烦 3 引脚重复使用也是一个问题 有时候输出信号必须输出到一个特定的 引脚 而输出来自两路信号 这时候必须加入一个选择器件选择输出信号输出 在实际调试的时候我们必须耐心思考 遇到问题针对问题出现的原因认真 思考以解决问题 从这次设计中我收到了不少的收获 设计前有很多不懂的地方 但在设计 过程中通过同学和老师的帮助我都一一解开了疑团 这就是我最大的收获 感谢老师的指导和帮助