乒乓球游戏机 1 .设计要求: ( 1 )设计一个甲、乙两人的乒乓球游戏机。( 2 )甲、乙两人按乒乓球游戏规则来操作各自的开关。( 3 )用 8 个发光二极管排成一行代表乒乓球台,中间两个是网,最边上的发光二极管亮表示发球方。( 4 )球移动的速度为 。( 5 )发 3 个球后换发球。( 6 )用 4 个数码管分别显示甲、乙两人的分数, 11 个球为 1 局。 2 .可选器件: EPM7128S ,共阴极七段数码管,发光二极管,开关,电阻和电容。 3 .总体框图: 时钟输入分频电路球台控制电路译码显示防抖动电路图乒乓球游戏机总体框图 4 .源程序( 1 )上层模块( 2 )下层模块 1 )桌台模块 libray ieee; use ; use ; use ; entity tennis is port(restart :in std_logic; clk1 :in std_logic; accep1,accep2 :in std_logic; table :out std_logic_vecter(1 to 8); score11 :out std_logic_vecter(1 to 7); score12 :out std_logic_vecter(1 to 7); score21 :out std_logic_vecter(1 to 7); score22 :out std_logic_vecter(1 to 7); end tennis; architecture rt1 of tennis is type ttennis is(waitfor, begin1,to2,allowreceive2,begin2,to1, allowreceive1); signal state :ttennis; signal a:integer range 0to8; signal scor1,score2:std_logic_vector(1to4):="0000"; signal send:std_logic; signal m:integer range 0to3; component yima is port(bcdin:in std_logic_vecter(1 to 4); bcdout1:out std_logic_vecter(1 to 7); bcdout2: out std_lsogic_vecter(1 to 7); ponent begin process(clk1) begin if clk1'event and clk1='1'then if(m=3)then m<=0; send<=not send; end if; if scor1="1011"orscor2="
乒乓球游戏机 来自淘豆网m.daumloan.com转载请标明出处.