多路彩燈控制器的設(shè)計 (2) 精品.doc_第1頁
多路彩燈控制器的設(shè)計 (2) 精品.doc_第2頁
多路彩燈控制器的設(shè)計 (2) 精品.doc_第3頁
多路彩燈控制器的設(shè)計 (2) 精品.doc_第4頁
多路彩燈控制器的設(shè)計 (2) 精品.doc_第5頁
已閱讀5頁,還剩7頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

EDA技術(shù)與VHDL語言1 解決方案1.1 方案我用VHDL語言設(shè)計了一個十六路彩燈控制器,六種花型循環(huán)變化,有異步清零開關(guān),并且可以選擇快慢兩種節(jié)拍。本控制電路采用VHDL語言設(shè)計。運用自頂而下的設(shè)計思想,按功能逐層分割實現(xiàn)層次化設(shè)計。根據(jù)多路彩燈控制器的設(shè)計原理,將整個控制器分為兩個部分,分別為時序控制模塊和顯示控制模塊。時序控制模塊實現(xiàn)的功能是產(chǎn)生1/4和1/8的時鐘信號。顯示控制模塊中實現(xiàn)的六種花型分別為:101010101010101011001100110011001110001110001110111100001111000011111000001111101111110000001111整個電路僅有時序控制和顯示控制兩個模塊。1.2 說明我們可以從兩方面入手。先寫時序控制模塊,再寫顯示控制模塊。最后用例化語句。把他們結(jié)合在一起。實現(xiàn)元器件的組合。2 模塊設(shè)計及其功能描述2.1模塊功能描述時序控制模塊的功能是產(chǎn)生輸入脈沖的1/4分頻脈沖信號和1/8分頻脈沖信號,以此控制十六路彩燈的快慢節(jié)奏變化。時序模塊有3個輸入1個輸出。CHOOSE是控制彩燈變換快慢的。CHOOSE=1時,輸出1/4/分頻脈沖信號。CHOOSE=0時,輸出1/8分頻脈沖信號。CLK_IN是輸入的脈沖信號。RESET是置位信號。高電平有效。CLKOUT是輸出信號。顯示控制模塊的功能是使電路產(chǎn)生六種花型并且循環(huán)顯示,以此實現(xiàn)本次課程設(shè)計要求實現(xiàn)的多路彩燈控制器的花型循環(huán)顯示功能。顯示模塊有2輸入1個輸出。CLK是時鐘輸入信號。RESET是置位信號,高電平有效。Q是輸出信號,輸出6種彩燈變化。2.2時序控制模塊1.時序控制模塊文本輸入和截圖:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY fenpin ISPORT(CHOOSE:IN STD_LOGIC;CLK:IN STD_LOGIC;RESET:IN STD_LOGIC;CLKOUT:OUT STD_LOGIC);END fenpin;ARCHITECTURE BEHAV OF fenpin ISSIGNAL CLLK:STD_LOGIC;BEGINPROCESS(CLK,RESET,CHOOSE)ISVARIABLE COUNT:STD_LOGIC_VECTOR(2 DOWNTO 0);BEGINIF RESET=1 THEN CLLK=0;COUNT:=000;ELSIF RISING_EDGE(CLK)THENIF CHOOSE=1 THENIF COUNT=011THEN COUNT:=000;CLLK=NOT CLLK;ELSECOUNT:=COUNT+1;END IF;ELSEIF COUNT=111THEN COUNT:=000;CLLK=NOT CLLK;ELSECOUNT:=COUNT+1;END IF;END IF;END IF;END PROCESS;CLKOUT=CLLK;END ARCHITECTURE BEHAV;2.時序控制模塊波形仿真截圖:2.3 顯示控制模塊1.時序控制模塊文本輸入和截圖:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY machine ISPORT(CLK:IN STD_LOGIC;RESET:IN STD_LOGIC;Q:OUT STD_LOGIC_VECTOR(15 DOWNTO 0);END machine;ARCHITECTURE BEHAV OF machine ISTYPE STATE IS(S0,S1,S2,S3,S4,S5,S6);SIGNAL CURRENT_STATE:STATE;SIGNAL QQ:STD_LOGIC_VECTOR(15 DOWNTO 0);BEGINPROCESS(RESET,CLK)ISCONSTANT F1:STD_LOGIC_VECTOR(15 DOWNTO 0):=1010101010101010;CONSTANT F2:STD_LOGIC_VECTOR(15 DOWNTO 0):=1100110011001100;CONSTANT F3:STD_LOGIC_VECTOR(15 DOWNTO 0):=1110001110001110;CONSTANT F4:STD_LOGIC_VECTOR(15 DOWNTO 0):=1111000011110000;CONSTANT F5:STD_LOGIC_VECTOR(15 DOWNTO 0):=1111100000111110;CONSTANT F6:STD_LOGIC_VECTOR(15 DOWNTO 0):=1111110000001111;BEGINIF RESET=1 THENCURRENT_STATEQQ=0000000000000000;CURRENT_STATEQQ=F1;CURRENT_STATEQQ=F2;CURRENT_STATEQQ=F3;CURRENT_STATEQQ=F4;CURRENT_STATEQQ=F5;CURRENT_STATEQQ=F6;CURRENT_STATE=S1;END CASE;END IF;END PROCESS;QC,CLK=CLK,RESET=RESET,CLKOUT=S1);U2:machine PORT MAP(CLK=S1,RESET=RESET,Q=Q);end one;2. 整體模塊RTL電路圖截圖:3.整體控制模塊波形仿真截圖:4 總 結(jié)此次EDA課程設(shè)計時間比較緊張。同學(xué)們因為剛?cè)胧炙远疾辉趺磿肣uartus II 4.0這個軟件。通過我們不停的上網(wǎng)找資料,我終于大致了解了如何將整個系統(tǒng)根據(jù)不同的功能化分成模塊,再分別進(jìn)行設(shè)計,逐個攻破,最后再將其整合。用VHDL進(jìn)行設(shè)計,首先應(yīng)該理解,VHDL語言是一種全方位硬件描述語言,包括系統(tǒng)行為級,寄存器傳輸級和邏輯門級多個設(shè)計層次。應(yīng)充分利用VHDL“自頂向下”的設(shè)計優(yōu)點以及層次化的設(shè)計概念,層次概念對于設(shè)計復(fù)雜的數(shù)字系統(tǒng)是非常有用的,它使得我們可以從簡單的單元入手,逐漸構(gòu)成龐大而復(fù)雜的系統(tǒng)。通過使用EDA編程既方便有快捷的實現(xiàn)了程序本次設(shè)計的程序已經(jīng)在硬件系統(tǒng)上得到了驗證 ,實驗表明 ,此設(shè)計方法能夠滿足多種不同花樣彩燈的變化要求 ,并且該方法便于擴(kuò)展不同變化模式的彩燈花樣。但是試驗中也出現(xiàn)了一些不熟練的操作問題和一些復(fù)雜程序的不能完全理解都需要我在平時多學(xué)習(xí),進(jìn)一步的完善自己。在實習(xí)中經(jīng)常會遇到一些自己可能暫時無法想明白的問題,請教同學(xué)或老師是很好的做法,節(jié)省時間也會從別人上上學(xué)到更多。在設(shè)計時和同學(xué)相互交流各自的想法也是很重要的,不同的人對問題的看法總有差異,我們可以從交流中獲得不同的思路,其他人的設(shè)計一定有比你出色的地方,很好的借鑒,并在大家的商討中

溫馨提示

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

評論

0/150

提交評論