Verilog數(shù)字電子技術(shù)-洗衣機(jī)控制器_第1頁
Verilog數(shù)字電子技術(shù)-洗衣機(jī)控制器_第2頁
Verilog數(shù)字電子技術(shù)-洗衣機(jī)控制器_第3頁
Verilog數(shù)字電子技術(shù)-洗衣機(jī)控制器_第4頁
Verilog數(shù)字電子技術(shù)-洗衣機(jī)控制器_第5頁
已閱讀5頁,還剩10頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、2012學(xué)年度第一學(xué)期集成電路課程設(shè)計(jì)智能洗衣機(jī)控制器院 系: 電子信息工程學(xué)院專 業(yè): 集成電路設(shè)計(jì)與集成系統(tǒng)班 級: 09集成姓 名: 趙春齊 李朝綱學(xué) 號: 20091785 20091828指導(dǎo)教師: 蘇林一、課程設(shè)計(jì)名稱智能洗衣機(jī)控制器的設(shè)計(jì)二、設(shè)計(jì)內(nèi)容及要求 設(shè)計(jì)一個(gè)智能洗衣機(jī)控制器,能夠?qū)崿F(xiàn)洗衣,漂洗和脫水的功能。要求能夠使用按鍵模擬對洗衣機(jī)的控制,能夠設(shè)置工作模式,為了便于觀察,將洗衣機(jī)設(shè)定的工作模式(1-5和整個(gè)過程所剩的工作時(shí)間用數(shù)碼管顯示出來(時(shí)間分辨率為1分鐘 ,能夠?qū)⑾匆聶C(jī)當(dāng)前所處的狀態(tài)(注水,洗衣,排水,甩干)用發(fā)光管或者數(shù)碼管顯示出來。【模式1】: 洗衣模式強(qiáng)力洗

2、( 洗衣30分鐘)【模式2】 :洗衣模式普通洗 (洗衣20分鐘)【模式3】 :洗衣模式輕柔洗(洗衣10分鐘)【模式4】 :漂洗模式【模式5】 :甩干模式注:在以上5個(gè)模式中,每次注水1分鐘,漂洗5分鐘,排水1分鐘, 甩干1分鐘,模式13的洗衣時(shí)間如上所示,具體的洗衣步驟如下:【模式13】:注水->洗衣->排水->甩干->注水->漂洗->排水->甩干->注水->漂洗->排水->甩干?!灸J?】:注水->漂洗->排水->甩干->注水->漂洗->排水->甩干?!灸J?】:甩干?!疽蟆浚簩?shí)現(xiàn)邏

3、輯控制過程,可以選擇性的加入注水口無水報(bào)警等人性化的狀態(tài)提示,操作完畢使用蜂鳴器鳴叫兩秒提示。 畫出洗衣機(jī)控制器的狀態(tài)機(jī),寫出狀態(tài)編碼方案。 用Verilog 語言對設(shè)計(jì)進(jìn)行描述,設(shè)計(jì)一個(gè)測試方案,并能夠下載到實(shí)驗(yàn)板上調(diào)試成功。 寫出設(shè)計(jì)性實(shí)驗(yàn)報(bào)告,并打印各層次的源文件和仿真波形,然后作簡要說明。 并談?wù)劥舜螌?shí)驗(yàn)的收獲、感想及建議三、系統(tǒng)設(shè)計(jì)1 系統(tǒng)框圖與說明本次設(shè)計(jì)的重點(diǎn)在于智能控制器狀態(tài)之間轉(zhuǎn)換的條件和關(guān)系,并且在此基礎(chǔ)上輸出相應(yīng)的顯示。圖一 系統(tǒng)結(jié)構(gòu)框圖Pause warn Mode1Mode2Mode3Mode4Mode5輸入端口描述Reset :復(fù)位Mode1-5:模式選擇Pause

4、 :暫停啟動(dòng)Warn :報(bào)警2狀態(tài)轉(zhuǎn)換圖洗衣機(jī)共分為5個(gè)模式,4個(gè)狀態(tài)。模式分別為MODE1強(qiáng)力洗,MODE2普通洗,MODE3輕柔洗,MODE4漂洗,MODE5甩干;狀態(tài)分別為state0注水,state1洗衣,state2排水,state3甩干。另外,為使洗衣機(jī)增添功能,添加了兩個(gè)個(gè)狀態(tài),一個(gè)為初始狀態(tài)state00,另一個(gè)為cloze ,即為洗衣完成時(shí)的狀態(tài)。圖二 狀態(tài)轉(zhuǎn)換圖3 輸入輸出設(shè)計(jì)(按鍵,數(shù)碼管,發(fā)光管,蜂鳴器)控制器設(shè)定有8個(gè)按鍵,其中5個(gè)為選擇模式的按鈕,另外一個(gè)則是控制器的復(fù)位鍵reset 。當(dāng)按下reset 的 時(shí)候,控制器回復(fù)到初始狀態(tài)。還有一個(gè)是表示無水時(shí)的傳感信號

5、,最后一個(gè)則是增加的控制洗衣機(jī)暫停和再啟動(dòng)的按鍵。輸出數(shù)碼管也有6個(gè),其中兩個(gè)分別顯示控制器當(dāng)前狀態(tài)和模式,另外四個(gè)用來表示當(dāng)前狀態(tài)所剩余時(shí)間。發(fā)光二極管設(shè)定了兩個(gè),其中一個(gè)表示洗衣機(jī)水箱無水時(shí)的報(bào)警顯示,另一個(gè)是表示洗衣完成時(shí)的顯示。相應(yīng)的,在這兩個(gè)發(fā)光管亮起時(shí),蜂鳴器發(fā)出聲音。四、系統(tǒng)仿真1 各工作模式仿真波形 圖三 mode1狀態(tài)轉(zhuǎn)換圖四 mode2狀態(tài)轉(zhuǎn)換 圖五 mode3狀態(tài)轉(zhuǎn)換 圖六 mode4狀態(tài)轉(zhuǎn)換 圖七 mode5狀態(tài)轉(zhuǎn)換 五、實(shí)驗(yàn)程序moduleauto_con(clk,clk2,clr,out,sel,mode,warn,speak,ts1,ts2,tm1,tm2,LED

6、W,LEDF;input clk,clr,clk2,warn;input4:0 sel;output3:0 out;output speak,LEDW,LEDF;output3:0 mode;reg3:0 mode;reg LEDW,LEDF;reg3:0 out;reg3:0 state;reg1:0 step;output3:0 ts1,ts2,tm1,tm2;reg3:0 ts1,ts2,tm1,tm2;wire fin;wire speak;reg flag;parameter state0=4'b0001,state1=4'b0010, /*狀態(tài)編碼,采用二進(jìn)制編碼方

7、式*/state2=4'b0011,state3=4'b0100,state11=4'b0110,state12=4'b0111,state13=4'b1000,cloze=4'b0101,state00=4'b0000;assign fin=(ts2=0 & (ts1=0 & (tm2=0 & (tm1=0;assign speak=(warn|(state=cloze&clk2; /*蜂鳴器信號*/ always (posedge clk /*該進(jìn)程定義起始方式*/begincase(sel5'

8、b00001:mode<=4'b0001; /*模式編碼,采用二進(jìn)制編碼方式*/5'b00010:mode<=4'b0010;5'b00100:mode<=4'b0011;5'b01000:mode<=4'b0100;5'b10000:mode<=4'b0101;default: mode<=4'b0000;endcaseif(state=cloze LEDF <= 1'b1; /*洗衣完成時(shí)發(fā)光管發(fā)光*/else LEDF <= 1'b0;LEDW

9、<= warn; /*無水報(bào)警時(shí)發(fā)光管發(fā)光*/beginif(ts2!=0 /*該部分控制倒計(jì)時(shí)*/ ts2 <= ts2 - 4'd1;else if(ts2=0 & ts1 != 0begints2 <=4'd9;ts1 <= ts1-4'd1;endelse if(ts2=0 & ts1=0 & tm2!=0begints2 <= 4'd9;ts1 <= 4'd5;tm2 <= tm2 - 4'd1;endelse if(ts2=0 & ts1=0 & tm2

10、=0 & tm1!=0begints2 <= 4'd9;ts1 <= 4'd5;tm2 <= 4'd9;tm1 <= tm1 - 4'd1;endendif(clr beginstate<=state00;flag<=1'b0;step<=2'b00;tm1<=0;tm2<=0;ts1<=0;ts2<=0;endif(fincase(sel /*該進(jìn)程控制各模式狀態(tài)之間的轉(zhuǎn)換*/ 5'b00001:case(state /*MODE1的狀態(tài)轉(zhuǎn)換*/state00:b

11、egin tm1<=0;tm2<=0;ts1<=5;ts2<=9;state<=4'b0001;endstate0:beginif(flag=0begin tm1<=2;tm2<=9;ts1<=5;ts2<=9;flag<=1'b1; end else begin tm1<=0;tm2<=4;ts1<=5;ts2<=9; state<=4'b0010; end end 4'b0110:begin tm1<=0;tm2<=0;ts1<=5;ts2<=9

12、; state<=4'b0011; end 4'b0010:begin tm1<=0;tm2<=0;ts1<=5;ts2<=9; state<=4'b0011; end 4'b0011:begin tm1<=0;tm2<=0;ts1<=5;ts2<=9; state<=4'b0100; end 4'b0100:begin if(step=2'b10 state<=cloze; else begin tm1<=0;tm2<=0;ts1<=5;ts2&l

13、t;=9; state<=state0; step<=step+2'b1; end end default: state<=cloze; endcase 5'b00010:case(state /*MODE2的狀態(tài)轉(zhuǎn)換*/ state00:begin tm1<=0;tm2<=0;ts1<=5;ts2<=9; state<=4'b0001; end state0:begin if(flag=0 begin tm1<=1;tm2<=9;ts1<=5;ts2<=9; state<=4'b01

14、11; flag<=1'b1; end else begin tm1<=0;tm2<=4;ts1<=5;ts2<=9; state<=4'b0010;end 4'b0111:begin tm1<=0;tm2<=0;ts1<=5;ts2<=9; state<=4'b0011; end 4'b0010:begin tm1<=0;tm2<=0;ts1<=5;ts2<=9; state<=4'b0011; end 4'b0011:begin tm1&l

15、t;=0;tm2<=0;ts1<=5;ts2<=9; state<=4'b0100; end 4'b0100:begin if(step=2'b10 state<=cloze; else begin tm1<=0;tm2<=0;ts1<=5;ts2<=9; state<=state0; step<=step+2'b1; end end default: state<=cloze; endcase 5'b00100:case(state /*MODE3的狀態(tài)轉(zhuǎn)換*/ state00:b

16、egin tm1<=0;tm2<=0;ts1<=5;ts2<=9; state<=4'b0001; end state0:begin if(flag=0 begin tm1<=0;tm2<=9;ts1<=5;ts2<=9; state<=4'b1000; flag<=1'b1; end else begin tm1<=0;tm2<=4;ts1<=5;ts2<=9; state<=4'b0010; end end 4'b1000:begin tm1<=0;

17、tm2<=0;ts1<=5;ts2<=9; state<=4'b0011; end 4'b0010:begin tm1<=0;tm2<=0;ts1<=5;ts2<=9;end 4'b0011:begin tm1<=0;tm2<=0;ts1<=5;ts2<=9; state<=4'b0100; end 4'b0100:begin if(step=2'b10 state<=cloze; else begin tm1<=0;tm2<=0;ts1<=5;

18、ts2<=9; state<=state0; step<=step+2'b1; end end default: state<=cloze; endcase 5'b01000:begin /*MODE4的狀態(tài)轉(zhuǎn)換*/ case(state 4'b0000:begin tm1<=0;tm2<=0;ts1<=5;ts2<=9; state<=state+4'b0001; end 4'b0001:begin tm1<=0;tm2<=4;ts1<=5;ts2<=9; state<

19、=state+4'b0001; end 4'b0010:begin tm1<=0;tm2<=0;ts1<=5;ts2<=9; state<=state+4'b0001; end 4'b0011:begin tm1<=0;tm2<=0;ts1<=5;ts2<=9; state<=state+4'b0001; end 4'b0100: begin if(flag=0 begin tm1<=0;tm2<=0;ts1<=5;ts2<=9; state<=4'

20、b0001; flag<=flag+1'b1; end else state<=cloze;enddefault:state<=cloze;endcaseend5'b10000:begin /*MODE5的狀態(tài)轉(zhuǎn)換*/case(state4'b0000:begin tm1<=0;tm2<=0;ts1<=5;ts2<=9;state<=4'b0100;end4'b0100:begin state<=cloze;enddefault state<=cloze;endcaseenddefault: s

21、tate<=state00; /*default語句,避免鎖存器的產(chǎn)生*/ endcaseendendmodule六、實(shí)驗(yàn)總結(jié)1 心得體會(huì)本學(xué)期電子課程設(shè)計(jì)以老師多個(gè)命題,學(xué)生自由選擇命題的形式進(jìn)行。趣味性強(qiáng),同時(shí)也可以學(xué)到很多東西。我們認(rèn)為,在這學(xué)期的課設(shè)中,在收獲知識的同時(shí),還收獲了閱歷,收獲了成熟,在此過程中,我們通過查找大量資料,請教老師,以及不懈的努力,不僅培養(yǎng)了獨(dú)立思考、動(dòng)手操作的能力,在各種其它能力上也都有了提高。更重要的是,在課設(shè)過程中,我們學(xué)會(huì)了很多學(xué)習(xí)的方法。而這是日后最實(shí)用的,真的是受益匪淺。要面對社會(huì)的挑戰(zhàn),只有不斷的學(xué)習(xí)、實(shí)踐,再學(xué)習(xí)、再實(shí)踐。我們采用Verilog 語言作為執(zhí)行核心,通過了種從無到有,從不會(huì)到自由運(yùn)用的過程。在某種意義上說,這是一種鍛煉,一種知識的積累,能力的提高。完全可以把這個(gè)當(dāng)作基礎(chǔ)東西,只有掌握了這些最基礎(chǔ)的,才可以更進(jìn)一步,取得更好的成績。很少有人會(huì)一步登天吧。永不言棄才是最重要的。而且,這對于我們的將來也有很大的幫助。以后,不管有多苦,我想我們都能變苦為樂,找尋有趣的事情,發(fā)現(xiàn)其中珍貴的事情。就像中國提倡的艱苦奮斗一樣,我們都可以在實(shí)驗(yàn)結(jié)束之后變的更加成熟,會(huì)面對需要面對的事情

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論