




已閱讀5頁,還剩16頁未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
課 程 設(shè) 計(jì) 報(bào) 告課 題 : 洗衣機(jī)報(bào) 告 人 : 王博澤 學(xué) 號(hào) : 20080711128 同組成員 : 岳培豪望開新 周宜行 課設(shè)時(shí)間 : 12月06日-12月19 日 功能:1、實(shí)現(xiàn)自動(dòng)洗衣機(jī)主要功能的狀態(tài)模擬。狀態(tài)包括復(fù)位,等待,設(shè)定洗滌時(shí)間,注水,洗滌,放水,甩干和結(jié)束;2、在復(fù)位后可以選擇設(shè)時(shí)洗滌、按默認(rèn)時(shí)間洗滌與直接甩干三種模式;3、工作時(shí)顯示洗滌的剩余時(shí)間和正在執(zhí)行的步驟標(biāo)號(hào);4、故障模擬時(shí),能夠自動(dòng)結(jié)束運(yùn)行并鳴響提醒,直到故障信號(hào)結(jié)束;5、正常運(yùn)行流程結(jié)束時(shí),有2秒的鳴響;6、在洗滌過程中,實(shí)現(xiàn)正轉(zhuǎn)3秒,暫停1秒,反轉(zhuǎn)2秒的循環(huán)工作模擬。主要功能模塊:1、 主模塊VHDL2.Vhd。主要實(shí)現(xiàn)對(duì)輸入信號(hào)的處理,各工作狀態(tài)的模擬和運(yùn)行,給各分模塊以簡單的命令;2、 模塊VHDL3.Vhd。實(shí)現(xiàn)將板上的鍵盤變?yōu)?6個(gè)按鍵,作為輸入信號(hào)給主模塊;3、 模塊VHDL4.Vhd。實(shí)現(xiàn)在LCD上按格式顯示數(shù)碼與特殊字母;4、 模塊VHDL5.Vhd。規(guī)定蜂鳴器的鳴響頻率。程序:- 模塊VHDL3.VhdLIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;entity PADTOKEY is port (CPIN,R :IN STD_LOGIC; Y: OUT STD_LOGIC_VECTOR(15 DOWNTO 0); ICOL : IN STD_LOGIC_VECTOR(3 DOWNTO 0); OROW : OUT STD_LOGIC_VECTOR(3 DOWNTO 0) ); END ENTITY;architecture JGT of PADTOKEY is TYPE STATES IS (S0,S1,S2,S3,S4); SIGNAL S: STATES; SIGNAL SROW : STD_LOGIC_VECTOR(3 DOWNTO 0); SIGNAL CPCT : INTEGER RANGE 0 TO 255; SIGNAL CTDELAY: INTEGER RANGE 0 TO 511; SIGNAL CP:STD_LOGIC; BEGIN PROCESS(CPIN) BEGIN IF CPIN=1 AND CPIN EVENT THEN IF CPCT=255 THEN CPCT=0;CP= NOT CP; ELSE CPCT=CPCT+1; END IF; END IF; END PROCESS; PROCESS(CP,R) VARIABLE N:INTEGER RANGE 0 TO 12; BEGIN IF R=1 THEN S=S0;Y=0000000000000000;SROWSOROW=SROW;SSY(3 DOWNTO 0)Y(7 DOWNTO 4)Y(11 DOWNTO 8)Y(15 DOWNTO 12)NULL; END CASE; WHEN S3=IF N=12 THEN N:=0;S=S4;CTDELAY=0;SROW=1110; ELSE N:=N+4;S=S1;SROWIF CTDELAY=511 THEN S=S1;CTDELAY=0; ELSE CTDELAY=CTDELAY+1; END IF; END CASE;END IF;END PROCESS;END JGT;- 主模塊VHDL2.VhdLIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;USE IEEE.STD_LOGIC_ARITH.ALL;ENTITY DK is PORT (CPIN,R,START,START2,SET_TIME,FS_END,GZ,SU,SD,GU,GD :IN STD_LOGIC; SPEAKER,LIGHT,GZLIGHT :OUT STD_LOGIC; XD_Time,BZ :OUT STD_LOGIC_VECTOR(7 DOWNTO 0); ZYDeng :OUT STD_LOGIC_VECTOR(2 DOWNTO 0) );END ENTITY ;ARCHITECTURE XYJ OF DK ISSIGNAL CPCT :INTEGER RANGE 0 TO 999999;SIGNAL CP,SPEAK:STD_LOGIC;SIGNAL ZT_N : INTEGER RANGE 0 TO 99;SIGNAL ZSTime,OMTime,SGTime,FMTime,ZTime,JCTime :STD_LOGIC_VECTOR(11 DOWNTO 0);SIGNAL XDTime,BZ_S :STD_LOGIC_VECTOR(7 DOWNTO 0);TYPE STATES IS (S0,S1,S2,S3,S4,S5,S6,S7,S8,S9,S10);TYPE S4STATES IS (P0,P1,P2,P3);SIGNAL S : STATES;SIGNAL P : S4STATES;BEGINPROCESS(CPIN,R)BEGINIF R=1 THEN CPCT=249999;ELSIF CPIN=1 AND CPIN EVENT THEN IF CPCT=0 THEN CPCT=249999;CP=NOT CP; ELSE CPCT=CPCT-1; END IF;END IF;END PROCESS;PROCESS(CP,R)BEGINIF R=1 THEN S=S0;ZSTime=X028;OMTime=X4B0;JCTime=X008;GZLIGHT=0; SGTime=X028;FMTime=X028;XDTime=X00;BZ_S=X00;LIGHT=1; SPEAK BZ_S=X00;S=S1;ZSTime=X028;OMTime=X4B0;LIGHT=1; SGTime=X028;FMTime=X028;XDTime=X1E;GZLIGHT=0; JCTime=X008;SPEAK BZ_S=X01; IF SET_TIME=1 THEN S=S2; ELSIF START=1 THEN S=S3; ELSIF START2=1 THEN S=S6;XDTime BZ_S=X02; IF GZ=1 THEN S=S8; ELSE IF GU=1 THEN IF XDTime=X63 THEN XDTime=X00; ELSE XDTime=XDTime+1; END IF; S=S10; ELSIF GD=1 THEN IF XDTime=X00 THEN XDTime=X63; ELSE XDTime=XDTime-1; END IF; SX59 THEN XDTime=X00; ELSE XDTime=XDTime+X0A; END IF; S=S10; ELSIF SD=1 THEN IF XDTimeX0A THEN XDTime=X63; ELSE XDTime=XDTime-X0A; END IF; S=S10; ELSIF START=1 THEN S BZ_S=X03; IF GZ=1 THEN SX000 THEN ZSTime=ZSTime-1; ELSE S BZ_S=X04; IF GZ=1 THEN S0 THEN IF OMTime0 THEN OMTime=OMTime-1; ELSE OMTime=X4B0; XDTime=XDTime-1; END IF; ELSE S BZ_S=X05; IF GZ=1 THEN S=S8; ELSE IF FS_END=1 THEN S BZ_S=X06; IF GZ=1 THEN SX000 THEN SGTime=SGTime-1; ELSE FMTime=X028; S BZ_SX000 THEN SPEAK=1;FMTime=FMTime-1; ELSE S=S9;SPEAK=0;BZ_S=X00;LIGHT BZ_S=X08; IF GZ=1 THEN SPEAK=1;GZLIGHT=1; ELSE S=S9;SPEAK=0;BZ_S=X00;LIGHT=0;XDTime=X00; GZLIGHT IF JCTimeX000 THEN JCTime=JCTime-1; ELSE S=S2;JCTime NULL; END CASE;END IF;END PROCESS;PROCESS (BZ_S)BEGINBZ=BZ_S;END PROCESS;PROCESS (SPEAK)BEGINSPEAKER=SPEAK;END PROCESS;PROCESS (XDTime)BEGINIF XDTimeX0A THEN XD_Time=XDTime;ELSIF XDTimeX14 THEN XD_Time=XDTime+6;ELSIF XDTimeX1E THEN XD_Time=XDTime+12;ELSIF XDTimeX28 THEN XD_Time=XDTime+18;ELSIF XDTimeX32 THEN XD_Time=XDTime+24;ELSIF XDTimeX3C THEN XD_Time=XDTime+30;ELSIF XDTimeX46 THEN XD_Time=XDTime+36;ELSIF XDTimeX50 THEN XD_Time=XDTime+42;ELSIF XDTimeX5A THEN XD_Time=XDTime+48;ELSIF XDTimeX64 THEN XD_Time=XDTime+54;END IF;END PROCESS;PROCESS (CP,R,XDTime)BEGINIF R=1 THEN P=P0;ZTime=X014;ZYDeng=000;ZT_N P=P1;ZTime=X014;ZYDeng=000;ZT_N ZYDeng0 THEN IF ZTime0 THEN ZTime=ZTime-1; ELSE ZT_N=ZT_N-1; ZTime=X014; END IF; ELSE P=P2;ZTime=X014;ZT_N ZYDeng0 THEN IF ZTime0 THEN ZTime=ZTime-1; ELSE ZT_N=ZT_N-1; ZTime=X014; END IF; ELSE P=P3;ZTime=X014;ZT_N ZYDeng0 THEN IF ZTime0 THEN ZTime=ZTime-1; ELSE ZT_N=ZT_N-1; ZTime=X014; END IF; ELSE P=P1;ZTime=X014;ZT_N NULL; END CASE; ELSE ZYDeng=000; END IF;END IF;END PROCESS;END XYJ;- 模塊VHDL4.VhdLIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;entity GENLCD8 is port (CPIN,R,BUSY :IN STD_LOGIC; D0,D1,D2,D3 :IN STD_LOGIC_VECTOR(7 DOWNTO 0); CLK,RST,STROBE,OUTLINE : OUT STD_LOGIC; DATA : OUT STD_LOGIC_VECTOR(7 DOWNTO 0); ADDR : OUT STD_LOGIC_VECTOR(3 DOWNTO 0) );end entity ;architecture JGT of GENLCD8 is TYPE STATES IS (S0,S1,S2); SIGNAL S: STATES; SIGNAL LCDPT : INTEGER RANGE 0 TO 8; SIGNAL CPCT : INTEGER RANGE 0 TO 65535; SIGNAL CP: STD_LOGIC;beginPROCESS(CPIN,R)BEGINCLK=CPIN;IF R=1 THEN CPCT=65535;ELSIF CPIN=1 AND CPIN EVENT THEN IF CPCT=0 THEN CPCT=65535;CP=NOT CP; ELSE CPCT=CPCT-1; END IF;END IF;END PROCESS; PROCESS(CP,R)BEGINIF R=1 THEN S=S0;LCDPT=0;RST S=S1;LCDPT=0;RST RST=0;STROBE=0; IF BUSY=0 THEN IF LCDPT=12 THEN LCDPT=1; ELSE LCDPT=LCDPT+1; END IF; S S=S1;STROBE NULL; END CASE;END IF; END PROCESS;PROCESS(LCDPT)BEGINCASE LCDPT ISWHEN 0 = NULL;WHEN 1=DATA=0011&D0(7 DOWNTO 4);ADDR=0010;OUTLINEDATA=0011&D0(3 DOWNTO 0);ADDR=0011;OUTLINEDATA=0011&D1(7 DOWNTO 4);ADDR=0101;OUTLINEDATA=0011&D1(3 DOWNTO 0);ADDR=0110;OUTLINEDATA=0011&D2(7 DOWNTO 4);ADDR=1001;OUTLINEDATA=0011&D2(3 DOWNTO 0);ADDR=1010;OUTLINEDATA=0011&D3(7 DOWNTO 4);ADDR=1100;OUTLINEDATA=0011&D3(3 DOWNTO 0);ADDR=1101;OUTLINEDATA=01011000;ADDR=0010;OUTLINEDATA=01000100;ADDR=0011;OUTLINEDATA=01000010;ADDR=1001;OUTLINEDATA=01011010;ADDR=1010;OUTLINE NULL;END CASE;END PROCESS;END JGT;- 模塊VHDL5.Vhdlibrary ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity spea isport(cp,r:in std_logic; speakers:out std_logic );end spea;architecture jgt of spea issignal cpct:integer range 0 to 5;signal speak:std_logic;beginprocess(cp,r)beginif r=0 then cpct=0;speak=0;elsif cp=1 and cp event then if cpct=5 then cpct=0;speak=not speak; else cpct=cpct+1; end if;end if;end process;process(speak)beginspeakers=speak;end process;end jgt;模擬演示:(1)復(fù)位信號(hào)R置1,各器件回到默認(rèn)狀態(tài)。正反轉(zhuǎn)指示燈不亮,洗滌時(shí)間顯示為00,步驟標(biāo)號(hào)顯示00;(2)洗滌時(shí)間自動(dòng)跳轉(zhuǎn)為默認(rèn)值30,步驟標(biāo)號(hào)則跳轉(zhuǎn)為01;(3)選擇設(shè)時(shí)洗滌模式,SET_TIME置1,步驟標(biāo)號(hào)顯示02。可按動(dòng)SU,SD,GU,GD所對(duì)應(yīng)的按鈕分別控制洗滌時(shí)間的十位加一,十位減一,個(gè)位加一和個(gè)位減一。其中上限為99而下限為00,如大于上限則轉(zhuǎn)為00,小于下限則轉(zhuǎn)為99;(4)信號(hào)START置1,步驟標(biāo)號(hào)為03,進(jìn)入注水狀態(tài),注水默認(rèn)時(shí)間2秒后自動(dòng)結(jié)束;(5)進(jìn)入洗滌狀態(tài),步驟標(biāo)號(hào)為04。洗滌時(shí)間將沒分鐘減1,直到變?yōu)?0并自動(dòng)結(jié)束。在洗滌狀態(tài)中,正反轉(zhuǎn)燈的顯示為:左燈亮3秒,中間燈亮1秒,右燈亮2秒,并如此循環(huán)下去;(6)進(jìn)入放水狀態(tài),步驟標(biāo)號(hào)為05。直到模擬洗衣機(jī)桶底濕度傳感器信號(hào)的FS_END置1,結(jié)束當(dāng)前狀態(tài);(7)進(jìn)入甩干狀態(tài),步驟標(biāo)號(hào)為06。甩干默認(rèn)時(shí)間2秒后自動(dòng)結(jié)束;(8)進(jìn)入結(jié)束狀態(tài),步驟標(biāo)號(hào)為07。蜂鳴器鳴響2秒后停止,同時(shí)結(jié)束狀態(tài)并關(guān)閉LCD的背景燈;(9)進(jìn)入空狀態(tài),步驟標(biāo)號(hào)為09,直至重新復(fù)位。(10)如在(2)后選擇按默認(rèn)時(shí)間洗滌,START置1,將直接跳至(4),步驟標(biāo)號(hào)從01跳至03,之后的洗滌時(shí)間從30開始遞減;(11)如在(2)后選擇直接甩干,START2置1,將直接跳至(7),步驟標(biāo)號(hào)從01跳至06。(12)如在(3)(8)過程中模擬故障開關(guān)讓信號(hào)GZ置1,將停止當(dāng)前操
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 【正版授權(quán)】 ISO/IEC 23008-1:2023/AMD1:2025 EN Information technology - High efficiency coding and media delivery in heterogeneous environments - Part 1: MPEG media transport (MMT) - Ame
- 【正版授權(quán)】 ISO/IEC GUIDE 98-4:2012 FR Uncertainty of measurement - Part 4: Role of measurement uncertainty in conformity assessment
- 2025至2030中國生態(tài)修復(fù)行業(yè)深度研究及發(fā)展前景投資評(píng)估分析
- 2025至2030中國瓶裝水行業(yè)深度研究及發(fā)展前景投資評(píng)估分析
- 2025至2030中國珠光色素粒子行業(yè)發(fā)展趨勢分析與未來投資戰(zhàn)略咨詢研究報(bào)告
- 工科研究生助教在課堂互動(dòng)中的參與與影響
- 2025至2030中國玉器行業(yè)發(fā)展分析及投資前景與戰(zhàn)略規(guī)劃報(bào)告
- 加盟培訓(xùn)學(xué)員課件圖片
- 幼兒情感教育中的心理輔導(dǎo)實(shí)踐
- 財(cái)務(wù)入職培訓(xùn)課件
- 2025年吉林省中考語文試卷真題(含答案)
- 20250628紅餐產(chǎn)業(yè)研究院粥品品類發(fā)展報(bào)告2025284mb
- 2025至2030量子點(diǎn)增強(qiáng)膜顯示行業(yè)產(chǎn)業(yè)運(yùn)行態(tài)勢及投資規(guī)劃深度研究報(bào)告
- 企業(yè)品牌形象設(shè)計(jì)與宣傳服務(wù)合同
- 2025年原片玻璃市場調(diào)查報(bào)告
- 2025年中海油招聘筆試參考題庫附帶答案詳解
- 2025年全國新高考I卷高考全國一卷真題英語試卷(真題+答案)
- 抗震支架施工技術(shù)交底
- GB/T 4169.13-2006塑料注射模零件第13部分:復(fù)位桿
- 三基院感試題和答案
- 2023年荊州松滋市社區(qū)工作者招聘考試筆試題庫及答案解析
評(píng)論
0/150
提交評(píng)論