自动售饮料机销售控制单元设计 设计要求:每次投币一枚,分为5 角和1 元两种硬币,每瓶饮料的价格是2
5 元时,则售一瓶饮料,若投入3 元,则售一瓶饮料后,找零5 角
自动售饮料机系统框图: 用状态机法设计该系统的销售控制单元: 1
画状态转换图: 确定输入输出: 输入:时钟信号clk、复位信号reset, 五角输入信号wjin ,一元输入信号yyin,每次投币一枚 输出:销售信号sell ,五角找零信号wjout 状态划分: 采用MOORE 型状态机,应考虑所有可能的状态,售货机内钱币的数量,共有七个状态: S0:投币时,售货机内没有硬币 S1: 投币时,售货机内已有 5 角 S2: 投币时,售货机内已有 1 元 S3:投币时,售货机内已有 1 元5 角 S4:投币时,售货机内已有 2 元 硬币输入单元 找零分发单元 饮料分发单元 销售控制 单元 w jin yyin sell wjout clk reset S5:投币时,售货机内已有2 元5 角 S6:投币时,售货机内已有3 元 说明:箭头上的参数表示输入信号:wjin yyin 圈里的参数表示:状态/sell wjout 2
状态编码: S0=3`b000; S1=3`b001; S2=3`b011; S3=3`b010; S4=3`b110; S5=3`b111; S6=3`b101: 3.用Verilog_HDL 对状态转换图进行描述 描述方式:将CS 、NS、OL 混合描述
销售控制单元的Verilog_HDL 程序: module auto_sell(wjin,yyin,clk,reset,sell,wjout); S6/11 S0/00 S5/10 S2/00 S3/00 S4/00 S1/00 0101100 1 10100110101010 01input clk,res