简易投币式邮票自动销售机_第1页
简易投币式邮票自动销售机_第2页
简易投币式邮票自动销售机_第3页
简易投币式邮票自动销售机_第4页
简易投币式邮票自动销售机_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

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

文档简介

基于基于 FPGAFPGA 的数字电路系统设计的数字电路系统设计 简易投币式邮票自动销售机简易投币式邮票自动销售机 控制电路设计控制电路设计 东华大学东华大学 自动化自动化 10031003 班班 郭书奕郭书奕 100900326100900326 桌号桌号 1717 目录目录 准备准备 设计要求及操作环境设计要求及操作环境 0 10 1 设计要求设计要求 0 0 2 2 硬件环境硬件环境 第一部分 米利型第一部分 米利型 第一章第一章 设计原理及总体思路设计原理及总体思路 1 11 1 设计原理设计原理 1 21 2 模块分析模块分析 第二章第二章 电路图及功能细化电路图及功能细化 2 12 1 输入控制模块输入控制模块 2 22 2 ROMROM 及状态机及状态机 2 32 3 定时及分频模块定时及分频模块 2 42 4 显示模块显示模块 2 52 5 输出模块输出模块 附图附图 电路总图电路总图 第二部分 莫尔型第二部分 莫尔型 第一章第一章 设计原理及总体思路设计原理及总体思路 1 11 1 设计原理设计原理 1 21 2 模块分析模块分析 第二章第二章 电路图及功能细化电路图及功能细化 2 12 1 输入控制模块输入控制模块 2 22 2 ROMROM 及状态机及状态机 2 32 3 定时及分频模块定时及分频模块 2 42 4 显示模块显示模块 2 52 5 输出模块输出模块 附图附图 电路总图电路总图 第三部分第三部分 调试调试 3 13 1 调试调试 3 23 2 问题及解决办法问题及解决办法 第四部分 结束语第四部分 结束语 设计感想设计感想 参考文献参考文献 准备准备 0 10 1 设计要求设计要求 1 系统允许投入 0 5 元和一元 2 种硬币 售出面值 2 元的 邮票 2 当硬币投入后 系统用七段 LED 数码管显示已投入的累 计币值 3 当投币累计等于 2 元是 输出邮票 大于 2 元时 输出 邮票并找零 4 输出信号有效电平维持 3 秒时间 输出信号无效后回到 初始状态 累计币值为 0 输出信号期间不能再投币 5 输出信号有效时蜂鸣器以 0 5 秒鸣响 0 5 秒间隔的方式 发出提示音 输出邮票是蜂鸣器的鸣响频率为 1KHz 输出邮票并找 零时蜂鸣器的鸣响频率为 2KHz 6 为保证系统上电时处于初始状态 设置一个状态复位键 0 2 0 2 硬件环境硬件环境 控制系统以 FPGA 实现 用两个脉冲按键分别模拟投入 0 5 元和 1 元 两种硬币 用两个发光二极管分别指示输出邮票和找零 累计币值 用两个七段 LED 数码管显示 显示方式由所使用的 FPGA 开发装置电 路结构决定 第一部分第一部分 米利型米利型 第一章第一章 设计原理及总体思路设计原理及总体思路 1 11 1 设计原理设计原理 投币式自动售货机的主要功能是累计投入的币值并作出判断 所以要求电路具有记忆功能 数字电路中的时序逻辑单元电路能够 运用电路 状态 记忆输入信号的变化历程 因此本设计的基本思 路是由触发器构成的时序 状态机 存储电路可采用 D 触发器或 JK 触发器实现 组合电路可选择逻 辑门 数据选择器或存储器 ROM 实现 系统需要记忆的累计币值最多可能有 6 种情况 因此状态数可 能达到 6 个 投币式自动销售机可以采用输出受输入信号和电路状 态同时控制的米利型时序电路实现 也可以采用输入信号仅控制电 路状态转换 而输出由状态控制的莫尔型时序电路实现 前者所需 的状态数少 后者的输出信号与系统触发时钟同步 1 21 2模块分析模块分析 考虑将整体思路细分为具体模块 可分为如下 6 大模块输入控 制模块 ROM 及状态机 定时模块 分频模块 显示模块及输出模 块 具体见第二章 1 状态机采用米利型时序电路 四种币值累计需要四个状态 记忆 设定状态 A 为厨师状态币值累计为 0 元 状态 B 表示投入币 值累计 0 5 元 状态 C 表示已累计 1 元 状态 D 表示已累计 1 5 元 2 输入信号处理 本设计采用两个按键分别模拟两种不同币值的 硬币 产生两路开关量脉冲信号 选择合适的逻辑门可将两路脉冲 输入 0 5 元 输出邮票 投入 1 元 输出邮票并找零 投入 1 元 输出邮票 投入 1 元 A B C D 无币投 入 投入 0 5 元 无币投 入 投入 0 5 元 投入 0 5 元 无币投 入 无币投 入 综合为一路 采用数字单稳态电路对信号进行同步化处理 既能消 除按键抖动 又可将综合后的投币信号 M 归化为宽度是一个 CP 脉冲 周期的状态触发信号 Y 3 定时电路 采用定时计数器产生 系统进入状态 E 或 F 时允许 循环周期为 3 秒的定时计数器开始计时 当定时时间到时计数器产 生溢出信号 Co 触发状态转换 4 状态机的组合逻辑部分 可以采用只读存储器 ROM 实现 根据状 态编码 可列出系统的状态转移表 根据状态转移表以及 ROM 的输 入 输出连接关系可建立 ROM 的数据存储器表 A3 A2 A1 A0 16 4 ROM q3 q2 q1 q0 D1 Q1 D0 Q0 X1 X2 CP Z2Z1 第二章 电路图及功能细化 2 12 1 输入模块输入模块 主要控制输入信号的触发与识别 在触发方面如何保证每次按 键只触发一次有效脉冲是输入模块设计中的核心问题 在这个实验 中我们用 D 触发器解决按键抖动的问题 具体原理参见 数字电路 及系统设计 高等教育出版社版 D 触发器一节 具体电路图如 下 如图所示的数字单稳态触发电路可以实现对信号宽度的整形功 能 输入信号 x1 x2 为高电平后的第一个 CP 的上升沿时 out1 和 out2 回到低电平 所以当 x1 x2 的正脉冲宽度大于一个 CP 周期时 out1 out2 输出的是一个与 CP 同步 宽度恒定为 1 个 CP 周期 与 x1 x2 宽度无关 的正脉冲 另外本电路还加了一个清零端 E 能实现定时 3s 的功能 2 22 2 ROMROM 及状态机及状态机 状态机的组合逻辑部分 可以采用只读存储器 ROM 实现 根据状态 编码 可列出系统的状态转移表 根据状态转移表以及 ROM 的输入 输出连接关系可建立 ROM 的数据存储器表 A3 A2 A1 A0 16 4 ROM q3 q2 q1 q0 D1 Q1 D0 Q0 X1 X2 CP Z2Z1 触发器的每个激励和电路的每个输出都由存储器的一位数据输 出控制端控制 存储器的地址由电路的输入 X 和状态机的状态变量 Q 控制 所以 若用只读存储器 ROM 实现组合逻辑模块 存储器的 地址码位数是 i n 输出数据位数是 j m 存储容量是 j m i n 存储器中每个单元的存储内容是对应电路输入和状态机现态某个组 合时的次态和输入逻辑值 所以 存储器中存储的信息就是逻辑状 态表 用 ROM 实现米利型状态机的组合逻辑关系 ROM 的容量为 16 4 即字长为 16 字数为 4 地址码和数据各为 4 位 ROM 的地 址 A3 A0 分别接入电路输入 X2X1 和触发器 Q1Q0 ROM 的数据输出 q3 q0 控制电路输出 Z2Z1 和触发器激励 D1D0 根据状态转移表可列 ROM 的存储数据表如下图 状态机电路如上图 由于 ROM 的地址受输入信号控制 当输入 改变时 ROM 的输出必须马上作出响应 以使状态机的触发脉冲有效 时正确的激励信号已建立 所以在建立 ROM 器件时可以不设置端口 控制时钟 如果器件型号限定始终必选 则时钟频率应远高于状态 机的触发时钟频率 使 ROM 的输出延时可以忽略 呈组合逻辑特性 本电路加入了一个清零端 能手动清零复位 具体电路图如下 2 32 3 定时及分频模块定时及分频模块 定时电路本设计方案选用了 74161 来实现对三秒的定时控制 计数器 clk 端输入 1HZ 方波 当 ENT 端输入有效信号后 QA QB QC QD 轮流出有效电平 间隔为 1 秒 在 QC 端输出加一 反相器并接入清零端 这时就构成了一个三秒的计时器了 具体电 路图如下 分频电路本设计方案选用七个 7490 构造出七分频电路 在从 10KHZ 端接出一个五分频电路 从而得到 2KHZ 备用 之后接蜂鸣器 具体电路如下 2 42 4 显示模块显示模块 显示模块本设计方案采用了 7 段编码模块 将状态机中的输出信号 转换为四位输入信号 再把四位输入信号输入四位选择电路中 最后直接接入显示电路 7448 中 2 52 5 输出模块输出模块 在输出模块中 出票 L1 灯亮 蜂鸣器以 2KHZ 间断鸣响 出票并找 零 L1L2 同时亮 蜂鸣器以 1KHZ 间断鸣响 此要求下难点在于如何 间断鸣响 我们在此用一个 1HZ 的信号分别与 1KHZ 2KHZ 的信号以 与门形式连接 就可得到间断的鸣响 具体电路如下 如图 C2 连接 2KHZ C3 连接 1KHZ 与门进端连接 1HZ 与门输出 接蜂鸣器即可 至于 L1L2 只要分别连接输出信号 Z1Z2 即可 总电路图总电路图 注 总图中看不清的器件请对照上述各个模块 第二部分第二部分 用莫尔型实现用莫尔型实现 第一章第一章 设计原理及总体思路设计原理及总体思路 本实验中 若使用莫尔型设计思路 具体设计方案与米利型基 本相同 其外围模块基本可沿用米利型设计方案中的模块 区别以 及难点在于在于莫尔型 ROM 进行设计时为四输入五输出 如下图所 示 本方案难点在于如何将两路输入信号并为一路 还有状态机及 rom 的设计 以下分模块详细说明 第二章第二章 电路图及功能细化电路图及功能细化 2 12 1 输入控制模块输入控制模块 输入控制模块的设计思路与米利型大不相同 我们需要将两路 输入信号并为一路并且用低电平表示投币 0 5 元 用高电平表示投 币 1 元 用无输入信号表示没有投币 再此我们用投币信号作为之 后状态机及周边设备状态翻转的触发时钟信号 以解决一个信号表 示三种状态的问题 具体设计如下图所示 这样就完成了信号的合并 并引出控制状态机状态翻转的时钟信号 信号输入模块完成 2 22 2 ROMROM 及状态机及状态机 在这一模块的设计中状态的跳转非常之纠结 考虑 ROM 的输入 有三位来自输出的反馈 一位来自输入模块 输出的五位中三位作 为反馈输入回 ROM 的输入端口 A A 两位作为输出信号传递给 输出模块 用三位信号来表示出 0 5 元 1 元 1 5 元 2 元 2 5 元的状态 ROM 中的状态表表示如下 状态机模块设计电路图如下 至此 莫尔型核心设计完毕 由于外围模块和米利型基本相同 就不详细介绍了 以下为各 个模块电路图 2 32 3 定时及分频模块定时及分频模块 定时 CLK 接 1HZ 信号 ENF 接触发信号 反相器外接复位装置 连接 方式见总图 分频 与米利型完全一样 略 2 42 4 显示模块显示模块 显示模块使用了两只 7seg 编码程序 分别为 将三输入转换为四输出编码 输入到两片选择器中 将选择器中出来的四种状态分别表示为 0 1 2 5 四种数字 使显示 0 5 1 0 1 5 2 0 2 5 五种币值显示 电路连接图如下 2 52 5 输出模块输出模块 此模块与米利型完全一样 不详细说明了 电路图如下 电路总图电路总图 注 上图中各模块均已打包 自左向右自上而下依次为 两个 D 触 发器 信号输入模块 状态机模块 显示模块 分频模块 一片 74161 一片 74153 连接方式如图 至此莫尔型设计完毕 第三部分第三部分 调试调试 调试过程调试过程 1 按下 0 5 元投币键 看屏幕显示是否正确 继续 按入 0 5 元 看币值累计是否正确 若正确 2 元时显示跳零 L1 灯 亮 蜂鸣器以 2KHZ 间断鸣响 并且此时再按投币键无效 信号锁定 持续三秒 2 按下 1 元投币键 之后与步骤 1 相同进行调试 3 按下 1 元 再按 0 5 元 再按 1 元 或先按 0 5 元 再按 1 元 再按 1 元 看币值累计是否正确 若正确 2 5 元时显示跳零 L1L2 灯同时亮起 蜂鸣器以 1KHZ 间断鸣响 并且此时再按投币键无效 信号锁定 持续三秒 4 在按入币值时按下清零键 检测清零键是否起作用 5 调试完毕 调试过程中遇到的问题及解决方案调试过程中遇到的问题及解决方案 1 调试时发现屏幕显示乱码 并未按照设计预期显示 经过多次修 改与调试确定 7seg 显示编码有误 在指导老师的帮助下进行修 改后屏幕显示正常 如若不是显示编码错误 还有一种可能性 所选时钟频率过大 正常可选用 1KHZ 作为时钟频率 当频率过 大时会出现按键直接跳如两元状态的情况 改小频率后显示正常 2 调试过程中发现 L1L2 两灯不亮 蜂鸣器不响 首先检查电路连 接是否正确 若正确无误 则有可能是没有接入公共端 需加如 下一电路 3 调试过程发现蜂鸣器不响 灯闪一下即灭 原因为将状态机中的 输出信号 Z1Z2 直接接到了 L1L2 上 因为 Z1Z2 输出的是瞬时脉冲信 号 需加以稳定电路 以保证持续输出高电平 维持灯亮及蜂鸣器 鸣响 具体电路如下 4 莫尔型电路设计时 ROM 中的状态极容易搞错 需注意 如输出 显示状态有误则优先检查此处 5 理论上在三秒输出

温馨提示

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

评论

0/150

提交评论