【正文】
00000100。 when 40 = D=00000100。 when 38 = D=00001000。 when 36 = D=00000100。 when 34 = D=00000010。 when 32 = D=00000010。 when 30 = D=00000001。 when 28 = D=00000001。 when 26 = D=00010000。 when 24 = D=00000100。 when 22 = D=00000010。 when 20 = D=00000010。 when 18 = D=00000100。 when 16 = D=00010000。 when 14 = D=00010000。 when 12 = D=00010000。 when 10 = D=00000100。 when 8 = D=00000001。 when 6 = D=00000010。 when 4 = D=00001000。 when 2 = D=00000100。 then ――啟動自動播放后,在5HZ的脈沖下,每來一個脈沖相應(yīng)播放一個音符 case count0 is when 0 = D=00010000。 musicplay:process(C,B,A) begin if B=39。 end if?!? else count0=count0+1。139。 half:process(clk2) begin if(clk239。 end if。count3=0。 elsif count3=10000 then clk2=39。 if count3=5000 then clk2=39。139。 elsif(C39。clk2=39。039。 記錄自動播放的樂曲的脈沖并控制播放 signal count3:integer range 0 to 10000。architecture music of autoplay is signal clk2:std_logic。 D:out std_logic_vector(7 downto 0))。entity autoplay is port(A:in std_logic_vector(7 downto 0)。use 。自動播放模塊:library ieee。 G3:control port map(A=clk1,B=tone0,C=play)?! 。粽{(diào)發(fā)生器的輸出和數(shù)控分頻部分的輸入,表示音符的頻率