eda課程設(shè)計(jì)--用vhdl實(shí)現(xiàn)多路彩燈控制器的設(shè)計(jì)_第1頁
已閱讀1頁,還剩7頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、<p><b>  EDA課程設(shè)計(jì)報(bào)告</b></p><p>  用VHDL實(shí)現(xiàn)多路彩燈控制器的設(shè)計(jì)</p><p><b>  班級(jí): </b></p><p><b>  成員:</b></p><p>  成績(jī): </p>

2、<p><b>  電子工程系</b></p><p><b>  2013年5月</b></p><p><b>  一、設(shè)計(jì)要求</b></p><p>  設(shè)計(jì)一個(gè)彩燈控制程序器??梢詫?shí)現(xiàn)四種花型循環(huán)變化,有復(fù)位開關(guān)。整個(gè)系統(tǒng)共有三個(gè)輸入信號(hào)CLK,RST,Sel,八個(gè)輸出信號(hào)控制

3、八個(gè)彩燈。時(shí)鐘信號(hào)CLK脈沖由系統(tǒng)的晶振產(chǎn)生。各種不同花樣彩燈的變換由Sel控制.此彩燈控制系統(tǒng)設(shè)定有四種花樣變化,這四種花樣可以進(jìn)行切換,四種花樣分別為:</p><p>  (1) 彩燈從左到右逐次閃亮。</p><p> ?。?)彩燈從左向右逐次點(diǎn)亮,且亮后不熄滅。</p><p>  (3) 彩燈兩邊同時(shí)亮兩個(gè),然后逐次向中間點(diǎn)亮。</p>&

4、lt;p> ?。?)彩燈全亮,向中間熄滅,再向兩邊點(diǎn)亮。</p><p> ?。?)彩燈中間兩熄滅,依次向外擴(kuò)兩燈熄滅,呈菱形滅燈。</p><p>  (6)彩燈呈菱形點(diǎn)亮。</p><p>  (7)彩燈中間兩個(gè)滅燈,中間兩個(gè)滅燈,依次外擴(kuò)。</p><p>  (8) 全部彩燈亮與熄滅交替。</p><p>

5、;<b>  二、設(shè)計(jì)思路</b></p><p>  彩燈的一種點(diǎn)亮方式經(jīng)過足夠長(zhǎng)的延時(shí)后,轉(zhuǎn)變?yōu)榱似渌狞c(diǎn)亮方式。這就需要一個(gè)CLK信號(hào)完成,CLK信號(hào)可以由晶體振蕩器或者是振蕩電路產(chǎn)生。至于各種不同花樣彩燈的變換,我們可以通過增加輸入信號(hào)Sel來控制。Sel為三位二進(jìn)制數(shù),分別為000,001,010,100,101,110,111,八種狀態(tài)對(duì)應(yīng)八種花樣。同時(shí)系統(tǒng)還需一個(gè)復(fù)位信號(hào)實(shí)現(xiàn)對(duì)

6、電路的清零控制。輸出八位彩燈,我們這里用LED發(fā)光二極管代替。當(dāng)電路輸出為“1”時(shí),LED點(diǎn)亮。當(dāng)電路輸出為“0”時(shí),LED熄滅</p><p><b>  三、成員分工</b></p><p><b>  四、源程序</b></p><p>  LIBRARY ieee;</p><p>  US

7、E ieee.std_logic_1164.ALL;</p><p>  ENTITY deng IS </p><p>  PORT(cLK,rst:IN std_LOGIC; </p><p>  sel:in std_LOGIC_VECTOR(2 DOWNTO 0); </p><p>  abc:OUT std_

8、LOGIC_VECTOR(7 DOWNTO 0) ); </p><p><b>  END deng;</b></p><p>  ARCHITECTURE color OF deng IS</p><p>  TYPE state_1 IS (s0,s1,s2,s3,s4,s5,s6,s7);</p><p> 

9、 SIGNAL state_2:state_1;</p><p><b>  BEGIN </b></p><p>  pr_1:PROCESS (cLK,rst) </p><p>  BEGIN </p><p>  IF rst='1' THEN

10、 state_2<=s0; </p><p>  ELSIF cLK'event AND cLK='1' THEN </p><p>  CASE state_2 IS </p><p>  WHEN s0=> state_2<=s1; </p><p>  WHE

11、N s1=> state_2<=s2;</p><p>  WHEN s2=> state_2<=s3; </p><p>  WHEN s3=> state_2<=s4; </p><p>  WHEN s4=> state_2<=s5;</p><p>  WHEN s

12、5=> state_2<=s6;</p><p>  WHEN s6=> state_2<=s7; </p><p>  WHEN s7=> state_2<=s0;</p><p>  END CASE; </p><p><b>  END IF; </b></p

13、><p>  END PROCESS pr_1; </p><p>  pr_2:PROCESS(sel,state_2) </p><p>  BEGIN </p><p>  if sel="000" then —— 彩燈從左到右逐次閃亮</p><p> 

14、 CASE state_2 IS </p><p>  WHEN s0=> abc<="10000000"; </p><p>  WHEN s1=> abc<="01000000"; </p><p>  WHEN s2=> abc<=&quo

15、t;00100000"; </p><p>  WHEN s3=> abc<="00010000"; </p><p>  WHEN s4=> abc<="00001000"; </p><p>  WHEN s5=> abc<="0000010

16、0"; </p><p>  WHEN s6=> abc<="00000010"; </p><p>  WHEN s7=> abc<="00000001"; </p><p>  END CASE; </p><p>  elsif sel

17、="001" then ——彩燈從左向右逐次點(diǎn)亮,且亮后不熄滅</p><p>  CASE state_2 IS </p><p>  WHEN s0=> abc<="10000000"; </p><p>  WHEN s1=>

18、abc<="11000000"; </p><p>  WHEN s2=> abc<="11100000"; </p><p>  WHEN s3=> abc<="11110000"; </p><p> 

19、 WHEN s4=> abc<="11111000"; </p><p>  WHEN s5=> abc<="11111100"; </p><p>  WHEN s6=> abc<="11111110"; </p>

20、<p>  WHEN s7=> abc<="11111111"; </p><p>  END CASE; </p><p>  elsif sel="010" then ——彩燈兩邊同時(shí)亮兩個(gè),然后逐次向中間點(diǎn)亮</p><p>  CASE state_

21、2 IS </p><p>  WHEN s0=> abc<="10000001"; </p><p>  WHEN s1=> abc<="01000010"; </p><p>  WHEN s2=> abc<=&qu

22、ot;00100100"; </p><p>  WHEN s3=> abc<="00011000"; </p><p>  WHEN s4=> abc<="00100100"; </p><p>  WHEN s5=&

23、gt; abc<="01000010"; </p><p>  WHEN s6=> abc<="10000001"; </p><p>  WHEN s7=> abc<="11111111"; </p><p>  E

24、ND CASE; </p><p>  elsif sel="011" then ——彩燈全亮,向中間熄滅,再向兩邊點(diǎn)亮</p><p>  CASE state_2 IS </p><p>  WHEN s0=> abc<="11111111";

25、 </p><p>  WHEN s1=> abc<="01111110"; </p><p>  WHEN s2=> abc<="00111100"; </p><p>  WHEN s3=> abc<="0001

26、1000"; </p><p>  WHEN s4=> abc<="00011000"; </p><p>  WHEN s5=> abc<="00111100"; </p><p>  WHEN s6=> abc<

27、;="01111110"; </p><p>  WHEN s7=> abc<="11111111"; </p><p><b>  END CASE;</b></p><p>  elsif sel="100" then

28、 ——彩燈中間兩熄滅,依次向外擴(kuò)兩燈熄滅,呈菱形滅燈</p><p>  CASE state_2 IS </p><p>  WHEN s0=> abc<="11100111"; </p><p>  WHEN s1=> abc<="11000011"

29、;; </p><p>  WHEN s2=> abc<="10000001"; </p><p>  WHEN s3=> abc<="00000000"; </p><p>  WHEN s4=> abc<="

30、;10000001"; </p><p>  WHEN s5=> abc<="11000011"; </p><p>  WHEN s6=> abc<="11100111"; </p><p>  WHEN s7=> abc

31、<="00000000"; </p><p><b>  END CASE;</b></p><p>  elsif sel="101" then ——彩燈呈菱形點(diǎn)亮</p><p>  CASE state_2 IS </p&g

32、t;<p>  WHEN s0=> abc<="00011000"; </p><p>  WHEN s1=> abc<="00111100"; </p><p>  WHEN s2=> abc<="01111110";

33、 </p><p>  WHEN s3=> abc<="11111111"; </p><p>  WHEN s4=> abc<="01111110"; </p><p>  WHEN s5=> abc<="00111100

34、"; </p><p>  WHEN s6=> abc<="00011000"; </p><p>  WHEN s7=> abc<="00000000"; </p><p><b>  END CASE;</b>

35、;</p><p>  elsif sel="110" then ——彩燈中間兩個(gè)滅燈,中間兩個(gè)滅燈,依次外擴(kuò)</p><p>  CASE state_2 IS </p><p>  WHEN s0=> abc<="11100111";

36、 </p><p>  WHEN s1=> abc<="00011000"; </p><p>  WHEN s2=> abc<="11000011"; </p><p>  WHEN s3=> abc<="00111100&quo

37、t;; </p><p>  WHEN s4=> abc<="10000001"; </p><p>  WHEN s5=> abc<="01111110"; </p><p>  WHEN s6=> abc<="

38、11000011"; </p><p>  WHEN s7=> abc<="00111100"; </p><p><b>  END CASE;</b></p><p>  elsif sel="111" then —

39、—全部彩燈亮與熄滅交替 </p><p>  CASE state_2 IS </p><p>  WHEN s0=> abc<="11111111"; </p><p>  WHEN s1=> abc<="00000000";

40、 </p><p>  WHEN s2=> abc<="11111111"; </p><p>  WHEN s3=> abc<="00000000"; </p><p>  WHEN s4=> abc<="11111111&quo

41、t;; </p><p>  WHEN s5=> abc<="00000000"; </p><p>  WHEN s6=> abc<="11111111"; </p><p>  WHEN s7=> abc<="00

42、000000"; </p><p><b>  END CASE;</b></p><p><b>  end if;</b></p><p>  END PROCESS pr_2;</p><p>  END color;</p><p>&l

43、t;b>  五、仿真結(jié)果</b></p><p>  (1)當(dāng)sel為000時(shí)的圖形,彩燈從左到右逐次閃亮。</p><p> ?。?)當(dāng)sel為001時(shí)的圖形,彩燈從左向右逐次點(diǎn)亮,且亮后不熄滅</p><p> ?。?)當(dāng)sel為010時(shí)的圖形,彩燈兩邊同時(shí)亮兩個(gè),然后逐次向中間點(diǎn)亮</p><p> ?。?)當(dāng)sel為

44、011時(shí)的圖形,彩燈全亮,向中間熄滅,再向兩邊點(diǎn)亮</p><p> ?。?)當(dāng)sel為100時(shí)的圖形,彩燈中間兩熄滅,依次向外擴(kuò)兩燈熄滅,呈菱形滅燈</p><p> ?。?)當(dāng)sel為101時(shí)的圖形,彩燈呈菱形點(diǎn)亮</p><p> ?。?)當(dāng)sel為110時(shí)的圖形,彩燈中間兩個(gè)滅燈,中間兩個(gè)滅燈,依次外擴(kuò)</p><p> ?。?)當(dāng)s

45、el為111時(shí)的圖形,全部彩燈亮與熄滅交替</p><p><b>  引腳鎖定完成(9)</b></p><p>  引腳鎖定完成(10)</p><p><b>  六、收獲體會(huì)</b></p><p>  1,從仿真波形可以看出,此程序可以實(shí)現(xiàn)八種不同花樣彩燈的相互變換,每種花樣彩燈可以循環(huán)變

46、化。然后就可以實(shí)現(xiàn)程序下載和硬件測(cè)試。主頻時(shí)鐘clk接CLOCK0(第83腳),但是如果系統(tǒng)的固有頻率很大,彩燈的閃爍速度非常快,看到的現(xiàn)象是每個(gè)花樣的八個(gè)彩燈同時(shí)被點(diǎn)亮,為了實(shí)現(xiàn)絢麗多彩的景象,選擇不同的頻率(在1Hz--46Hz之間選擇)能使彩燈點(diǎn)亮速度適宜。復(fù)位RST和Sel的高位與地位分別接四個(gè)鍵控。輸出八位彩燈分別對(duì)應(yīng)接八個(gè)LED發(fā)光二極管。實(shí)驗(yàn)表明,此設(shè)計(jì)方法能夠滿足八種不同花樣彩燈的變化要求,并且該方法便于擴(kuò)展不同變化模式

溫馨提示

  • 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. 眾賞文庫僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論