自动售货机VHDL程序 (1)自动售货机VHDL程序如下:--文件名:。--功能:货物信息存储,进程控制,硬币处理,余额计算,显示等功能。--说明:显示的钱数coin的以5角为单位。--最后修改日期:。libraryieee;;;;entityPL_auto1isport(clk:instd_logic; --系统时钟 set,get,sel,finish:instd_logic; --设定、买、选择、完成信号 coin0,coin1:instd_logic; --5角硬币、1元硬币 price,quantity :instd_logic_vector(3downto0); --价格、数量数据 item0,act:outstd_logic_vector(3downto0); --显示、开关信号 y0,y1:outstd_logic_vector(6downto0); --钱数、商品数量显示数据 act10,act5 :outstd_logic); --1元硬币、5角硬币endPL_auto1;architecturebehavofPL_auto1istype ram_typeisarray(3downto0)ofstd_logic_vector(7downto0);signalram:ram_type; --定义RAMsignalitem:std_logic_vector(1downto0); --商品种类signalcoin:std_logic_vector(3downto0); --币数计数器signalpri,qua:std_logic_vector(3downto0); --商品单价、数量signalclk1:std_logic; --:process(set,clk1)variablequan:std_logic_vector(3downto0);begin ifset='1'thenram(conv_integer(item))<=price&quantity;act<="0000"; --把商品的单价、数量置入到RAM elsifclk1'eventandclk1='1'then act5<='0';act10<='0'; ifcoin0='1'then ifcoin<"1001"thencoin<=coin+1; --投入5角硬币,coin自加1 elsecoin<="0000"; endif; elsifcoin1='1'
自动售货机vhdl程序 来自淘豆网m.daumloan.com转载请标明出处.