【正文】
信號(hào),輸入到減法模塊,時(shí)序電路模塊,實(shí)時(shí)顯示模塊。在設(shè)計(jì)的時(shí)候,如果特別要注意 各個(gè)模塊之間接口的設(shè)計(jì),要是接口不對(duì),模塊之間就沒法實(shí)現(xiàn)組裝。通過在網(wǎng)上進(jìn)行各種資料的查詢,也發(fā)現(xiàn)了其實(shí) FPGA 的設(shè)計(jì)具有較好的前景,其功能的強(qiáng)大和設(shè)計(jì)方法的簡單可靠。我雖然以前在試驗(yàn)的時(shí)候使用過 Quartus I I 這個(gè)軟件,但用的時(shí)間畢竟不長,對(duì)其不太熟練,經(jīng)過這次做課設(shè)我對(duì)這個(gè)軟件運(yùn)用熟練很多,這對(duì)以后的學(xué)習(xí)一定有很大的幫助。關(guān)于這個(gè)洗衣機(jī)控制器,就是用模塊化層次化的設(shè)計(jì)方法進(jìn)行系統(tǒng)層的設(shè)計(jì),這樣分解下來,設(shè)計(jì)會(huì)更容易點(diǎn),思路也比較簡單。然后用戶可以給出開始信號(hào),系統(tǒng)開始運(yùn)轉(zhuǎn)并開始從預(yù)設(shè)時(shí)間倒計(jì)時(shí),重復(fù)“正傳 暫停 反轉(zhuǎn) 暫停”的循環(huán)過程直至剩余時(shí)間變?yōu)榱?,剩余時(shí)間為零時(shí), time_over 指示報(bào)警信號(hào)。039。039。039。choose(0)=out_2。此模塊較為簡單 ,設(shè)計(jì)基本沒什么難度。139。039。 wait_time:=0。039。039。 end analyse。 end case。 when 0011=temp=1111001。039。) then minute=39。 signal bcd:std_logic_vector(3 downto 0)。 use 。 end if。 time_remain(3 downto 0)=1001。 time_second:=59。event and clk=39。 use 。 end if。 when 0100=p1=00000100。 architecture settime of settime is signal p1:std_logic_vector(7 downto 0)。 圖 1 時(shí)間預(yù)置編碼寄存模塊 settime 仿真圖 圖 2 時(shí)間預(yù)置編碼寄存模塊仿真圖 用 K K K K4 給 time_input 輸入一個(gè)二進(jìn)制數(shù) 0111,讓 load 有效,輸出 time_set 為 00000111。 (二) 減法計(jì)數(shù)器電路( counter): 接收編碼之后的預(yù)置時(shí)間信息,向電機(jī)運(yùn)轉(zhuǎn)控制電路傳遞運(yùn)行信號(hào),并將預(yù)置時(shí)間信息和剩余時(shí)間信息發(fā)給數(shù)碼管顯示電路進(jìn)行實(shí)時(shí)顯示。 (五) 譯碼器( move): 接收電機(jī)運(yùn)行狀態(tài)信號(hào),譯碼后實(shí)時(shí)控制電機(jī)的正傳、反轉(zhuǎn)和暫停。 use 。139。 when 0111=p1=00000111。 end settime。 time_remain:buffer std_logic_vector(7 downto 0)。039。 else if(time_over=39。 time_remain(3 downto 0)=time_remain(3 downto 0)1。 end if。 clk:in std_logic。event and clk=39。139。 end if。 when 0110=temp=1011111。 圖 7 時(shí)序電路模塊 2 、仿真圖 . . 時(shí)序電路模塊 analyse 源程序 library ieee。 variable wait_time:integer:=0。 state:=39。) then if(wash_time=20) then if(wait_time=10) then wash_time:=0。 if (wash_time=20) then out_1=39。out_2=39。 end if。 entity move is port ( out_1,out_2:in std_logic。RUN=39。PAUSE=39。 when others=REV=39。RUN=out_1。由于掃描信號(hào)非常高,在我們看來,輸出在數(shù)碼管上的數(shù)字都是連續(xù)的兩位數(shù)字,由預(yù)置時(shí)間開始以一分鐘減一的速度遞減。 其次,這次課程設(shè)計(jì)讓我感受到了我對(duì)所學(xué)習(xí)的內(nèi)容是多么的不熟練,在編程的時(shí)候還要老是去翻書。具有較強(qiáng)的適應(yīng)能力和可移植性。