关键词不能为空

当前您在: 主页 > 英语 >

HDL(Verilog)课程设计报告(自动售货机)

作者:高考题库网
来源:https://www.bjmy2z.cn/gaokao
2021-02-19 06:17
tags:

-

2021年2月19日发(作者:email是什么)


Verilog HDL


课程设计报告























称:基于


Verilog HDL


的自动售货机










:

















:信科


12-1











:吴涛















第一章



系统设计



1.1



系统设计



(1)

用四个发光二极管分别模拟售出价值为


5


角、


1


元、


1.5


元和


2


元的小商品,购买


者可以通过开关选择任意一 种标价中的小商品。



(2)


灯亮时表示该小商品售出。


< /p>


(3)


用开关分别模拟


5


角、


1


元硬币和


5

< p>
元纸币投入,


可以用几只发光二极管


(

< p>
或数码管


)


分别代表找回剩余的硬币。

< p>


(4)


每次只能售出一种小商品,当所投硬币达 到或超过购买者所选面值时,售出货物并


找回剩余的硬币,回到初始状态;



(5)


当所投硬币值不足面值时,可通过一个复位 键退回所投硬币,回到初始状态。



第二章



详细设计



2.1



自动售货机状态描述



判断开关被按下 的个数


N


。若


N>=2


表示所选本次选择无效,返回初始状态;若


N=1


则显 示所选商品,并继续执行下面的流程。


3


个开关分别代表三种商 品。


4


个开关分别代表


投入

< p>
0.5


元,


1


元,


2


元,


5


元,统计投 入总额。投入总额与商品价格做比较,如果总额


<


< p>
品价格,退钱并返回初始状态如果总额


>=


商品价 格,则继续执行下面的程序。找零


=


总额


-


商品价格,数码管显示找零金额。状态图如图


2.1


所示:



2.2



详细状态描述



2.2.1


初始状态



各变量都设置为零,按下< /p>


rst


键后,一切恢复到初始状态。




2.2.2


选商品状态



分别有价格为

< p>
0.5


元、


1


元、


1.5


元和


2


元的商 品,每次选择商品前,设置一个标志位


btn_sell


表示选 择商品状态。此自动售货机每一次售货时只能一次选择一种商品,当同时选


择两种以上时 ,选择商品无效,数码管显示清零,重新进行商品选择。选择商品后,数码管


显示所选商 品价格。




2.2.3


投币状态



当选好商品后,开始投币。 同样有一标志位


btn_price


表示投币金额。投币口只接 受三


种面值的钱币


0.5


元、


1


元和


5


元,可以同时 投入多种面值钱币。投完币后,先有一个确认


买商品的过程,


若 投了币但又不购买商品了,


就将全部投币金额退回;


若确认购买 商品,则


进入下一状态——找零状态。




2.2.4


找零状态



投完币,

< br>并确认购买商品后,


进入找零状态。


首先要将所投的金额 与所选商品的价格做


比较,若所投金额小于商品价格,则退回所投钱币;若大于等于商品 价格,则两者做差,得


到需要找零的钱。



第三章



软件设计



3.1


程序总流程图




3.2


程序



module seller(clk,rst,dis_mony,btn_ok,b tn_mon,btn_sell,led_warn,led,beep);


input clk,rst,btn_ok;


input [2:0] btn_mon;//


选择放入的钱



input [3:0] btn_sell;//


选择商品< /p>


bbt_5,gz_10,kqs_15,kl_20


output [3:0] led;//led_5,led_10,led_15,led_20


output led_warn;//


钱不足,指示灯



output [10:0] dis_mony;//


数码管 显示投入面值,


dia_mony[10:8]=com


位选< /p>


,dis_mony[7:0]=



码< /p>



output beep;


integer r;


reg clk_500Hz;


reg [3:0] led;//led_5,led_10,led_15,led_20


reg led_warn;//


警告放入钱不足



reg [10:0] dis_mony;


reg [31:0] counter;


reg [9:0] price,price_all;


reg [1:0] flag = 2'b00;//


数码管显示标志位



reg beep=0;


parameter COUNT1 = 25'd10000;


/*


分频使数码管显示稳定


*/


always @ (posedge clk)












begin



if(counter== 0)




begin





counter <= COUNT1;




clk_500Hz <= ~clk_500Hz;




end



else




counter <= counter-1;



end





always @(negedge rst or posedge clk)






























begin


if (rst==0)



begin




led = 4'b0000;//LED






price_all = 0;//


价格清零





led_warn = 0;




price = 0;




beep = 0;



end


else



begin/*


三种面值共


8


种组合


*/




case(btn_mon)




3'b001:begin price_all = 5;end




3'b010:begin price_all = 10;end




3'b100:begin price_all = 50;end




3'b011:begin price_all = 15;end




3'b101:begin price_all = 55;end




3'b110:begin price_all = 60;end




3'b111:begin price_all = 65;end




default:begin price_all = 0;end




endcase







case(btn_sell)




4'b0001:begin price = 5;






end





4'b0010:begin price = 10;






end




4'b0100:begin price = 15;

-


-


-


-


-


-


-


-



本文更新与2021-02-19 06:17,由作者提供,不代表本网站立场,转载请注明出处:https://www.bjmy2z.cn/gaokao/666848.html

HDL(Verilog)课程设计报告(自动售货机)的相关文章

  • 爱心与尊严的高中作文题库

    1.关于爱心和尊严的作文八百字 我们不必怀疑富翁的捐助,毕竟普施爱心,善莫大焉,它是一 种美;我们也不必指责苛求受捐者的冷漠的拒绝,因为人总是有尊 严的,这也是一种美。

    小学作文
  • 爱心与尊严高中作文题库

    1.关于爱心和尊严的作文八百字 我们不必怀疑富翁的捐助,毕竟普施爱心,善莫大焉,它是一 种美;我们也不必指责苛求受捐者的冷漠的拒绝,因为人总是有尊 严的,这也是一种美。

    小学作文
  • 爱心与尊重的作文题库

    1.作文关爱与尊重议论文 如果说没有爱就没有教育的话,那么离开了尊重同样也谈不上教育。 因为每一位孩子都渴望得到他人的尊重,尤其是教师的尊重。可是在现实生活中,不时会有

    小学作文
  • 爱心责任100字作文题库

    1.有关爱心,坚持,责任的作文题库各三个 一则150字左右 (要事例) “胜不骄,败不馁”这句话我常听外婆说起。 这句名言的意思是说胜利了抄不骄傲,失败了不气馁。我真正体会到它

    小学作文
  • 爱心责任心的作文题库

    1.有关爱心,坚持,责任的作文题库各三个 一则150字左右 (要事例) “胜不骄,败不馁”这句话我常听外婆说起。 这句名言的意思是说胜利了抄不骄傲,失败了不气馁。我真正体会到它

    小学作文
  • 爱心责任作文题库

    1.有关爱心,坚持,责任的作文题库各三个 一则150字左右 (要事例) “胜不骄,败不馁”这句话我常听外婆说起。 这句名言的意思是说胜利了抄不骄傲,失败了不气馁。我真正体会到它

    小学作文