【正文】
非常感謝學(xué)校給安排這樣一個(gè)機(jī)會(huì),讓我們真正的學(xué)以致用,不再是單純的理論知識(shí)。在制作項(xiàng)目的具體過程中總體還算順利,之間也會(huì)遇到一些小的問題但是也都能通過自己分析查找得以解決。在重新學(xué)習(xí)這門課程的過程中也遇到了不少的問題,比如有些功能語(yǔ)句的使用、端口的定義、有關(guān)的語(yǔ)法問題等等。雖然 EDA 課程結(jié)束到做 EDA 課程設(shè)計(jì)之間隔了整整一個(gè)學(xué)期的間隔,但是并沒有影響我學(xué)習(xí) EDA 技術(shù)的熱情。按鈕按一次計(jì)時(shí)暫停,再按一次繼續(xù)計(jì)時(shí),當(dāng)清零按鈕按下全部計(jì)時(shí)結(jié)果都變?yōu)榱?。最后沒辦法把分鐘部分單獨(dú)拿出來進(jìn)行調(diào)試,才發(fā)現(xiàn) 是引腳鎖定時(shí)高位跟低位弄反了。然后就檢查了程序,做了一遍軟件波形仿真發(fā)現(xiàn)波形正確。 3 號(hào)位置 4 號(hào)位置 5 硬件 調(diào)試 與結(jié)果 分析 調(diào)試步驟: ( 1) 按照鎖定的引腳位置及功能作用連接線路。 D、 CLR 清零仿真波形如圖六所示 : 圖六 分析 :當(dāng)程序運(yùn)行到四號(hào)位置之后,外加了一個(gè) CLR的清零信號(hào),可從波形圖上看出添加清零信號(hào)之后所有的結(jié)果都被清零然后重新開始計(jì)時(shí)。 C、進(jìn)位仿真波形如圖五所示: 圖五 分析 :當(dāng)程序運(yùn)行到達(dá) 3 號(hào)位置,也就是最小單位到達(dá) 9之后,可以從波形圖中看出最小單位產(chǎn)生進(jìn)位十位變?yōu)?1,個(gè)位重新開始計(jì)數(shù)。 B、 Clk 第二 次按下的仿真 波 形 如圖 四所示: 圖四 1 號(hào)位置 2號(hào)位置 分析 : 當(dāng)時(shí)間到達(dá) 2 號(hào)位置之后又加的一個(gè) KEY 脈沖,此后計(jì)數(shù)開始繼續(xù)。 仿真波形圖如下 : A、 Clk 第一次按下的仿真 波形 如圖三 所示 : 圖三 分析 :此圖加上脈沖之后開始計(jì)數(shù)當(dāng)?shù)酱笠惶?hào)位置后增加了一個(gè) KEY 脈沖,此后計(jì)數(shù)暫停。 END ONE。 END CASE。 WHEN 1001=X=1101111。 WHEN 0111=X=0100111。 WHEN 0101=X=1101101。 WHEN 0011=X=1001111。 WHEN 0001=X=0000110。 END DISPLAY。 ENTITY DISPLAY IS PORT(D:IN STD_LOGIC_VECTOR(3 DOWNTO 0)。 e、 BCD/七段譯碼器模塊程序 : LIBRARY IEEE。 ` END PROCESS。 WHEN OTHERS=NULL。 WHEN 101=OUT1=MH。 WHEN 100=OUT1=ML。 WHEN 011=OUT1=SH。 WHEN 010=OUT1=SL。 WHEN 001=OUT1=MSH。 PROCESS(Q) BEGIN CASE Q IS WHEN 000=OUT1=MSL。 END IF。 ELSE Q=000。139。 ARCHITECTURE ONE OF shu_xuan IS BEGIN PROCESS(CLK) BEGIN IF CLK39。 SEG:OUT STD_LOGIC_VECTOR(5 DOWNTO 0))。 Q:BUFFER STD_LOGIC_VECTOR(2 DOWNTO 0)。 ENTITY shu_xuan IS PORT(CLK:IN STD_LOGIC。 USE 。 END ONE。 END IF。 END IF。 C10=39。 ELSE Q=Q+39。 C10=39。139。139。 ELSIF CLK39。 C10=39。139。 END fen_pin。 Q:BUFFER STD_LOGIC_VECTOR(3 DOWNTO 0)。 USE 。 c、分頻模塊程序 : LIBRARY IEEE。 END PROCESS。 END IF。 ELSE C6=39。 THEN IF Q=0101 THEN