自动饮料售卖机Verilog设计

本文介绍如何使用Verilog设计一个自动饮料售卖机,该机器仅接受1美分、2美分和5美分硬币,且每杯饮料价值5美分。文章通过测试程序和仿真波形展示设计细节。
摘要由CSDN通过智能技术生成

饮料为5美分,饮料机只能接收1美分,2美分,5美分的钱币,请设计一个Verilog电路表示

`timescale 1ns/10ps
module sell(one,two,five,rset,clk,result);
input one,two,five,rset,clk;
output result;
reg drink;
assign result = drink;
reg [2:0] current_state,next_state;
parameter [2:0]
  S0 = 3'b000,
  S1 = 3'b001,
  S2 = 3'b010,
  S3 = 3'b011,
  S4 = 3'b100;
//sequential state transition
always @ (posedge clk or negedge rset)
  if (!rset)
    current_state <= S0;
  else
    current_state <= next_state;
always@(current_state or one or two or five)
begin
  case(current_state)
    S0: begin
      drink = 1'b0;
      if(one == 1)
      begin
        next_state = S1;
        drink = 0;
      end
      else if(two == 1)
      begin
        next_state = S2;
        drink = 0;
      end
      else if(five == 1)
      begin
        next_state 
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值