主要內(nèi)容:
設(shè)計(jì)一個(gè)洗衣機(jī)控制器,要求洗衣機(jī)有正轉(zhuǎn)、反轉(zhuǎn)、暫停三種狀態(tài)。設(shè)定洗衣機(jī)的工作時(shí)間,要洗衣機(jī)在工作時(shí)間內(nèi)完成:定時(shí)啟動(dòng)?正轉(zhuǎn)20秒?暫停10秒?反轉(zhuǎn)20秒?暫停10秒?定時(shí)未到回到“正轉(zhuǎn)20秒?暫停10秒?……”,定時(shí)到則停止,同時(shí)發(fā)出提示音。
基本要求:
1、設(shè)計(jì)一個(gè)電子定時(shí)器,控制洗衣機(jī)作如下運(yùn)轉(zhuǎn):定時(shí)啟動(dòng)?正轉(zhuǎn)20秒?暫停10秒?反轉(zhuǎn)20秒?暫停10秒?定時(shí)未到回到“正轉(zhuǎn)20秒?暫停10秒?……”,定時(shí)到則停止;
2、若定時(shí)到,則停機(jī)發(fā)出音響信號(hào);
3、用兩個(gè)數(shù)碼管顯示洗滌的預(yù)置時(shí)間(分鐘數(shù)),按倒計(jì)時(shí)方式對(duì)洗滌過(guò)程作計(jì)時(shí)顯示,直到時(shí)間到停機(jī);洗滌過(guò)程由“開(kāi)始”信號(hào)開(kāi)始;
4、三只LED燈表示“正轉(zhuǎn)”、“反轉(zhuǎn)”、“暫?!比齻€(gè)狀態(tài)。
一、總體設(shè)計(jì)思想
1、基本原理
洗衣機(jī)控制器的設(shè)計(jì)主要是定時(shí)器的設(shè)計(jì)。由一片FPGA和外圍電路構(gòu)成了電器控制部分。FPGA接收鍵盤(pán)的控制命令,控制洗衣機(jī)的進(jìn)水、排水、水位和洗衣機(jī)的工作狀態(tài)、并控制顯示工作狀態(tài)以及設(shè)定直流電機(jī)速度、正反轉(zhuǎn)控制、制動(dòng)控制、起??刂坪瓦\(yùn)動(dòng)狀態(tài)控制。對(duì)芯片的編程采用模塊化的VHDL (硬件描述語(yǔ)言)進(jìn)行設(shè)計(jì),設(shè)計(jì)分為三層實(shí)現(xiàn),頂層實(shí)現(xiàn)整個(gè)芯片的功能。頂層和中間層多數(shù)是由VHDL的元件例化語(yǔ)句實(shí)現(xiàn)。中間層由無(wú)刷直流電機(jī)控制、運(yùn)行模式選擇、洗滌模式選擇、定時(shí)器、顯示控制、鍵盤(pán)掃描、水位控制以及對(duì)直流電機(jī)控制板進(jìn)行速度設(shè)定、正反轉(zhuǎn)控制、啟??刂频饶K組成,它們分別調(diào)用底層模塊。
Use ieee.std_logic_1164.all;
Entity encode is
Port(
Bcd : in std_logic_vector(3 downto o);
A,b,c,d,e,f,g: out std_logic
);
End encode;
Architecture rtl of encode is
Signal temp:std_logic_vector(6 downto 0);
Begin
文章借鑒于此紛傳