微波爐控制器的設計與分析_第1頁
微波爐控制器的設計與分析_第2頁
微波爐控制器的設計與分析_第3頁
微波爐控制器的設計與分析_第4頁
微波爐控制器的設計與分析_第5頁
已閱讀5頁,還剩51頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

微波爐控制器的設計與分析第一頁,共五十六頁,2022年,8月28日5.1系統(tǒng)設計要求現(xiàn)需設計一個微波爐控制器WBLKZQ,其外部接口如圖5.1所示。通過該控制器再配以4個七段數(shù)碼二極管完成微波爐的定時及信息顯示。第二頁,共五十六頁,2022年,8月28日圖5.1微波爐控制器外部接口符號圖第三頁,共五十六頁,2022年,8月28日圖5.1中的各信號的功能及要求如下:

CLK是秒時鐘脈沖輸入,它接收每秒一個時鐘脈沖的節(jié)拍信號。RESET為復位信號,高電平有效,用于芯片的復位功能。TEST為測試信號,高電平有效,用于測試4個七段數(shù)碼二極管工作是否正常。第四頁,共五十六頁,2022年,8月28日5.2系統(tǒng)設計方案

5.2.1微波爐控制器的總體設計方案

根據(jù)該微波爐控制器的功能設計要求,本系統(tǒng)可由以下4個模塊組成:①狀態(tài)控制器KZQ;②數(shù)據(jù)裝載器ZZQ;③烹調計時器JSQ;④顯示譯碼器YMQ47。其內部組成原理圖如圖5.2所示。第五頁,共五十六頁,2022年,8月28日圖5.2微波爐控制器WBLKZQ的內部組成原理圖第六頁,共五十六頁,2022年,8月28日

(1)狀態(tài)控制器KZQ的功能是控制微波爐工作過程中的狀態(tài)轉換,并發(fā)出有關控制信息;輸入信號為CLK、TEST、START、SET_T、RESET和DONE,輸出信號為LD_DONE、LD_CLK、LD_8888和COOK信號。

(2)數(shù)據(jù)裝載器ZZQ的功能是根據(jù)KZQ發(fā)出的控制信號選擇定時時間、測試數(shù)據(jù)或烹調完成信息的裝入。第七頁,共五十六頁,2022年,8月28日

(3)計時器JSQ的功能是負責烹調過程中的時間遞減計數(shù),并提供烹調完成時的狀態(tài)信號供KZQ產(chǎn)生烹調完成信號。

(4)顯示譯碼器YMQ47的功能就是負責將各種顯示信息的BCD轉換成七段數(shù)碼管顯示的驅動信息編碼。需要譯碼的信息有:數(shù)字0~9,字母d、o、n、E。第八頁,共五十六頁,2022年,8月28日

5.2.2狀態(tài)控制器KZQ的設計狀態(tài)控制器KZQ的功能是控制微波爐工作過程中的狀態(tài)轉換,并發(fā)出有關控制信息,因此我們可用一個狀態(tài)機來實現(xiàn)它。經(jīng)過對微波爐工作過程中的狀態(tài)轉換條件及輸出信號進行分析,我們可得到其狀態(tài)轉換圖如圖5.3所示,其輸入、輸出端口如圖5.4所示。第九頁,共五十六頁,2022年,8月28日圖5.3KZQ的狀態(tài)轉換圖第十頁,共五十六頁,2022年,8月28日圖5.4KZQ的輸入、輸出端口圖第十一頁,共五十六頁,2022年,8月28日

5.2.3數(shù)據(jù)裝載器ZZQ的設計

ZZQ的輸入、輸出端口如圖5.5所示,根據(jù)其應完成的邏輯功能,它本質上就是一個三選一數(shù)據(jù)選擇器。本設計采用一個進程來完成,但由于三個被選擇的數(shù)據(jù)只有一個來自輸入端口,因此另兩個被選擇的數(shù)據(jù)則通過在進程的說明部分定義兩個常數(shù)來產(chǎn)生。

第十二頁,共五十六頁,2022年,8月28日圖5.5ZZQ的輸入、輸出端口圖第十三頁,共五十六頁,2022年,8月28日PROCESS(DATA1,LD_8888,LD_CLK,LD_DONE)ISVARIABLETEMP:STD_LOGIC_VECTOR(2DOWNTO0);BEGINLOAD<=LD_8888ORLD_DONEORLD_CLK;第十四頁,共五十六頁,2022年,8月28日TEMP:=LD_8888&LD_DONE&LD_CLK;CASETEMPISWHEN"100"=>DATA2<=ALL_8; --LOAD_8888=1WHEN"010"=>DATA2<=DONE; --LOAD_DONE=1WHEN"001"=>DATA2<=DATA1; --LOAD_CLK=1WHENOTHERS=>NULL;ENDCASE;ENDPROCESS;第十五頁,共五十六頁,2022年,8月28日

5.2.4烹調計時器JSQ的設計烹調計時器JSQ為減數(shù)計數(shù)器,其最大計時時間為59:59。因此我們可用兩個減計數(shù)十進制計數(shù)器DCNT10和兩個減計數(shù)六進制計數(shù)器DCNT6級聯(lián)構成。JSQ的內部組成原理如圖5.6所示。第十六頁,共五十六頁,2022年,8月28日圖5.6JSQ的內部組成原理圖第十七頁,共五十六頁,2022年,8月28日

5.2.5顯示譯碼器YMQ47的設計本顯示譯碼器YMQ47不但要對數(shù)字0~9進行顯示譯碼,還要對字母d、o、n、E進行顯示譯碼,其譯碼對照表如表5.1所示。第十八頁,共五十六頁,2022年,8月28日表5.1YMQ47的譯碼對照表第十九頁,共五十六頁,2022年,8月28日5.3主要VHDL源程序5.3.1狀態(tài)控制器KZQ的VHDL源程序--KZQ.VHDLIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_ARITH.ALL;ENTITYKZQISPORT(RESET,SET_T,START,TEST,CLK,DONE:INSTD_LOGIC;第二十頁,共五十六頁,2022年,8月28日

COOK,LD_8888,LD_CLK,LD_DONE:OUTSTD_LOGIC);ENDENTITYKZQ;ARCHITECTUREARTOFKZQISTYPESTATE_TYPEIS(IDLE,LAMP_TEST,SET_CLOCK,TIMER,DONE_MSG);SIGNALNXT_STATE,CURR_STATE:STATE_TYPE;BEGINPROCESS(CLK,RESET)ISBEGINIFRESET='1'THEN第二十一頁,共五十六頁,2022年,8月28日

CURR_STATE<=IDLE;ELSIFCLK'EVENTANDCLK='1'THENCURR_STATE<=NXT_STATE;ENDIF;ENDPROCESS;PROCESS(CLK,CURR_STATE,SET_T,START,TEST,DONE)ISBEGINNXT_STATE<=IDLE;--DEFAULTNEXTSTATEISIDLE;第二十二頁,共五十六頁,2022年,8月28日

LD_8888<='0';LD_DONE<='0';LD_CLK<='0';COOK<='0';CASECURR_STATEISWHENLAMP_TEST=>LD_8888<='1';COOK<='0';WHENSET_CLOCK=>LD_CLK<='1';COOK<='0';WHENDONE_MSG=>LD_DONE<='1';COOK<='0';WHENIDLE=>IF(TEST='1')THENNXT_STATE<=LAMP_TEST;第二十三頁,共五十六頁,2022年,8月28日

LD_8888<='1';ELSIFSET_T='1'THENNXT_STATE<=SET_CLOCK;LD_CLK<='1';ELSIF((START='1')AND(DONE='0'))THENNXT_STATE<=TIMER;COOK<='1';ENDIF;WHENTIMER=>IFDONE='1'THENNXT_STATE<=DONE_MSG;LD_DONE<='1';第二十四頁,共五十六頁,2022年,8月28日

ELSENXT_STATE<=TIMER;COOK<='1';ENDIF;ENDCASE;ENDPROCESS;ENDARCHITECTUREART;第二十五頁,共五十六頁,2022年,8月28日5.3.2數(shù)據(jù)裝載器ZZQ的VHDL源程序--ZZQ.VHDLIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_ARITH.ALL;ENTITYZZQISPORT(DATA1:INSTD_LOGIC_VECTOR(15DOWNTO0);LD_8888:INSTD_LOGIC;LD_CLK:INSTD_LOGIC;LD_DONE:INSTD_LOGIC;第二十六頁,共五十六頁,2022年,8月28日

DATA2:OUTSTD_LOGIC_VECTOR(15DOWNTO0);LOAD:OUTSTD_LOGIC);ENDENTITYZZQ;ARCHITECTUREARTOFZZQISBEGINPROCESS(DATA1,LD_8888,LD_CLK,LD_DONE)IS第二十七頁,共五十六頁,2022年,8月28日VARIABLETEMP:STD_LOGIC_VECTOR(2DOWNTO0);BEGINLOAD<=LD_8888ORLD_DONEORLD_CLK;TEMP:=LD_8888&LD_DONE&LD_CLK;CASETEMPISWHEN"100"=>DATA2<=ALL_8; --LOAD_8888=1WHEN"010"=>DATA2<=DONE; --LOAD_DONE第二十八頁,共五十六頁,2022年,8月28日WHEN"001"=>DATA2<=DATA1; --LOAD_CLKWHENOTHERS=>NULL;ENDCASE;ENDPROCESS;ENDARCHITECTUREART;第二十九頁,共五十六頁,2022年,8月28日5.3.3烹調計時器JSQ的VHDL源程序--DCNT10.VHDLIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYDCNT10ISPORT(CLK:INSTD_LOGIC;LOAD:INSTD_LOGIC;ENA:INSTD_LOGIC;DATAIN:INSTD_LOGIC_VECTOR(3DOWNTO0);CQ:OUTSTD_LOGIC_VECTOR(3DOWNTO0);CARRY_OUT:OUTSTD_LOGIC);第三十頁,共五十六頁,2022年,8月28日ENDENTITYDCNT10;ARCHITECTUREARTOFDCNT10ISSIGNALCQI:STD_LOGIC_VECTOR(3DOWNTO0);BEGINPROCESS(CLK,LOAD,ENA)ISBEGINIFLOAD='1'THENCQI<=DATAIN;ELSIFCLK'EVENTANDCLK='1'THEN第三十一頁,共五十六頁,2022年,8月28日IFENA='1'THENIFCQI="0000"THENCQI<="1001";ELSECQI<=CQI-'1';ENDIF;ENDIF;ENDIF;ENDPROCESS;PROCESS(CLK,CQI)ISBEGINIFCLK'EVENTANDCLK='1'THENIFCQI="0000"THENCARRY_OUT<='1';第三十二頁,共五十六頁,2022年,8月28日

ELSECARRY_OUT<='0';ENDIF;ENDIF;ENDPROCESS;CQ<=CQI;ENDARCHITECTUREART;

--DCNT6.VHDLIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;第三十三頁,共五十六頁,2022年,8月28日ENTITYDCNT6ISPORT(CLK:INSTD_LOGIC;LOAD:INSTD_LOGIC;ENA:INSTD_LOGIC;DATAIN:INSTD_LOGIC_VECTOR(3DOWNTO0);CQ:OUTSTD_LOGIC_VECTOR(3DOWNTO0);CARRY_OUT:OUTSTD_LOGIC);ENDENTITYDCNT6;ARCHITECTUREARTOFDCNT6IS第三十四頁,共五十六頁,2022年,8月28日SIGNALCQI:STD_LOGIC_VECTOR(3DOWNTO0);BEGINPROCESS(CLK,LOAD,ENA)ISBEGINIFLOAD='1'THENCQI<=DATAIN;ELSIFCLK'EVENTANDCLK='1'THENIFENA='1'THENIFCQI="0000"THENCQI<="0101";ELSECQI<=CQI-'1';ENDIF;ENDIF;ENDIF;第三十五頁,共五十六頁,2022年,8月28日ENDPROCESS;PROCESS(CLK,CQI)ISBEGINIFCLK'EVENTANDCLK='1'THENIFCQI="0000"THENCARRY_OUT<='1';ELSECARRY_OUT<='0';ENDIF;ENDIF;ENDPROCESS;CQ<=CQI;ENDARCHITECTUREART;第三十六頁,共五十六頁,2022年,8月28日--JSQ.VHDLIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;USEIEEE.STD_LOGIC_ARITH.ALL;ENTITYJSQISPORT(COOK:INSTD_LOGIC;DATA3:INSTD_LOGIC_VECTOR(15DOWNTO0);LOAD:INSTD_LOGIC;第三十七頁,共五十六頁,2022年,8月28日

CLK:INSTD_LOGIC;SEC_L:OUTSTD_LOGIC_VECTOR(3TO0);SEC_H:OUTSTD_LOGIC_VECTOR(3TO0);MIN_L:OUTSTD_LOGIC_VECTOR(3TO0);MIN_H:OUTSTD_LOGIC_VECTOR(3TO0);DONE:OUTSTD_LOGIC);ENDENTITYJSQ;ARCHITECTUREARTOFJSQISCOMPONENTDCNT10ISPORT(CLK,LOAD,ENA:INSTD_LOGIC;第三十八頁,共五十六頁,2022年,8月28日DATAIN:INSTD_LOGIC_VECTOR(3DOWNTO0);CQ:OUTSTD_LOGIC_VECTOR(3DOWNTO0);CARRY_OUT:OUTSTD_LOGIC);ENDCOMPONENTDCNT10;COMPONENTDCNT6ISPORT(CLK,LOAD,ENA:INSTD_LOGIC;DATAIN:INSTD_LOGIC_VECTOR(3DOWNTO0);CQ:OUTSTD_LOGIC_VECTOR(3DOWNTO0);CARRY_OUT:OUTSTD_LOGIC);第三十九頁,共五十六頁,2022年,8月28日

ENDCOMPONENTDCNT6;SIGNALNEWCLK:STD_LOGIC;SIGNALS1:STD_LOGIC;SIGNALS2:STD_LOGIC;SIGNALS3:STD_LOGIC;SIGNALS4:STD_LOGIC;BEGIN第四十頁,共五十六頁,2022年,8月28日U1:DCNT10PORTMAP(CLK,LOAD,COOK,DATA3(3DOWNTO0),SEC_L,S1);U2:DCNT6PORTMAP(S1,LOAD,COOK,DATA3(7DOWNTO4),SEC_H,S2);U3:DCNT10PORTMAP(S2,LOAD,COOK,DATA3(11DOWNTO8),MIN_L,S3);U4:DCNT6PORTMAP(S3,LOAD,COOK,DATA3(15DOWNTO12),MIN_H,S4);DONE<=S1ANDS2ANDS3ANDS4;ENDARCHITECTUREART;第四十一頁,共五十六頁,2022年,8月28日5.3.4顯示譯碼器YMQ47的VHDL源程序--YMQ47.VHDLIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYYMQ47ISPORT(AIN4:INSTD_LOGIC_VECTOR(3DOWNTO0);DOUT7:OUTSTD_LOGIC_VECTOR(6DOWNTO0));第四十二頁,共五十六頁,2022年,8月28日ENDENTITYYMQ47;ARCHITECTUREARTOFYMQ47ISBEGINPROCESS(AIN4)BEGINCASEAIN4ISWHEN"0000"=>DOUT7<="0111111"; --顯示0的g~aWHEN"0001"=>DOUT7<="0000110"; --1WHEN"0010"=>DOUT7<="1011011"; --2WHEN"0011"=>DOUT7<="1001111"; --3WHEN"0100"=>DOUT7<="1100110"; --4第四十三頁,共五十六頁,2022年,8月28日

WHEN"0101"=>DOUT7<="1101101"; --5WHEN"0110"=>DOUT7<="1111101"; --6WHEN"0111"=>DOUT7<="0000111"; --7WHEN"1000"=>DOUT7<="1111111"; --8WHEN"1001"=>DOUT7<="1101111"; --9WHEN"1010"=>DOUT7<="1011110"; --dWHEN"1011"=>DOUT7<="1011100"; --oWHEN"1100"=>DOUT7<="1010100"; --nWHEN"1101"=>DOUT7<="1111001"; --EWHENOTHERS=>DOUT7<="0000000";ENDCASE;ENDPROCESS;ENDARCHITECTUREART;第四十四頁,共五十六頁,2022年,8月28日

5.3.5微波爐控制器WBLKZQ的VHDL源程序請讀者根據(jù)圖5.2微波爐控制器WBLKZQ的內部組成原理圖自行完成。第四十五頁,共五十六頁,2022年,8月28日

5.4系統(tǒng)仿真/硬件驗證

5.4.1系統(tǒng)的有關仿真狀態(tài)控制器KZQ、數(shù)據(jù)裝載器ZZQ和烹調計時器JSQ的仿真分別如圖5.7、圖5.8和

溫馨提示

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

評論

0/150

提交評論