基于verilog_hdl语言的自动售货机设计内容摘要:
此系统 共有 18 个状态, 故 从状态 0到状态 17,用 5位 2进制码依次表示为 00000— 10001, 然后对输出变量进行编码: 投币显示 num: 000 001 010 011 100 101 卖出货 g2:无 00 water01 Coke10 退币 c3 : 无: 000 001 010 011 100 101 模块 实现与描述 在程序 的设计过程中使用 case 语句,且在判断出 每种状态输入后直接给出了该系统的输出,因此,该自动售货机仅有一个整体模块,即包含了输入和输出(其中源程序见附录)。 如下图 所示: 图 整体模块芯片图 输入输出描述如下: 输入: clk,接入系 统时钟,作为接受外部信号时钟; reset,接入复位信号,作用系统初始化,高电平有效; coin5,投币 5角信号,高电平有效; coin10,投币 1元信号,高电平有效。 输出: water,输出价值 1的饮料的信号,高电平有效; coke,输出价值 ,高电平有效; ,找零 /退币 ,高电平有效; ,找零 /退币 1元信号,高电平有效; ,找零 /退币 ,高电平有效; ,找零 /退币 ,高电平有效; ,找零 /退币 ,高电平有效。 4 自动售货机的仿真 在现实中 自动售货机的状态繁多, 参见图 , 故 此次设计, 仅列 举 三种最具代表性的仿真波形, 分别为“ 5角硬币购买”、“ 1元硬币购买”、“ 5角和 1元硬币混合购买”, 每种情况分三个 波形讨论。 “ 5 角硬币 购买 ” 仿真 与分析 ( 1) 买 water 投入 5 角硬币购买 water 的 仿真如下图 所示: 图 投入 5 角硬币购买 water 输入 : clk(系统时钟信号 )高电平 有 效, 从 开始到 这段时间里,当依次投入 5 角硬币 (coin5), state(状态 )由 0 变到 11(因为先是遇到找零信号,故已找零 元), 说明投入的 实际 总币值为 元。 在投完币之后从 到 给出 water(买水 )信号。 输出 :在 到 里 num(投币显示 )由 0H 变化到5H,二进制表示为 0000~0101,对照状态编码可知为 元 , 恰好验证了前面 state的正确性,当遇到 water 信号, g2(卖出货物变量 )从低电平 0 变到高电平 1,说明此时成功出售 water,c3(找零信号 )由 1 变到 3,对应二进制为 0001~0011,0011编码为 元,故 找零 元 ,满足了 (总额) (水单价) =(找零),此时 state 变为 00 初始状态。 即仿真结果符合现实中的购买过程。 ( 2) 买 coke 投入 5 角硬币购买 coke 的 仿真如下图 所示: 图 投入 5 角硬币购买 coke 输入: clk(系统时钟信号 )高电平 有 效, 从 开始到 这段时间里,当依次投入 5 角 硬币 (coin5), state(状态 )由 0 变到 11(因 为先是遇到找零信号,故已找零 元),说明投入的实际总币值为 元。 在投完币之后从 到 给出 coke(买可乐 )信号。 输出:在 到 里 num(投币显示 )由 0H变化到 5H,二进制表示为 0000~0101,对照状态编码可知为 元,恰好验证了前面state 的正确性,当遇到 coke 信号, g2(卖出货物变量 )从低电平 0 变到高电平 2,说明此时成功出售 coke,c3(找零信号 )由 1 变到 0, 表示不用找零。 此时 满足了 (总额) (可乐 单价) =0(找零),此时 state 在售出 coke 之后由 09 变为 00初始状态。 此 仿真结果符合现实中的购买过程。 ( 3) 取消操作 投入 5 角硬币取消操作的 仿真如下图 所示: 图 投入 5 角硬币取消操作 输入: clk(系统时钟信号 )高电平 有 效,从 开始到 这段时间里,当依次投入 5 角硬币 (coin5), state(状态 )由 0 变到 11(因为先是遇到找零信号,故已找零 元),说明投入的实际总币值为 元。 在投完币之后从 到 给出 cancel(取消)信号。 输出:在 到 里 num(投币显示 )由 0H变化到 5H,二进制表示为 0000~0101,对照状态编码可知为 元,恰好验证了前面 state 的正确性,当遇到 cancel 信号, c3(找零信号 )由 1 变到 5,对应编码为 0101,表示找零 元,也即取消操作。 此时 state 在 遇到 cancel 之后由 10 变为 00 初始状态。 此仿真结果符合现实中的 投币而不 购买 的 过程。 “ 1 元硬币 购买 ” 仿真 与分析 ( 1) 买 water 投入一元硬币购买 water 的 仿真如下图 所示: 图 投入 1 元硬币购买 water 输入: clk(系统时钟信号 )高电平 有 效,从 开始到 这段时间里,当依次投入 1 元硬币 (coin10), state(状态 )由 0 变到 11(因为先是遇到找零信号,故已找零 元),说明投入的实际总币值为 = 元。 在投完币之后从 给出 water(买水 )信号。 输出:在 num(投币显示 )由 0H 变化到 5H,二进制表示为 0000~0101,对照状态编码可知为 元,恰好验证了前面 state 的正确性,当遇到 water 信号, g2(卖出货物变量 )从低电平 0 变到高电平 1,说明此时成功出售 water,c3(找零信号 )由 1 变到 3,对应二进制为 0001~0011,0011 编码为 元,故找零 元,满足了 (总额) (水单价) =(找零),此时 state 由 13 变为 00 初始状态。 即仿 真结果符合现实中的购买过程。 ( 2) 买 coke 投入 1 元硬币购买 coke 的 仿真如下图 所示: 图 投入 1 元硬币购买 coke 输入: clk(系统时钟信号 )高电平 有 效,从 开始到 这段时间里,当依次投入 1 元硬币 (coin10), state(状态 )由 0 变到 11(因为先是遇到找零信号,故已找零 元),说明投入的实际总币值为 元。 在投完币之后从 ns到 给出 coke(买可乐 )信号。 输出:从 到 这段时间里 num(投币显示 )由 0H 变化到 5H,二进制表示为 0000~0101,对照状态编码可知为 元,恰好验证了前面 state 的正确性,当遇到 coke 信号, g2(卖出货物变量 )从低电平 0 变到高电平 2,说明此时成功出售 coke,c3(找零信号 )由 1 变到 0,表示不用找零。 此时满足了 (总额) (可乐单价) =0(找零),此时 state 在售出coke 之后由 09 变为 00 初始状态。 此仿真结果符合现实中的购买过程。 ( 3) 取消操作 投入 1 元硬币取消操作的 仿真如下图 所示: 图 投入 1 元 硬币取消操作 输入: clk(系统时钟信号 )高电平 有 效,从 开始到 这段时间里,当依次投入 1 元 硬币 (coin10), state(状态 )由 0 变到 06, 说明投入的实际总币值为 元。 在投完币之后从 到 给出 cancel(取消)信号。 输出:在 到 里 num(投币显示 )由 0H 变化到 4H,二进制表示为0000~0100,对照状态编码可知为 元,恰好验证了前面 state 的正确性,当遇到 cancel 信号, c3(找零信号 )由 0 变到 4,对应编码为 0100,表示找零 元,也 即取消操作。 此仿真结果符合现。基于verilog_hdl语言的自动售货机设计
相关推荐
=.t. =0 (lbl2,label) amp。 amp。 增加另一个标签以显示立体效果 =rgb(64,128,128) =28 =.t. =楷书 _GB2312 =allt(systit) =((systit)*1618)/22 =139 =0 =rgb(0,128,0) =.t. (lbl3,label) amp。 amp。 增加一个标签 =rgb(64,128,128) =.t.
Id int 留言的 id 统计留言的条数 Room_type Varchar 房间的类型 Room_size Float 房间的面积 Former_price Float 原价 Now_price Float 现价 Hno Int 酒店的 id 用于区分是哪一家酒店的留言 执行 SQL 语句: CREATE TABLE `room` ( `_id` int(11) NOT NULL
的静态图像格式,例如 :JPG、 PNG、 GIF 等格式。 (7)GSM 技术 :Global System for Mobile Communications,即全球移动通讯系统,俗称”全球通”,是一种起源于欧洲的移动通信技术标准,是第二代移动通信技术,其开发目的是让全球各地可以共同使用一个移动电话网络标准,让用户使用一部手机就能行遍全球。 GSM 技术是属于手机硬件方面的展现,也是在开发
负责人(签名): 年 月 日 目 录 绪论 .................................................................. 1 论文背景 ........................................................... 1 国内外现状分析 .................................
MFC 的 C++编程方式,虽然代码运行效率相对较低,但开发难度小,开发工作量小,源代码效率高,已经成为 Visual C++开发 windows 应用程序的主流。 本系统选择的就是基于 MFC 的 C++编程方式。 SQL SERVER 2020 数据库 SQL Server 是一个全面的、集成的、端到端的数据解决方案,它为企业中的用户提供了一个安全
一种传统的设计方式,对设计进行逐次划分的过程是从存在的基本单元出发的,设计树最末枝上的单元要么是已经制造出的单元,要么是其他项目已开发好的单元或者是可外购得到的单元,这种设计方法与只用硬件在模拟实验板上建立的一个系统的步骤有密切的联系。 这种设计方法的优点是 : 设计人员对于这种方式进行设计比较熟悉,实现各个子块电路所需时间短。 这种设计方法的缺点是 : 一般来讲,对系统的整体功能把握不足