版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p> EDA技術(shù)課程設(shè)計(jì)報(bào)告</p><p> 題 目: 彩燈控制器一 </p><p> 學(xué) 院: 電氣與電子工程學(xué)院 </p><p> 專(zhuān) 業(yè): 電子信息工程 </p><p> 班 級(jí): </p><p&g
2、t; 姓 名: </p><p> 學(xué) 號(hào): </p><p><b> 2012年4月7日</b></p><p> 目 錄</p><p> 1.設(shè)計(jì)目的····
3、183;····································
4、3</p><p> 2.設(shè)計(jì)題目要求·······························
5、183;·····3</p><p> 3.設(shè)計(jì)原理··························
6、···············4</p><p> 3.1方案論證················
7、83;·······························4</p><p> 3.2模塊設(shè)計(jì)
8、····································
9、3;···········6</p><p> 3.3系統(tǒng)結(jié)構(gòu)····················&
10、#183;···························8</p><p> 4仿真波形····
11、····································
12、3;··9</p><p> 4.1波形圖1·····························&
13、#183;··················9</p><p> 4.2波形圖2············
14、3;···································10</p
15、><p> 5鎖管腳·································&
16、#183;··········10</p><p> 6附錄程序·····················
17、;·····················11</p><p> 6.1分頻器··········
18、183;····································
19、··11</p><p> 6.2 LED·····························
20、183;·····················14</p><p> 6.3 33進(jìn)制計(jì)數(shù)器·········
21、·································17</p><p>
22、; 6.4 4選1選擇器··································
23、83;········18</p><p> 7總結(jié)·······················
24、83;······················19</p><p> 8參考書(shū)目·········&
25、#183;································21</p><p>
26、<b> 1.設(shè)計(jì)目的</b></p><p> 學(xué)習(xí)EDA開(kāi)發(fā)軟件Quartus II的使用方法,熟悉可編程邏輯器件的使用,通過(guò)制作來(lái)了解彩燈控制系統(tǒng)。</p><p> 2.設(shè)計(jì)題目描述和要求</p><p> 1)有八只LED,L0……L7</p><p><b> 2)顯示順序如下表</
27、b></p><p> 3)顯示間隔為0.25S,0.5S,1S,2S可調(diào)。</p><p><b> 3.設(shè)計(jì)原理</b></p><p><b> 3.1 方案論證</b></p><p> 這次的彩燈設(shè)計(jì)采用的是分模塊來(lái)完成的,包括分頻器、計(jì)數(shù)器、彩燈控制器。其中彩燈控制器是用來(lái)
28、輸出不同的花樣,彩燈控制器的輸出則是用一個(gè)33進(jìn)制的計(jì)數(shù)器來(lái)控制。本次的彩燈控制采用的模式6來(lái)進(jìn)行顯示。</p><p><b> 3.2 模塊設(shè)計(jì)</b></p><p> 1)分頻器模塊(圖1)</p><p> 設(shè)計(jì)要求顯示間隔可調(diào),所以設(shè)計(jì)分頻器來(lái)實(shí)現(xiàn)間隔為0.25S,0.5S,1S,2S時(shí)間。</p><p&
29、gt; Rst:輸入信號(hào) 復(fù)位信號(hào)。</p><p> Clk:輸入信號(hào) 模塊的功能即為分頻輸入的頻率信號(hào)。</p><p> Clk_2、clk_4、clk_8、clk_16:輸出信號(hào) 即為分頻模塊對(duì)輸入信號(hào)clk的分頻,分別為1/2分頻輸出、1/4分頻輸出、1/8分頻輸出、1/16分頻輸出。</p><p> 2)33進(jìn)制計(jì)數(shù)器模塊(圖2)</p&
30、gt;<p> 33進(jìn)制模塊用來(lái)控制彩燈輸出模塊,即確定彩燈控制器的不同的輸出。</p><p> Rst:輸入信號(hào),復(fù)位信號(hào)。</p><p> Clk:輸入信號(hào),用來(lái)給模塊提供工作頻率。</p><p> Count-out[5..0]:輸出信號(hào),即為33進(jìn)制計(jì)數(shù)器的輸出。</p><p> 3)彩燈控制模塊(圖3
31、)</p><p> 彩燈控制模塊用來(lái)直接控制彩燈的輸出,使彩燈表現(xiàn)出不同的花樣。</p><p> Rst:輸入信號(hào) 使彩燈控制模塊輸出為“11111110”,即讓彩燈輸出“序號(hào)0”。</p><p> Input[5..0]:輸入信號(hào) 不同的輸入使彩燈控制模塊有不同的輸出即彩燈顯示出不同的花樣。</p><p> Output[7
32、..0]:輸出信號(hào) 直接與彩燈相連來(lái)控制彩燈。</p><p> 4) 4選1選擇器模塊(圖4)</p><p> Rst:輸入信號(hào) 復(fù)位信號(hào)。</p><p> In1、in2、in3、in4:輸入信號(hào) 接分頻器的輸出。</p><p> Inp[1..0]:輸入信號(hào) 用來(lái)控制選擇器的選擇,選擇可調(diào)時(shí)間。</p>&l
33、t;p> Output1:輸出信號(hào) 輸出不同的頻率來(lái)控制彩燈顯示頻率。</p><p> Output2[6..0]:輸出信號(hào) 顯示可調(diào)時(shí)間模式。</p><p> 3.3 系統(tǒng)結(jié)構(gòu)(圖5)</p><p> 整個(gè)系統(tǒng)就是各個(gè)分模塊組成來(lái)實(shí)現(xiàn)最后的彩燈控制功能,系統(tǒng)用時(shí)鐘來(lái)控制33進(jìn)制計(jì)數(shù)器即控制彩燈控制模塊來(lái)實(shí)現(xiàn)彩燈的不同輸出。</p>
34、<p><b> 4.時(shí)序仿真</b></p><p> 4.1波形圖1(圖6)</p><p> 4.2波形圖2(圖7)</p><p><b> 5.鎖管腳(圖8)</b></p><p><b> 6.附錄程序</b></p><
35、p> 6.1 33進(jìn)制計(jì)數(shù)器</p><p> LIBRARY ieee;</p><p> USE ieee.std_logic_1164.all;</p><p> ENTITY counter_33 IS</p><p><b> PORT</b></p><p><b
36、> (</b></p><p> clk,rst: INstd _logic;</p><p> count_ out: OUT integer range 0 to 32);</p><p> END counter_33;</p><p> ARCHITECTURE a OF counter_33
37、 IS</p><p><b> BEGIN</b></p><p> PROCESS (rst,clk)</p><p> variable temp:integer range 0 to 33;</p><p><b> BEGIN</b></p><p>
38、IF rst='1' THEN temp:=0;</p><p> ELSIF (clk'event and clk='1') THEN </p><p> temp:=temp+1;</p><p> if(temp=33) then temp:=0;</p><p><b> e
39、nd if;</b></p><p><b> END IF;</b></p><p> count_ out<=temp;</p><p> END PROCESS;</p><p><b> END a;</b></p><p><
40、b> 6.2分頻器</b></p><p> LIBRARY ieee;</p><p> USE ieee.std_logic_1164.all;</p><p> ENTITY fenpinqi IS</p><p><b> PORT</b></p><p>&l
41、t;b> (</b></p><p> clk,rst: INstd_logic;</p><p> clk_2,clk_4,clk_8,clk_16: OUT std_logic</p><p><b> );</b></p><p> END fenpinqi;</p>
42、<p> ARCHITECTURE cd OF fenpinqi IS</p><p><b> Begin</b></p><p> p1:process(clk,rst)</p><p> variable a:integer range 0 to 20;</p><p><b>
43、begin</b></p><p> if rst='1' then clk_2<='0'; </p><p><b> else</b></p><p> if clk'event and clk='1'then</p>
44、;<p> if a>=1 then</p><p><b> a:=0;</b></p><p> clk_2<='1';</p><p><b> else</b></p><p><b> a:=a+1;</b><
45、/p><p> clk_2<='0';</p><p><b> end if;</b></p><p><b> end if;</b></p><p><b> end if;</b></p><p> end proce
46、ss p1;</p><p> p2:process(clk,rst)</p><p> variable b:integer range 0 to 20;</p><p><b> begin</b></p><p> if rst='1' then</p><p>
47、clk_4<='0'; </p><p><b> else</b></p><p> if clk'event and clk='1'then</p><p> if b>=3 then</p><p><b> b
48、:=0;</b></p><p> clk_4<='1';</p><p><b> else</b></p><p><b> b:=b+1;</b></p><p> clk_4<='0';</p><p>
49、<b> end if;</b></p><p><b> end if;</b></p><p><b> end if;</b></p><p> end process p2;</p><p> p3:process(clk,rst)</p>&l
50、t;p> variable c:integer range 0 to 20;</p><p><b> begin</b></p><p> if rst='1' then</p><p> clk_8<='0'; </p><p><b>
51、; else</b></p><p> if clk'event and clk='1'then</p><p> if c>=7 then</p><p><b> c:=0;</b></p><p> clk_8<='1';</p>
52、<p><b> else</b></p><p><b> c:=c+1;</b></p><p> clk_8<='0';</p><p><b> end if;</b></p><p><b> end if;&l
53、t;/b></p><p><b> end if;</b></p><p> end process p3;</p><p> p4:process(clk,rst)</p><p> variable d:integer range 0 to 20;</p><p><b&
54、gt; begin</b></p><p> if rst='1' then</p><p> clk_16<='0'; </p><p><b> else</b></p><p> if clk'event and c
55、lk='1'then</p><p> if d>=15 then</p><p><b> d:=0;</b></p><p> clk_16<='1';</p><p><b> else</b></p><p><
56、;b> d:=d+1;</b></p><p> clk_16<='0';</p><p><b> end if;</b></p><p><b> end if;</b></p><p><b> end if;</b>&l
57、t;/p><p> end process p4;</p><p><b> end cd;</b></p><p><b> 6.3 LED</b></p><p> LIBRARY ieee;</p><p> USE ieee.std_logic_1164.all
58、;</p><p> ENTITY LED IS</p><p><b> PORT</b></p><p><b> ( </b></p><p> input: ININTEGER RANGE 0 TO 32;</p><p> rst:in std _
59、logic; </p><p> output: OUT std_ logic _vector(7 downto 0)</p><p><b> );</b></p><p><b> END LED;</b></p><p> ARCHITECTURE a OF LED IS&l
60、t;/p><p><b> BEGIN</b></p><p> PROCESS (input)</p><p><b> BEGIN</b></p><p> if rst='1' then output<="11111110";</p>
61、<p><b> else</b></p><p> case input is</p><p> when 0=>output<="11111110";</p><p> when 1=>output<="01111111";</p><p
62、> when 2=>output<="10111111";</p><p> when 3=>output<="11011111";</p><p> when 4=>output<="11101111";</p><p> when 5=>outpu
63、t<="11110111";</p><p> when 6=>output<="11111011";</p><p> when 7=>output<="11111101";</p><p> when 8=>output<="11111110&q
64、uot;;</p><p> when 9=>output<="11111111";</p><p> when 10=>output<="01111111";</p><p> when 11=>output<="00111111";</p><
65、;p> when 12=>output<="00011111";</p><p> when 13=>output<="00001111";</p><p> when 14=>output<="00000111";</p><p> when 15=>
66、;output<="00000011"; </p><p> when 16=>output<="00000001";</p><p> when 17=>output<="00000000";</p><p> when 18=>output<="
67、10000000";</p><p> when 19=>output<="11000000";</p><p> when 20=>output<="11100000";</p><p> when 21=>output<="11110000";<
68、/p><p> when 22=>output<="11111000";</p><p> when 23=>output<="11111100";</p><p> when 24=>output<="11111110";</p><p>
69、when 25=>output<="10000000";</p><p> when 26=>output<="01000000";</p><p> when 27=>output<="00100000";</p><p> when 28=>output&
70、lt;="00010000";</p><p> when 29=>output<="00001000";</p><p> when 30=>output<="00000100";</p><p> when 31=>output<="00000010&
71、quot;;</p><p> when 32=>output<="00000001";</p><p> when others=>null;</p><p><b> end case;</b></p><p><b> end if;</b><
72、;/p><p> end process;</p><p><b> end a;</b></p><p> 6.4 4選1選擇器</p><p> LIBRARY ieee;</p><p> USE ieee.std_logic_1164.all;</p><p>
73、; ENTITY xzq4_1 IS</p><p><b> PORT</b></p><p><b> ( </b></p><p> rst: in std _logic;</p><p> inp: in std_ logic_ vector(1 downto 0);</
74、p><p> in1,in2,in3,in4: In std _logic;</p><p> output1: out std_ logic;</p><p> output2: out std_ logic _vector(6 downto 0)</p><p><b> );</b></p>
75、;<p> END xzq4_1;</p><p> ARCHITECTURE a OF xzq4_1 IS</p><p> SIGNAL OUTPUT: std_logic_vector(6 downto 0);</p><p><b> BEGIN</b></p><p> PROCESS
76、 (rst,inp)</p><p><b> BEGIN</b></p><p> if(rst='1') then output1<='0';</p><p><b> else</b></p><p> case inp is</p>
77、<p> when "00"=>output1<=in1;OUTPUT<="0111111"; </p><p> when "01"=>output1<=in2;OUTPUT<="0000110";</p><p> when "10"
78、;=>output1<=in3;OUTPUT<="1011011";</p><p> when "11"=>output1<=in4;OUTPUT<="1001111";</p><p> when others=>null;</p><p> end ca
79、se; </p><p><b> end if;</b></p><p> output2<=OUTPUT;</p><p> END PROCESS;</p><p><b> END a;</b></p><p><b> 7.總結(jié)
80、</b></p><p> 做課程設(shè)計(jì)的時(shí)間雖然很短暫,但從中獲益匪淺,首先對(duì)EDA這門(mén)課程有了更深的了解,無(wú)形中便加深了對(duì)EDA的了解及運(yùn)用能力。以學(xué)的到很多很多同時(shí)不僅可以鞏固以前所學(xué)過(guò)的知識(shí),而且學(xué)到了很多在書(shū)本上所沒(méi)有學(xué)到過(guò)的知識(shí)。EDA設(shè)計(jì)對(duì)我們的總體電路的設(shè)計(jì)的要求更嚴(yán)格,需要通過(guò)翻閱復(fù)習(xí)以前學(xué)過(guò)的知識(shí)確立了實(shí)驗(yàn)總體設(shè)計(jì)方案,然后逐步細(xì)化進(jìn)行各模塊的設(shè)計(jì);通過(guò)這次設(shè)計(jì),進(jìn)一步加深了對(duì)ED
81、A的了解,讓我對(duì)它有了更加濃厚的興趣。特別是當(dāng)每一個(gè)子模塊編寫(xiě)調(diào)試成功時(shí),心里特別的開(kāi)心。但是在編寫(xiě)頂層文件的程序時(shí),遇到了不少問(wèn)題,特別是各元件之間的連接,以及信號(hào)的定義,總是有錯(cuò)誤,在細(xì)心的檢查下,終于找出了錯(cuò)誤和警告,排除困難后,程序編譯就通過(guò)了,心里終于舒了一口氣。在波形仿真時(shí),也遇到了一點(diǎn)困難,在設(shè)定輸入信號(hào)后,想要的結(jié)果不能在波形上得到正確的顯示,在數(shù)十次的調(diào)試之后,才發(fā)現(xiàn)是因?yàn)檩斎氲臅r(shí)鐘信號(hào)對(duì)于器件的延遲時(shí)間來(lái)說(shuō)太短了。經(jīng)
82、過(guò)屢次調(diào)試,終于找到了比較合適的輸入數(shù)值。另外,Endtime的值需要設(shè)置的長(zhǎng)一點(diǎn):10s左右,這樣就可以觀察到完整的仿真結(jié)果。使我對(duì)電路故障的排查能力有了很大的提高。</p><p> 其次,在連接各個(gè)模塊的時(shí)候一定要注意各個(gè)輸入、輸出引腳的線寬,因?yàn)槊總€(gè)線寬是不一樣的,只要讓各個(gè)線寬互相匹配,才能得出正確的結(jié)果,否則,出現(xiàn)任何一點(diǎn)小的誤差就會(huì)導(dǎo)致整個(gè)文件系統(tǒng)的編譯出現(xiàn)錯(cuò)誤提示,在器件的選擇上也有一定的技巧,
83、只有選擇了合適當(dāng)前電路所適合的器件,編譯才能得到完滿成功。</p><p> 通過(guò)這次課程設(shè)計(jì)使我懂得了理論與實(shí)際相結(jié)合是很重要的,只有理論知識(shí)是遠(yuǎn)遠(yuǎn)不夠的,只有把所學(xué)的理論知識(shí)與實(shí)踐相結(jié)合起來(lái),才能提高自己的實(shí)際動(dòng)手能力和獨(dú)立思考的能力。在設(shè)計(jì)的過(guò)程中遇到問(wèn)題,可以說(shuō)得是困難重重,這畢竟第一次做的,難免會(huì)遇到過(guò)各種各樣的問(wèn)題,同時(shí)在設(shè)計(jì)的過(guò)程中發(fā)現(xiàn)了自己的不足之處,對(duì)以前所學(xué)過(guò)的知識(shí)理解得不夠深刻,掌握得不夠
84、牢固。</p><p> 總的來(lái)說(shuō),這次設(shè)計(jì)的彩燈控制電路還是比較成功的,達(dá)到了理論與實(shí)際相結(jié)合的目的,不僅學(xué)到了不少知識(shí),而且鍛煉了自己的能力.同時(shí),對(duì)未來(lái)有了更多的信心。最后,對(duì)給過(guò)我?guī)椭乃型瑢W(xué)和各位指導(dǎo)老師再次表示忠心的感謝。</p><p><b> 8.參考書(shū)目</b></p><p> 金西,《VHDL與復(fù)雜數(shù)字系統(tǒng)設(shè)計(jì)》
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- eda課程設(shè)計(jì)彩燈控制器
- eda課程設(shè)計(jì)-彩燈控制器
- eda課程設(shè)計(jì)---節(jié)日彩燈控制器
- eda課程設(shè)計(jì)--多路彩燈控制器
- 《eda技術(shù)》課程設(shè)計(jì)報(bào)告----彩燈控制器
- eda課程設(shè)計(jì)--多路彩燈控制器的設(shè)計(jì)
- eda課程設(shè)計(jì)一個(gè)彩燈控制器
- 彩燈控制器課程設(shè)計(jì)--流水彩燈控制器
- 彩燈控制器課程設(shè)計(jì)
- 彩燈控制器課程設(shè)計(jì)
- 課程設(shè)計(jì)-- 彩燈控制器
- 彩燈控制器課程設(shè)計(jì)
- 彩燈控制器課程設(shè)計(jì)
- eda彩燈控制課程設(shè)計(jì)
- eda課程設(shè)計(jì)--用vhdl實(shí)現(xiàn)多路彩燈控制器的設(shè)計(jì)
- 彩燈控制器課程設(shè)計(jì)
- 課程設(shè)計(jì)--彩燈控制器
- 彩燈控制器課程設(shè)計(jì) (3)
- 課程設(shè)計(jì)報(bào)告彩燈控制器
- 多路彩燈控制器 課程設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論