【正文】
w 為低電平, col 為高電平的時候,相應的點才可 以亮。 2)火力調節(jié) 如果 fireDown 出現(xiàn)上升沿的時候,火力下調 如果 fireUp 出現(xiàn)上升沿的時候,火力上調 3)倒計時調節(jié) 每當 timeset 出現(xiàn)上升沿的時候,將會改變數碼管的較高兩位, 5103060,然后繼續(xù)回到 5循環(huán)。 六、故障及問題分析 1. 【問題】剛開始點陣顯示不了。思路都檢查了好多遍。一直以為是倒計時部分寫錯了,花費了好多時間。 【解決方案】也有改過代碼,但是一直沒有成功。第一次實驗,老師讓我們畫流程圖,一點一點的去理思路。 第三次實驗的時候,發(fā)現(xiàn)我的數碼管顯示電路加上就開始出錯。后來又一點點的改代碼,一點點的去 驗證。 之后又花了點時間,處理了一些小細節(jié)。沒有分塊,每一個問題,解決的時候都很困難。很多時候都是要聯(lián)系實際的。 總得來說,實驗還是成功的,遇到了好多問題,也有讓我焦頭爛額的時候。 USE 。 烹飪模式選擇 fireUp: IN STD_LOGIC。 開關 row,col: OUT STD_LOGIC_VECTOR(7 DOWNTO 0)。 電源指示燈控制 beef: OUT STD_LOGIC)。 TYPE state_type2 IS (f0,f1,f2,f3,f4)。 SIGNAL timemodel: STD_LOGIC_VECTOR(1 DOWNTO 0)。 200Hz 時鐘信號 SIGNAL COUNT2: INTEGER RANGE 0 TO 249999。 倒計時結束 SIGNAL setge: INTEGER RANGE 0 TO 9。 signal temp2 : std_logic。 SIGNAL fun: STD_LOGIC。 signal shi:INTEGER RANGE 0 TO 9。 end if。139。139。039。 end if。039。) THEN beef=beef1。shi=shi1。 END IF。 END PROCESS p2。) THEN IF modelSel=39。 ELSIF (power=39。) THEN led=39。 END IF。139。 or finish=39。 IF(led=39。139。 ELSE state=s0。 and temp2=39。 END IF。039。 WHEN s3 = IF(modelSel=39。) THEN state=s4。139。 ELSE state=s4。 END IF。EVENT AND clk=39。) THEN row=11111111。 row=01111111。 WHEN 2=fun1_tmp3=3。 col=00100100。 row=11110111。 WHEN 6=fun1_tmp3=7。 col=00000000。 col=00000000。 row=10111111。 WHEN 3=fun1_tmp3=4。 col=00010000。 row=11111011。 WHEN others=fun1_tmp3=0。 WHEN s2= B CASE fun1_tmp3 IS WHEN 0=fun1_tmp3=1。 col=00011110。 row=11011111。 WHEN 4=fun1_tmp3=5。 col=00100010。 row=11111101。 END CASE。 WHEN 1=fun1_tmp3=2。 col=00010000。 row=11101111。 WHEN 5=fun1_tmp3=6。 col=00000000。 row=11111110。 row=01111111。 WHEN 2=fun1_tmp3=3。 col=00001000。 row=11110111。 WHEN 6=fun1_tmp3=7。 col=00000000。 END IF。EVENT AND clk = 39。 IF(power=39。)THEN fire=f0。) THEN IF(state=s2) THEN fire=f0。 and temp3=39。139。 ELSE fire =f0。 AND temp3=39。039。 ELSE fire =f1。 AND temp3=39。039。 ELSE fire =f2。 AND temp3=39。039。 ELSE fire =f3。 AND temp3=39。039。 ELSE fire =f4。 END IF。EVENT AND clk = 39。139。039。 else pre_time=t0。 WHEN t1 = IF(timeset=39。) THEN pre_time=t2。beef1=39。139。beef1=39。039。 and temp1=39。139。 END IF。)THEN pre_time=t3。 END PROCESS p8。EVENT AND clk = 39。or jump=1)THEN fun=39。 else sig=39。139。139。setshi=0。setshi=3。 ELSIF fun=39。 WHEN s1=setge=0。 WHEN s3=setge=0。 END CASE。 END IF。 VARIABLE o: INTEGER RANGE 0 TO 1。) THEN IF (led=39。 CASE shi IS 十位顯示 WHEN 0 = time1=0111111。 WHEN 4 = time1=1100110。 WHEN 8 = time1=1111111。 WHEN 1 =scan=101111。 WHEN 3 = time1=1001111。 WHEN 7 = time1=0000111。i:=2。1 WHEN f2 =time1=0000110。i:=3。5 WHEN f2 =time1=0000110。 i:=4。 WHEN OTHERS =scan=111110。 END IF。