版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、<p> 《EDA技術(shù)》課程設(shè)計(jì)報(bào)告</p><p> 學(xué) 院: </p><p> 專 業(yè): </p><p> 班 級: </p><p> 姓 名: </p><p> 學(xué) 號(hào): </p
2、><p> 2012年12月30日</p><p><b> 目 錄</b></p><p><b> 自己填</b></p><p><b> 摘 要</b></p><p> 循環(huán)彩燈的電路很多,循環(huán)方式更是五花八門,而且有專門的可編程
3、彩燈集成電路。絕大多數(shù)的彩燈控制電路都是用數(shù)字電路來實(shí)現(xiàn)的,例如,用中規(guī)模集成電路實(shí)現(xiàn)的彩燈控制電路主要用計(jì)數(shù)器,譯碼器,分配器和移位寄存器等集成。本次設(shè)計(jì)的循環(huán)彩燈控制器就是用計(jì)數(shù)器和譯碼器來實(shí)現(xiàn),本彩燈控制器能實(shí)現(xiàn)四種不同的花型,在呈現(xiàn)出不同花型的同時(shí)發(fā)出四種不同的聲音,數(shù)碼管用以標(biāo)記當(dāng)前呈現(xiàn)的是哪種花型。</p><p> [關(guān)鍵詞]:計(jì)數(shù)器,二極管, 數(shù)碼管,分頻器</p><p&g
4、t;<b> 一.設(shè)計(jì)目的</b></p><p> 學(xué)習(xí)EDA開發(fā)軟件和MAX+plus Ⅱ的使用方法,熟悉可編程邏輯器件的使用,通過制作來了解彩燈控制系統(tǒng)。</p><p> 本次課程設(shè)計(jì)的主要目的是通過電子設(shè)計(jì)自動(dòng)化的設(shè)計(jì),掌握FPGA應(yīng)用系統(tǒng)的開發(fā)過程,進(jìn)一步理解FPGA應(yīng)用系統(tǒng)的工作原理。本課程設(shè)計(jì)設(shè)計(jì)了一個(gè)多路彩燈控制器,四種彩燈能循環(huán)變化,有清零開
5、關(guān),可以變化彩燈閃動(dòng)頻率即可以選擇不同的節(jié)拍。整個(gè)系統(tǒng)有三個(gè)輸入信號(hào),分別為音頻輸入脈沖信號(hào)clk2,復(fù)位清零信號(hào)CLR,彩燈輸入控制脈沖clk1。最后按照FPGA的開發(fā)流程和VHDL語言建模、仿真、綜合、下載、適配,用EDA6000實(shí)驗(yàn)箱上的FPGA系統(tǒng)實(shí)現(xiàn)了相應(yīng)的功能。</p><p> 通過這次課程設(shè)計(jì)更清楚的理解了VHDL程序的描述語言,能進(jìn)行簡單程序的編寫和仿真。</p><p&g
6、t; 二.設(shè)計(jì)題目描述和要求</p><p> 設(shè)計(jì)一個(gè)彩燈控制器,使彩燈(LED管)能連續(xù)發(fā)出四種以上不同的顯示形式;</p><p> 2)隨著彩燈顯示圖案的變化,發(fā)出不同的音響聲。</p><p><b> 3)擴(kuò)充其它功能。</b></p><p><b> 三.設(shè)計(jì)原理</b>&
7、lt;/p><p><b> 3.1 方案論證</b></p><p> 彩燈設(shè)計(jì)總體采用分模塊的方法來完成,包括分頻器、32進(jìn)制計(jì)數(shù)器、4進(jìn)制計(jì)數(shù)器、4選1選擇器、彩燈控制器五大部分。其中彩燈控制器是用來控制8個(gè)LED,使其呈現(xiàn)出不同的花型,而彩燈控制器的輸出則是由32進(jìn)制計(jì)數(shù)器來控制。揚(yáng)聲器輸出不同的響聲是通過加不同頻率的麻涌信號(hào)來實(shí)現(xiàn),不同頻率的信號(hào)送至揚(yáng)聲器會(huì)
8、發(fā)出不同的聲音。所以用了一個(gè)集成分頻器來將輸入的頻率分成幾種不同的頻率。不同頻率的選擇性輸出則是由一個(gè)4選一的選擇器來實(shí)現(xiàn)。</p><p> 在現(xiàn)實(shí)不同花形的同時(shí),伴隨有不同的聲音發(fā)出,而且通過數(shù)碼管現(xiàn)實(shí)1、2、3、4,標(biāo)志出所顯示的是哪一種花型。數(shù)碼管的顯示是由彩燈控制模塊來控制。</p><p><b> 3.2 模塊設(shè)計(jì)</b></p>&l
9、t;p> 3.2.1集成分頻器模塊</p><p> 設(shè)計(jì)要求顯示不同的彩燈的時(shí)候要伴隨不同的音樂,所以設(shè)計(jì)分頻器來用不同的頻率控制不同的音樂輸出。</p><p><b> 模塊說明:</b></p><p> Rst:輸入信號(hào) 復(fù)位信號(hào) 用來復(fù)位集成分頻器的輸出使輸出為“0”,及沒有音樂輸出,輸入此信號(hào)后,彩燈從第一種花型開始
10、順序循環(huán)。</p><p> Clk:輸入信號(hào) 此信號(hào)即為分頻輸入的頻率信號(hào)。</p><p> Clk_4、clk_6、clk_8、clk_10:輸出信號(hào) 即為分頻模塊對輸入信號(hào)clk的分頻,分別為1/4分頻輸出、1/6分頻輸出、1/8分頻輸出、1/10分頻輸出。</p><p> 圖3-2-1 集成分頻器</p><p> 3.2
11、.2 32進(jìn)制計(jì)數(shù)器模塊</p><p> 32進(jìn)制模塊用來控制彩燈輸出模塊,即確定彩燈控制器的不同的輸出。</p><p> Rst:輸入信號(hào) 復(fù)位信號(hào) 用來復(fù)位32進(jìn)制使其輸出為“00000”。</p><p> Clk:輸入信號(hào) 用來給模塊提供工作頻率。</p><p> Count_out[4..0]:輸出信號(hào) 即為32進(jìn)制計(jì)
12、數(shù)器的輸出。</p><p> 圖3-2-2 32進(jìn)制計(jì)數(shù)器</p><p> 3.2.3 彩燈控制模塊</p><p> 彩燈控制模塊用來直接控制彩燈的輸出,使彩燈表現(xiàn)出不同的花樣。</p><p> Rst:輸入信號(hào) 使彩燈控制模塊的輸出為“00000000”,即讓彩燈無輸出。</p><p> Inpu
13、t[4..0]:輸入信號(hào) 不同的輸入使彩燈控制模塊有不同的輸出即彩燈顯示出不同的花樣。</p><p> Output[7..0]:輸出信號(hào) 直接與彩燈相連來控制彩燈。</p><p> Sm[3..0]:輸出信號(hào) 用來控制數(shù)碼管使其顯示1、2、3、4,以此來標(biāo)志出不同的花型。</p><p> 圖3-2-3 彩燈控制模塊</p><p&g
14、t; 3.2.4 4選1選擇器模塊</p><p> Rst:輸入信號(hào) 復(fù)位信號(hào) 使選擇器的輸出為“0”。</p><p> In1、in2、in3、in4:輸入信號(hào) 接分頻器的輸出。</p><p> Inp[1..0]:輸入信號(hào) 接4進(jìn)制計(jì)數(shù)器的輸出用來控制選擇器的選擇不同的輸入選擇不同的輸出。</p><p> Output:
15、輸出信號(hào) 直接接揚(yáng)聲器即輸出的是不同的頻率來控制揚(yáng)聲器播放音樂。</p><p> 圖3-2-4 4選1選擇器</p><p> 3.2.5 4進(jìn)制計(jì)數(shù)器模塊</p><p> 4進(jìn)制計(jì)數(shù)器作為選擇器的輸入來控制選擇器選擇不同的頻率作為輸出控制揚(yáng)聲器工作。</p><p> Clk:輸入信號(hào) 來為計(jì)數(shù)器提供工作頻率。</p>
16、;<p> Rst:輸入信號(hào) 復(fù)位信號(hào) 使計(jì)數(shù)器的輸出為“00”。</p><p> 圖3-2-5 4進(jìn)制計(jì)數(shù)器</p><p><b> 3.3 系統(tǒng)結(jié)構(gòu)</b></p><p> 整個(gè)系統(tǒng)就是各個(gè)分模塊組成來實(shí)現(xiàn)最后的彩燈控制功能,系統(tǒng)又兩個(gè)時(shí)鐘來控制一個(gè)是控制32進(jìn)制計(jì)數(shù)器即控制彩燈控制模塊來實(shí)現(xiàn)彩燈的不同輸出,另一
17、個(gè)時(shí)鐘為分頻器的輸入來進(jìn)行分頻處理,最后用來控制揚(yáng)聲器發(fā)出不同的音樂,具體分頻處理的時(shí)鐘的頻率比實(shí)現(xiàn)彩燈控制的時(shí)鐘頻率要高。</p><p> 圖 3-3-1 系統(tǒng)功能模塊</p><p><b> 四.總結(jié)</b></p><p> 這次的EDA課程設(shè)計(jì)有一周的時(shí)間,在這一周的時(shí)間里我們充分合理的安排了自己的時(shí)間來使本次的課程設(shè)計(jì)能夠順
18、利的完成,當(dāng)然我們在本次的設(shè)計(jì)中并不是一帆風(fēng)順的,我們遇到了一些的問題,例如我們開始時(shí)用的文本的方式用一個(gè)總的程序來完成,可以在設(shè)計(jì)的過程中我們發(fā)現(xiàn)程序編到后面變量越到很容易搞混淆同時(shí)各個(gè)進(jìn)程間的聯(lián)系也越來越模糊以至于后面我們自己都不知道程序的整體框圖是什么,導(dǎo)致后面不能夠繼續(xù)下去,后面我們再一次對我們這次的設(shè)計(jì)題目進(jìn)行了分析和整理,最后我和我的同伴決定采用分模塊的方式來完成本次的課題設(shè)計(jì),當(dāng)然最重要的是分析各個(gè)模塊間的關(guān)系。最后我們采
19、用上面分析的結(jié)構(gòu)框圖。最后我們的設(shè)計(jì)很成功,仿真和硬件測試都是正確的,實(shí)現(xiàn)了我們的設(shè)計(jì)要求和目的。</p><p> 在這次設(shè)計(jì)中我們收獲了很多,首先最直接的收獲就是我們鞏固了這門課程所學(xué)過的知識(shí),把它運(yùn)用到了實(shí)踐當(dāng)中,并且學(xué)到了很多在書本撒和那個(gè)所沒有學(xué)到的知識(shí),通過查閱相關(guān)資料進(jìn)一步加深了對EDA的了??偟膩碚f,通過這次課程設(shè)計(jì)不僅鍛煉了我們的動(dòng)手和動(dòng)腦能力,也使我懂得了理論與實(shí)際相結(jié)合的重要性,只有理論知
20、識(shí)是遠(yuǎn)遠(yuǎn)不夠的,要把所學(xué)的理論知識(shí)與實(shí)踐相結(jié)合起來,才能提高自己的實(shí)際動(dòng)手能力和獨(dú)立思考的能力。在我們的共同努力和指導(dǎo)老師的指引下我們圓滿的完成了彩燈控制器的設(shè)計(jì),實(shí)現(xiàn)了設(shè)計(jì)目的。</p><p><b> 參考文獻(xiàn):</b></p><p> [1] 金西,《VHDL與復(fù)雜數(shù)字系統(tǒng)設(shè)計(jì)》,西安,西安電子科技大學(xué)出版社,2003</p><p
21、> [2] 漢澤西,《EDA技術(shù)及其應(yīng)用》,北京,北京航空航天大學(xué)出版社,2004</p><p> [3] 李廣軍 《可編程ASIC設(shè)計(jì)及應(yīng)用》,電子科技大學(xué)出版社,2005</p><p> [4] 謝自美,《電子線路設(shè)計(jì)·實(shí)驗(yàn)·測試》,華中理工大學(xué)出版社,2004</p><p> [5] 譚會(huì)生,《EDA技術(shù)》,西安
22、電子電子科技大學(xué)出版社,2004年</p><p><b> 附錄一. 編譯</b></p><p><b> 附錄二. 時(shí)序仿真</b></p><p><b> 附錄三. 程序</b></p><p> -------------------------分頻器模塊-
23、------------------------------</p><p> LIBRARY ieee;</p><p> USE ieee.std_logic_1164.all;</p><p> ENTITY fenpinqi IS</p><p><b> PORT</b></p><
24、p><b> (</b></p><p> clk,rst: INstd_logic;</p><p> clk_10,clk_4,clk_6,clk_8: OUT std_logic</p><p><b> );</b></p><p> END fenpinqi;&l
25、t;/p><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><
26、;b> begin</b></p><p> if rst='1' then</p><p> clk_4<='0'; ----- 復(fù)位信號(hào)控制部分</p><p><b> else</b></p><p> if
27、 clk'event and clk='1'then</p><p> if a>=3 then</p><p><b> a:=0;</b></p><p> clk_4<='1';</p><p><b> else</b></p
28、><p><b> a:=a+1;</b></p><p> clk_4<='0';</p><p><b> end if;</b></p><p><b> end if;</b></p><p><b> en
29、d if;</b></p><p> end process p1;</p><p> p2:process(clk,rst)</p><p> variable b:integer range 0 to 20;</p><p><b> begin</b></p><p>
30、 if rst='1' then</p><p> clk_6<='0'; ----- 復(fù)位信號(hào)控制部分</p><p><b> else</b></p><p> if clk'event and clk='1'then</p&
31、gt;<p> if b>=5 then</p><p><b> b:=0;</b></p><p> clk_6<='1';</p><p><b> else</b></p><p><b> b:=b+1;</b>&l
32、t;/p><p> clk_6<='0';</p><p><b> end if;</b></p><p><b> end if;</b></p><p><b> end if;</b></p><p> end pro
33、cess p2;</p><p> p3:process(clk,rst)</p><p> variable c:integer range 0 to 20;</p><p><b> begin</b></p><p> if rst='1' then</p><p>
34、 clk_8<='0'; ----- 復(fù)位信號(hào)控制部分</p><p><b> else</b></p><p> if clk'event and clk='1'then</p><p> if c>=7 then</p>&l
35、t;p><b> c:=0;</b></p><p> clk_8<='1';</p><p><b> else</b></p><p><b> c:=c+1;</b></p><p> clk_8<='0';&l
36、t;/p><p><b> end if;</b></p><p><b> end if;</b></p><p><b> end if;</b></p><p> end process p3;</p><p> p4:process(clk
37、,rst)</p><p> variable d:integer range 0 to 20;</p><p><b> begin</b></p><p> if rst='1' then</p><p> clk_10<='0'; -
38、---- 復(fù)位信號(hào)控制部分</p><p><b> else</b></p><p> if clk'event and clk='1'then</p><p> if d>=9 then</p><p><b> d:=0;</b></p>
39、<p> clk_10<='1';</p><p><b> else</b></p><p><b> d:=d+1;</b></p><p> clk_10<='0';</p><p><b> end if;</
40、b></p><p><b> end if;</b></p><p><b> end if;</b></p><p> end process p4;</p><p><b> end cd;</b></p><p> -------
41、-----------4選1選擇器--------------------------------</p><p> LIBRARY ieee;</p><p> USE ieee.std_logic_1164.all;</p><p> ENTITY xzq4_1 IS</p><p><b> PORT</b>
42、;</p><p><b> ( </b></p><p> rst:in std_logic;</p><p> inp:in integer range 0 to 3;</p><p> in1,in2,in3,in4: In std_logic;</p><p> outpu
43、t: OUT std_logic</p><p><b> );</b></p><p> END xzq4_1;</p><p> ARCHITECTURE a OF xzq4_1 IS</p><p><b> BEGIN</b></p><p> PRO
44、CESS (rst,inp)</p><p><b> BEGIN</b></p><p> if(rst='1') then output<='0';</p><p><b> else</b></p><p> case inp is</p&g
45、t;<p> when 0=>output<=in1; </p><p> when 1=>output<=in2;</p><p> when 2=>output<=in3;</p><p> when 3=>output<=in4; </p><p> when o
46、thers=>null;</p><p> end case; </p><p><b> end if;</b></p><p> END PROCESS;</p><p><b> END a;</b></p><p> -----------
47、------彩燈控制模塊----------------------------</p><p> LIBRARY ieee;</p><p> USE ieee.std_logic_1164.all;</p><p> ENTITY caideng IS</p><p><b> PORT</b></p&
48、gt;<p><b> (</b></p><p> input: ININTEGER RANGE 0 TO 31;</p><p> rst:in std_logic; </p><p> output: OUT std_logic_vector(7 downto 0);</p><p&g
49、t; sm :out std_logic_vector(6 downto 0)</p><p><b> );</b></p><p> END caideng;</p><p> ARCHITECTURE a OF caideng IS</p><p><b> BEGIN</b><
50、;/p><p> PROCESS (input)</p><p><b> BEGIN</b></p><p> if rst='1' then output<="00000000";sm<="0000000";</p><p><b>
51、else</b></p><p> case input is</p><p> when 0=>output<="10000000";sm<="0000110";</p><p> when 1=>output<="01000000";sm<=&quo
52、t;0000110";</p><p> when 2=>output<="00100000";sm<="0000110";</p><p> when 3=>output<="00010000";sm<="0000110";</p><p&
53、gt; when 4=>output<="00001000";sm<="0000110";</p><p> when 5=>output<="00000100";sm<="0000110";</p><p> when 6=>output<="0
54、0000010";sm<="0000110";</p><p> when 7=>output<="00000001";sm<="0000110";</p><p> when 8=>output<="00010000";sm<="0011011
55、";</p><p> when 9=>output<="00110000";sm<="0011011";</p><p> when 10=>output<="00111000";sm<="0011011";</p><p> whe
56、n 11=>output<="01111000";sm<="0011011";</p><p> when 12=>output<="01111100";sm<="0011011";</p><p> when 13=>output<="011111
57、10";sm<="0011011";</p><p> when 14=>output<="11111110";sm<="0011011";</p><p> when 15=>output<="11111111";sm<="0011011&qu
58、ot;;</p><p> when 16=>output<="10000001";sm<="1001111";</p><p> when 17=>output<="11000001";sm<="1001111";</p><p> when
59、18=>output<="11000011";sm<="1001111";</p><p> when 19=>output<="11100011";sm<="0011011";</p><p> when 20=>output<="11100111
60、";sm<="1001111";</p><p> when 21=>output<="11110111";sm<="1001111";</p><p> when 22=>output<="11111111";sm<="1001111"
61、;;</p><p> when 23=>output<="00001000";sm<="1001111";</p><p> when 24=>output<="00000001";sm<="0100110";</p><p> when 25
62、=>output<="00000010";sm<="0100110";</p><p> when 26=>output<="00000100";sm<="0100110";</p><p> when 27=>output<="00001000&q
63、uot;;sm<="0100110";</p><p> when 28=>output<="00010000";sm<="0100110";</p><p> when 29=>output<="00100000";sm<="0100110";
64、</p><p> when 30=>output<="01000000";sm<="0100110";</p><p> when 31=>output<="10000000";sm<="0100110";</p><p> when othe
65、rs=>null;</p><p><b> end case;</b></p><p><b> end if;</b></p><p> end process;</p><p><b> end a;</b></p><p> --
66、---------------32進(jìn)制計(jì)數(shù)器模塊-----------------------------</p><p> LIBRARY ieee;</p><p> USE ieee.std_logic_1164.all;</p><p> ENTITY counter_32 IS</p><p><b> PORT&
67、lt;/b></p><p><b> (</b></p><p> clk,rst: INstd_logic;</p><p> count_out: OUT integer range 0 to 31);</p><p> END counter_32;</p><p&
68、gt; ARCHITECTURE a OF counter_32 IS</p><p><b> BEGIN</b></p><p> PROCESS (rst,clk)</p><p> variable temp:integer range 0 to 32;</p><p><b> BEGIN
69、</b></p><p> IF rst='1' THEN</p><p><b> temp:=0;</b></p><p> ELSIF (clk'event and clk='1') THEN</p><p> temp:=temp+1;</p&g
70、t;<p> if(temp=32) then</p><p><b> temp:=0;</b></p><p><b> end if;</b></p><p><b> END IF;</b></p><p> count_out<=te
71、mp;</p><p> END PROCESS;</p><p><b> END a;</b></p><p> ---------------4進(jìn)制計(jì)數(shù)器模塊-------------------------------</p><p> LIBRARY ieee;</p><p&g
72、t; USE ieee.std_logic_1164.all;</p><p> ENTITY counter_4 IS</p><p><b> PORT</b></p><p><b> (</b></p><p> clk,rst: INstd_logic;</p>
73、<p> count_out: OUT integer range 0 to 3);</p><p> END counter_4;</p><p> ARCHITECTURE a OF counter_4 IS</p><p><b> BEGIN</b></p><p> PROCE
74、SS (rst,clk)</p><p> variable temp:integer range 0 to 32;</p><p><b> BEGIN</b></p><p> IF rst='1' THEN</p><p><b> temp:=0;</b></p
75、><p> ELSIF (clk'event and clk='1') THEN</p><p> temp:=temp+1;</p><p> if(temp=4) then</p><p><b> temp:=0;</b></p><p><b>
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 四路彩燈課程設(shè)計(jì)
- eda彩燈控制課程設(shè)計(jì)
- 課程設(shè)計(jì)-----四路彩燈顯示系統(tǒng)
- eda多功能彩燈課程設(shè)計(jì)
- 《eda技術(shù)》課程設(shè)計(jì)報(bào)告----彩燈控制器
- 課程設(shè)計(jì)---四路彩燈顯示系統(tǒng)設(shè)計(jì)
- 課程設(shè)計(jì)----四路彩燈顯示系統(tǒng)設(shè)計(jì)
- eda課程設(shè)計(jì)---彩燈控制器
- eda課程設(shè)計(jì)彩燈控制器
- eda課程設(shè)計(jì)-彩燈控制器
- eda課程設(shè)計(jì)—四路搶答器
- 四路搶答器eda課程設(shè)計(jì)
- eda課程設(shè)計(jì)---多路彩燈控制的設(shè)計(jì)
- 四路搶答器eda課程設(shè)計(jì)
- eda課程設(shè)計(jì)--多路彩燈控制器
- eda課程設(shè)計(jì)---節(jié)日彩燈控制器
- 四路彩燈顯示電路-數(shù)字邏輯-課程設(shè)計(jì)
- 數(shù)電課程設(shè)計(jì)---四路彩燈顯示系統(tǒng)
- 課程設(shè)計(jì)八路彩燈
- 八路彩燈課程設(shè)計(jì)--循環(huán)八路彩燈設(shè)計(jì)
評論
0/150
提交評論