




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、數(shù)字電路與邏輯設(shè)計(jì)實(shí)驗(yàn)報(bào)告題目: 洗衣機(jī)控制器設(shè)計(jì) 一、洗衣機(jī)控制器要求設(shè)計(jì)制作一個(gè)全自動(dòng)洗衣機(jī)的控制器:_ 洗衣機(jī)的工作步驟為洗衣、漂洗和脫水三個(gè)過程,工作時(shí)間分別為:洗衣20秒,漂洗30 秒,脫水15 秒;_ 用一個(gè)按鍵實(shí)現(xiàn)洗衣程序的手動(dòng)選擇:A、單洗滌;B、單漂洗;C、單脫水;D、漂洗和脫水;E、洗滌、漂洗和脫水全過程;_ 用顯示器件顯示洗衣機(jī)的工作狀態(tài)(洗衣、漂洗和脫水),并倒計(jì)時(shí)顯示每個(gè)狀態(tài)的工作時(shí)間,全部過程結(jié)束后,應(yīng)提示使用者;_ 用一個(gè)按鍵實(shí)現(xiàn)暫停洗衣和繼續(xù)洗衣的控制,暫停后繼續(xù)洗衣應(yīng)回到暫停之前保留的狀態(tài);_ 選做:三個(gè)過程的時(shí)間有多個(gè)選項(xiàng)供使用者選擇。_ 選做:可以預(yù)約洗衣
2、時(shí)間。_ 選做:自擬其它功能。二、系統(tǒng)設(shè)計(jì)基本思想電路由模式選擇、計(jì)數(shù)器、報(bào)警模塊以及譯碼驅(qū)動(dòng)電路和數(shù)字顯示電路等模塊組成。1、模式選擇模塊五種洗衣模式可供用戶選擇,模式選擇模塊將用戶的選擇信息傳遞到控制模塊。2、減計(jì)數(shù)計(jì)數(shù)器模塊計(jì)數(shù)器洗衣以倒計(jì)時(shí)模塊的方式提示用戶當(dāng)前剩余的洗衣時(shí)間,該計(jì)數(shù)器能讀取不同的模值進(jìn)行計(jì)數(shù)。計(jì)時(shí)單位為一秒鐘。3、譯碼和數(shù)碼顯示電路譯碼和數(shù)碼顯示電路是將計(jì)時(shí)狀態(tài)直觀清晰地反映出來(lái),被人們的視覺器官所接受。顯示器件選用LED 七段數(shù)碼管。在譯碼顯示電路輸出的驅(qū)動(dòng)下,顯示出清晰、直觀的數(shù)字符號(hào)。4、報(bào)警模塊當(dāng)系統(tǒng)運(yùn)行到“報(bào)警”狀態(tài)時(shí),蜂鳴器將會(huì)報(bào)警,時(shí)間為5 秒。4、分頻
3、器模塊設(shè)計(jì)一個(gè)大小合適的分頻器使得系統(tǒng)能夠正確的實(shí)現(xiàn)一秒的計(jì)時(shí)。三、總體設(shè)計(jì)圖以及轉(zhuǎn)移圖流程圖示:狀態(tài)選擇開始信號(hào)輸入變量A為1YESNO進(jìn)行洗滌變量B為1YESNO進(jìn)行漂洗變量C為1YES進(jìn)行脫水NO完成洗衣后報(bào)警提示完成總體邏輯設(shè)計(jì)圖:控制器分頻器OSC時(shí)間計(jì)數(shù)器洗滌漂洗脫水譯碼時(shí)間顯示ClkClk1料庫(kù)Clk2T15 T20T25Cnt clr報(bào)警Pause 狀態(tài)選擇譯碼狀態(tài)轉(zhuǎn)移圖示:WAITA1進(jìn)行洗滌進(jìn)行漂洗A0B=1B0B1進(jìn)行脫水A0B=0C1C0完成洗衣報(bào)警提示管腳設(shè)計(jì)圖:仿真情況:簡(jiǎn)要說(shuō)明:本次仿真執(zhí)行的是第五個(gè)狀態(tài)即洗滌、漂洗和脫水全過程。通過此仿真可以發(fā)現(xiàn)當(dāng)輸出選擇模式信
4、號(hào)change時(shí),洗衣機(jī)模式開始發(fā)生變化。輸入第一個(gè)change信號(hào)的時(shí)候進(jìn)入單洗滌狀態(tài),輸入第二個(gè)change信號(hào)進(jìn)入單漂洗狀態(tài),輸入第三個(gè)change信號(hào)進(jìn)入了單脫水的狀態(tài),輸入第四個(gè)change信號(hào)進(jìn)入了脫水和漂洗的狀態(tài),當(dāng)輸入最后一個(gè)change信號(hào)的時(shí)候進(jìn)入洗滌、漂洗和脫水的全狀態(tài)。而在選擇每個(gè)狀態(tài)的同時(shí)時(shí)間信號(hào)(q0、q1、q2、q3、q4、q5、q6)也發(fā)生變化,顯示出每個(gè)狀態(tài)時(shí)的時(shí)間。而設(shè)定的led燈(cat0、cat1)則依次閃亮。當(dāng)start開始后change信號(hào)不再起作用,而系統(tǒng)進(jìn)入了運(yùn)行狀態(tài),時(shí)間開始逐秒變化。當(dāng)程序最終運(yùn)行結(jié)束后,進(jìn)入報(bào)警狀態(tài),sound開始顯示為高電
5、平,而時(shí)間均為0。(特別說(shuō)明:由于本實(shí)驗(yàn)分2次去做,管腳設(shè)定的時(shí)候進(jìn)行了新建工程,代碼粘貼過去的,實(shí)體名字取得和第二周驗(yàn)收時(shí)候不一致,不是其他原因。)四、代碼示例LIBRARY ieee;USE ieee.std_logic_1164.ALL;ENTITY xiyiji ISPORT(START: INSTD_LOGIC;PAUSE: INSTD_LOGIC;-暫停信號(hào)CLOCK: INSTD_LOGIC;Q: OUT STD_LOGIC_VECTOR(6 DOWNTO 0); -數(shù)碼管顯示信號(hào)CAT: OUTSTD_LOGIC_VECTOR(5 DOWNTO 0) -數(shù)碼管選通信號(hào)); EN
6、D xiyiji;ARCHITECTURE washer OF xiyiji ISSIGNAL STATE: STD_LOGIC_VECTOR(2 DOWNTO 0);SIGNAL MODE: STD_LOGIC_VECTOR(2 DOWNTO 0);SIGNAL TEMP: INTEGER RANGE 45 DOWNTO 0; -時(shí)間中間變量SIGNAL TIME: INTEGER RANGE 60 DOWNTO 0; -倒計(jì)時(shí)時(shí)間SIGNAL TMP: INTEGER RANGE 999 DOWNTO 0; -分頻變量SIGNAL MA: INTEGER RANGE 9 DOWNTO 0;
7、 -數(shù)碼管譯碼變量SIGNAL CLK: STD_LOGIC; -分頻時(shí)鐘輸出BEGINPROCESS(CLOCK)BEGINIF (CLOCK'EVENT AND CLOCK='1') THEN -分頻模塊TMP<=TMP + 1;IF (TMP=999) THENTMP<=0;CLK<= NOT CLK;END IF;END IF;END PROCESS;PROCESS (START,CLK,PAUSE,CHANGE)-洗衣控制進(jìn)程BEGINIF ( START = '0' ) THEN -開始前模式選擇模塊IF(CHANGE
8、9;EVENT AND CHANGE='1') THENCASE MODE ISWHEN "000"=>MODE<="001" WHEN "001"=>MODE<="010" WHEN "010"=>MODE<="100"WHEN "100"=>MODE<="110"WHEN "110"=>MODE<="111"WHEN
9、OTHERS=>MODE<="000"END CASE;END IF;STATE <= MODE;-選擇洗衣模式BUZZER <= '0'CASE STATE IS-設(shè)置模式時(shí)間以及中間變量的值WHEN "001" =>TEMP <= 0 ;TIME <= 20;WHEN "010" =>TEMP <= 0 ;TIME <= 25;WHEN "100" =>TEMP <= 0 ;TIME <= 15;WHEN "
10、110" =>TEMP <= 25 ;TIME <= 40;WHEN "111" =>TEMP <= 40 ; TIME <= 60;WHEN "000" =>TEMP <= 0 ;TIME <= 0;WHEN OTHERS =>TEMP<= 0 ; TIME<= 0;END CASE ;ELSE IF ( PAUSE = '0') THEN -設(shè)置暫停信號(hào)IF ( CLK'EVENT AND CLK = '1' AND TIME/=
11、0) THENTIME <= TIME - 1 ; -時(shí)間自減IF ( TIME=1 ) THENSTATE <="000"BUZZER<= '1'-蜂鳴信號(hào)啟動(dòng)ELSIF ( TIME = TEMP ) THEN -洗衣中模式的切換CASE STATE ISWHEN "111" =>STATE <= "110"TEMP <= 20;WHEN "110" =>STATE <= "100"TEMP <= 0;WHEN OTHER
12、S =>TEMP <= 0 ;STATE <= "000"END CASE;END IF;END IF;END IF;END IF;MODEEND <= STATE; -中間變量賦值給結(jié)果變量END PROCESS;PROCESS (CLOCK,TIME)BEGINIF (CLOCK='1') THEN -提取十位數(shù)CAT<="111110" -數(shù)碼管選通END IF;END PROCESS;process (MA) -將數(shù)字譯碼為七段共陰數(shù)碼管碼begin case MA iswhen 1 => q
13、<= "0110000" ;when 2 => q <= "1101101" ;when 3 => q <= "1111001" ;when 4 => q <= "0110011" ;when 5 => q <= "1011011" ;when 6 => q <= "1011111" ;when 7 => q <= "1110000" ;when 8 => q <=
14、"1111111" ;when 9 => q <= "1111011" ;when others => q <= "1111110"end case;end process;end washer; -洗衣機(jī)控制器結(jié)束首先根據(jù)實(shí)驗(yàn)題目的要求可以將洗衣機(jī)控制器分解成為如下的幾個(gè)模塊:洗衣機(jī)模式選擇、計(jì)數(shù)器、報(bào)警模塊以及譯碼驅(qū)動(dòng)電路和數(shù)字顯示電路。1、模式選擇模塊:總共五種洗衣模式可供用戶選擇,模式選擇模塊將用戶的選擇信息傳遞到控制模塊,這個(gè)模式選擇模塊將在洗衣機(jī)的開始按鍵start按下前進(jìn)行模式選擇?;舅悸肥敲坑?/p>
15、個(gè)脈沖模式改變一次,算上初始閑置模式共為六種其間進(jìn)行循環(huán)改變,通過case語(yǔ)句在start為零時(shí)每接到change信號(hào)的一次改變,通過三位二進(jìn)制數(shù)改變至下一狀態(tài)。如此即可實(shí)現(xiàn)循環(huán)形式的模式選擇模塊。其簡(jiǎn)要代碼如下:If(change'event and change='1') thencase mode iswhen "000"=>mode<="001" when "001"=>mode<="010" when "010"=>mode<
16、="100"when "100"=>mode<="110"when "110"=>mode<="111"when others=>mode<="000"end case;2、減計(jì)數(shù)計(jì)數(shù)器模塊計(jì)數(shù)器洗衣以倒計(jì)時(shí)模塊的方式提示用戶當(dāng)前剩余的洗衣時(shí)間,該計(jì)數(shù)器能讀取不同的模值進(jìn)行計(jì)數(shù)。計(jì)時(shí)單位為一秒鐘。首先,由于需要數(shù)碼管的顯示,又要實(shí)現(xiàn)單位為一秒鐘的倒計(jì)時(shí)所以必要對(duì)于系統(tǒng)時(shí)鐘的分頻器。主要過程是設(shè)計(jì)一個(gè)總的時(shí)間變量稱之為TIME,每個(gè)時(shí)鐘上升沿
17、一到就對(duì)此變量減一,如此首先在系統(tǒng)內(nèi)部實(shí)現(xiàn)時(shí)間的自減。自減是在沒有暫停信號(hào)且開始信號(hào)為一的情況下進(jìn)行的。另外我設(shè)計(jì)了一個(gè)中間變量,在不同的狀態(tài)對(duì)其進(jìn)行不同的賦值,并使其與我設(shè)計(jì)的總時(shí)間變量進(jìn)行比較,然后將比較結(jié)果送給模式的另一個(gè)中間變量即可實(shí)現(xiàn)洗衣過程中的狀態(tài)變化顯示。減計(jì)數(shù)器及其和中間量的比較的簡(jiǎn)要代碼如下:if ( pause = '0') thenif ( clk'event and clk = '1' and time/=0) thentime <= time - 1 ;if ( time=1 ) then state <="
18、;000"buzzer<= '1' elsif ( time = temp ) then case state iswhen "111" =>state <= "110"temp <= 20;when "110" =>state <= "100"temp <= 0;when others =>temp <= 0 ;state <= "000"end case;3、 譯碼和數(shù)碼顯示電路:譯碼和數(shù)碼顯示電路是將計(jì)時(shí)
19、狀態(tài)直觀清晰地反映出來(lái),被人們的視覺器官所接受。顯示器件選用LED 七段數(shù)碼管。在譯碼顯示電路輸出的驅(qū)動(dòng)下,顯示出清晰、直觀的數(shù)字符號(hào)。首先,由于需要數(shù)碼管的顯示,又要實(shí)現(xiàn)單位為一秒鐘的倒計(jì)時(shí)所以必要對(duì)于系統(tǒng)時(shí)鐘的分頻器?;谏蟼€(gè)學(xué)期進(jìn)行的基礎(chǔ)數(shù)字電路vhdl學(xué)習(xí),分頻器是十分基礎(chǔ)的模塊易于設(shè)計(jì)。又因?yàn)樾枰ㄟ^兩位數(shù)碼管顯示當(dāng)前倒計(jì)時(shí)的時(shí)間,同時(shí)當(dāng)前倒計(jì)時(shí)的時(shí)間是兩位數(shù)所以利用倒計(jì)時(shí)時(shí)間TIME除以10可以得到時(shí)間的十位,再用其MOD十即可得到時(shí)間的個(gè)位,然后將要顯示的數(shù)與七段數(shù)碼管的七個(gè)管角相匹配,最后將這兩個(gè)數(shù)分別賦給兩個(gè)數(shù)碼管并使兩個(gè)數(shù)碼管交替顯示就實(shí)現(xiàn)了對(duì)于倒計(jì)時(shí)的譯碼電路,以下是譯碼
20、和數(shù)碼顯示電路的簡(jiǎn)要代碼:if (clock='1') then ma<=time/10; cat<="111101"else ma<=time mod 10; cat<="111110"end if;process (ma)begincase ma is when 1 => q <= "0110000" ; when 2 => q <= "1101101" ; when 3 => q <= "1111001" ; wh
21、en 4 => q <= "0110011" ; when 5 => q <= "1011011" ; when 6 => q <= "1011111" ; when 7 => q <= "1110000" ; when 8 => q <= "1111111" ; when 9 => q <= "1111011" ; when others => q <= "1111110" end case;end process;4、報(bào)警模塊:報(bào)警模塊是洗衣機(jī)系統(tǒng)的最后一個(gè)模塊,即任何一個(gè)洗衣狀態(tài)執(zhí)行完成后倒計(jì)時(shí)為零時(shí),系統(tǒng)運(yùn)行到“報(bào)警”狀態(tài),蜂鳴器將會(huì)報(bào)警,時(shí)間為5 秒。其設(shè)計(jì)相對(duì)比較簡(jiǎn)單,只是需要加入一個(gè)蜂鳴器信號(hào)BUZZER,并且使其再TIME倒計(jì)時(shí)總時(shí)間為零時(shí),提供一個(gè)上升沿信號(hào)即可。五、器
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年茶藝師職業(yè)技能鑒定理論試卷(茶藝地理篇)
- 保護(hù)自然我們?cè)谛袆?dòng)議論文周記作文14篇
- 2025年江西省事業(yè)單位教師招聘考試生物學(xué)科專業(yè)知識(shí)試題
- 一次難忘的第一周校園生活周記寫作(8篇)
- 生物化學(xué)與健康領(lǐng)域試題
- 面向2025年的能源行業(yè)碳捕獲與封存技術(shù)市場(chǎng)前景與投資策略研究報(bào)告
- 建筑業(yè)從業(yè)經(jīng)歷及表現(xiàn)證明書(8篇)
- 2025年建筑行業(yè)農(nóng)民工權(quán)益保障與共享用工模式變革趨勢(shì)研究報(bào)告
- 疼痛醫(yī)療服務(wù)行業(yè)2025年市場(chǎng)拓展與品牌戰(zhàn)略研究報(bào)告
- 2025年城市市容管理服務(wù)項(xiàng)目申請(qǐng)報(bào)告
- 北師大版生物八年級(jí)下冊(cè)23章1節(jié)生物的生存依賴一定的環(huán)境(44張)課件-課件
- 2024年工業(yè)廢水處理工(高級(jí))技能鑒定考試題庫(kù)-下(多選、判斷題)
- 2023年全國(guó)職業(yè)院校技能大賽-聲樂、器樂表演大賽賽項(xiàng)規(guī)程
- NB∕SH∕T 0001-2019 電纜瀝青標(biāo)準(zhǔn)規(guī)范
- DL∕T 5342-2018 110kV~750kV架空輸電線路鐵塔組立施工工藝導(dǎo)則
- DL∕T 1688-2017 氣體絕緣金屬封閉開關(guān)設(shè)備狀態(tài)評(píng)價(jià)導(dǎo)則
- 江西省2024年中考數(shù)學(xué)試卷(含答案)
- 榆神礦區(qū)郭家灘煤礦(700 萬(wàn)噸-年)項(xiàng)目環(huán)評(píng)
- 合同訂立規(guī)范情況
- 福建省廈門雙十思明分校2024屆八下物理期末達(dá)標(biāo)檢測(cè)模擬試題及答案解析
- 刑事訴訟法學(xué)智慧樹知到期末考試答案章節(jié)答案2024年聊城大學(xué)
評(píng)論
0/150
提交評(píng)論