版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
微波爐控制器的設(shè)計(jì)與分析第一頁,共五十六頁,2022年,8月28日5.1系統(tǒng)設(shè)計(jì)要求現(xiàn)需設(shè)計(jì)一個(gè)微波爐控制器WBLKZQ,其外部接口如圖5.1所示。通過該控制器再配以4個(gè)七段數(shù)碼二極管完成微波爐的定時(shí)及信息顯示。第二頁,共五十六頁,2022年,8月28日?qǐng)D5.1微波爐控制器外部接口符號(hào)圖第三頁,共五十六頁,2022年,8月28日?qǐng)D5.1中的各信號(hào)的功能及要求如下:
CLK是秒時(shí)鐘脈沖輸入,它接收每秒一個(gè)時(shí)鐘脈沖的節(jié)拍信號(hào)。RESET為復(fù)位信號(hào),高電平有效,用于芯片的復(fù)位功能。TEST為測(cè)試信號(hào),高電平有效,用于測(cè)試4個(gè)七段數(shù)碼二極管工作是否正常。第四頁,共五十六頁,2022年,8月28日5.2系統(tǒng)設(shè)計(jì)方案
5.2.1微波爐控制器的總體設(shè)計(jì)方案
根據(jù)該微波爐控制器的功能設(shè)計(jì)要求,本系統(tǒng)可由以下4個(gè)模塊組成:①狀態(tài)控制器KZQ;②數(shù)據(jù)裝載器ZZQ;③烹調(diào)計(jì)時(shí)器JSQ;④顯示譯碼器YMQ47。其內(nèi)部組成原理圖如圖5.2所示。第五頁,共五十六頁,2022年,8月28日?qǐng)D5.2微波爐控制器WBLKZQ的內(nèi)部組成原理圖第六頁,共五十六頁,2022年,8月28日
(1)狀態(tài)控制器KZQ的功能是控制微波爐工作過程中的狀態(tài)轉(zhuǎn)換,并發(fā)出有關(guān)控制信息;輸入信號(hào)為CLK、TEST、START、SET_T、RESET和DONE,輸出信號(hào)為LD_DONE、LD_CLK、LD_8888和COOK信號(hào)。
(2)數(shù)據(jù)裝載器ZZQ的功能是根據(jù)KZQ發(fā)出的控制信號(hào)選擇定時(shí)時(shí)間、測(cè)試數(shù)據(jù)或烹調(diào)完成信息的裝入。第七頁,共五十六頁,2022年,8月28日
(3)計(jì)時(shí)器JSQ的功能是負(fù)責(zé)烹調(diào)過程中的時(shí)間遞減計(jì)數(shù),并提供烹調(diào)完成時(shí)的狀態(tài)信號(hào)供KZQ產(chǎn)生烹調(diào)完成信號(hào)。
(4)顯示譯碼器YMQ47的功能就是負(fù)責(zé)將各種顯示信息的BCD轉(zhuǎn)換成七段數(shù)碼管顯示的驅(qū)動(dòng)信息編碼。需要譯碼的信息有:數(shù)字0~9,字母d、o、n、E。第八頁,共五十六頁,2022年,8月28日
5.2.2狀態(tài)控制器KZQ的設(shè)計(jì)狀態(tài)控制器KZQ的功能是控制微波爐工作過程中的狀態(tài)轉(zhuǎn)換,并發(fā)出有關(guān)控制信息,因此我們可用一個(gè)狀態(tài)機(jī)來實(shí)現(xiàn)它。經(jīng)過對(duì)微波爐工作過程中的狀態(tài)轉(zhuǎn)換條件及輸出信號(hào)進(jìn)行分析,我們可得到其狀態(tài)轉(zhuǎn)換圖如圖5.3所示,其輸入、輸出端口如圖5.4所示。第九頁,共五十六頁,2022年,8月28日?qǐng)D5.3KZQ的狀態(tài)轉(zhuǎn)換圖第十頁,共五十六頁,2022年,8月28日?qǐng)D5.4KZQ的輸入、輸出端口圖第十一頁,共五十六頁,2022年,8月28日
5.2.3數(shù)據(jù)裝載器ZZQ的設(shè)計(jì)
ZZQ的輸入、輸出端口如圖5.5所示,根據(jù)其應(yīng)完成的邏輯功能,它本質(zhì)上就是一個(gè)三選一數(shù)據(jù)選擇器。本設(shè)計(jì)采用一個(gè)進(jìn)程來完成,但由于三個(gè)被選擇的數(shù)據(jù)只有一個(gè)來自輸入端口,因此另兩個(gè)被選擇的數(shù)據(jù)則通過在進(jìn)程的說明部分定義兩個(gè)常數(shù)來產(chǎn)生。
第十二頁,共五十六頁,2022年,8月28日?qǐng)D5.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烹調(diào)計(jì)時(shí)器JSQ的設(shè)計(jì)烹調(diào)計(jì)時(shí)器JSQ為減數(shù)計(jì)數(shù)器,其最大計(jì)時(shí)時(shí)間為59:59。因此我們可用兩個(gè)減計(jì)數(shù)十進(jìn)制計(jì)數(shù)器DCNT10和兩個(gè)減計(jì)數(shù)六進(jìn)制計(jì)數(shù)器DCNT6級(jí)聯(lián)構(gòu)成。JSQ的內(nèi)部組成原理如圖5.6所示。第十六頁,共五十六頁,2022年,8月28日?qǐng)D5.6JSQ的內(nèi)部組成原理圖第十七頁,共五十六頁,2022年,8月28日
5.2.5顯示譯碼器YMQ47的設(shè)計(jì)本顯示譯碼器YMQ47不但要對(duì)數(shù)字0~9進(jìn)行顯示譯碼,還要對(duì)字母d、o、n、E進(jìn)行顯示譯碼,其譯碼對(duì)照表如表5.1所示。第十八頁,共五十六頁,2022年,8月28日表5.1YMQ47的譯碼對(duì)照表第十九頁,共五十六頁,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烹調(diào)計(jì)時(shí)器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源程序請(qǐng)讀者根據(jù)圖5.2微波爐控制器WBLKZQ的內(nèi)部組成原理圖自行完成。第四十五頁,共五十六頁,2022年,8月28日
5.4系統(tǒng)仿真/硬件驗(yàn)證
5.4.1系統(tǒng)的有關(guān)仿真狀態(tài)控制器KZQ、數(shù)據(jù)裝載器ZZQ和烹調(diào)計(jì)時(shí)器JSQ的仿真分別如圖5.7、圖5.8和
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(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ǔ)空間,僅對(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 七年級(jí)上冊(cè)《金色花》課件
- 兩條直線的位置關(guān)系對(duì)稱問題課件
- 《服飾知識(shí)常識(shí)》課件
- 單位管理制度集合大全人員管理十篇
- 單位管理制度集粹選集人事管理十篇
- 《石膏的護(hù)理》課件
- 單位管理制度分享大合集員工管理篇
- 單位管理制度范文大合集職工管理篇十篇
- 單位管理制度范例匯編人員管理篇十篇
- 單位管理制度呈現(xiàn)匯編職員管理篇十篇
- 2023版設(shè)備管理體系標(biāo)準(zhǔn)
- 外來人員車輛入廠安全須知
- 01S201室外消火栓安裝圖集
- 浪潮入職培訓(xùn)考試題目
- B2C網(wǎng)絡(luò)商店物流服務(wù)質(zhì)量及其與顧客忠誠的關(guān)系研究的中期報(bào)告
- 年同等學(xué)歷考研申碩綜合科復(fù)習(xí)指導(dǎo)(教育心理學(xué))課件
- 線段角動(dòng)點(diǎn)問題
- 劍橋英語PET真題校園版
- 【課件】沉心靜氣打贏最后一仗 課件-2022-2023學(xué)年高中主題班會(huì)
- 2021傳播心理學(xué)課程教學(xué)大綱
- HSk-lesson07part2-第-七-課-最好的醫(yī)生是自己
評(píng)論
0/150
提交評(píng)論