版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> 信息與電氣工程學(xué)院</b></p><p><b> 《課程設(shè)計(jì)報(bào)告》</b></p><p> 題 目: 循環(huán)彩燈控制器 數(shù)字鐘 </p><p> 專 業(yè): </p><p> 班 級(jí):
2、 </p><p> 姓 名: </p><p> 學(xué) 號(hào): </p><p> 指導(dǎo)教師: </p><p> 2014年 1 月 4 日&
3、lt;/p><p><b> 信息與電氣工程學(xué)院</b></p><p><b> 課程設(shè)計(jì)任務(wù)書</b></p><p> 20 —20 學(xué)年第 學(xué)期</p><p> 專業(yè): 學(xué)號(hào): 姓名:
4、 </p><p> 課程設(shè)計(jì)名稱: </p><p> 設(shè)計(jì)題目: </p><p> 完成期限:自 年 月 日至 年 月 日共 周</p><p>
5、 設(shè)計(jì)依據(jù)、要求及主要內(nèi)容(可另加附頁):</p><p> 指導(dǎo)教師(簽字): </p><p> 批準(zhǔn)日期: 年 月 日</p><p><b> 目 錄</b></p><p><b> 摘 要2</b><
6、/p><p><b> 1、設(shè)計(jì)目的4</b></p><p> 2、設(shè)計(jì)內(nèi)容和要求4</p><p><b> 3、設(shè)計(jì)原理4</b></p><p> 4、VHDL程序設(shè)計(jì)6</p><p> 5、仿真與分析13</p><p>
7、 6、課程設(shè)計(jì)總結(jié)16</p><p><b> 7、參考文獻(xiàn)17</b></p><p><b> 摘 要</b></p><p> 1. 現(xiàn)在各大中城市商店都已普及彩燈裝飾,所彩燈控制技術(shù)的發(fā)展已成定局。 而部分小城市尚未普及,但隨著城市建設(shè)日益加快,象征著城市面貌的彩燈裝飾 行業(yè)也將加速發(fā)展,彩燈控制器的
8、普及也是毫無疑問的,所以未來彩燈控制器的 市場(chǎng)還是十分有潛力的。 彩燈的發(fā)展也在日新月異,特別是隨著我國科學(xué)技術(shù)的發(fā)展,彩燈藝術(shù)更是 花樣翻新,奇招頻出,傳統(tǒng)的制燈工藝和現(xiàn)代科學(xué)技術(shù)緊密結(jié)合,將電子、建筑、機(jī)械、遙控、聲學(xué)、光導(dǎo)纖維等新技術(shù)、新工藝用于彩燈的設(shè)計(jì)制作,把形、色、光、聲、動(dòng)相結(jié)合,思想性、知識(shí)性、趣味性、藝術(shù)性相統(tǒng)一。本實(shí)驗(yàn)利用VHDL語言對(duì)交通控制的邏輯功能進(jìn)行描述,通過Quartus2和Cyclone芯片的強(qiáng)大功能使其
9、功能得到實(shí)現(xiàn)。經(jīng)過驗(yàn)證,基本達(dá)到實(shí)驗(yàn)?zāi)康?,能夠滿足彩燈控制的需求。</p><p> 2.隨著EDA技術(shù)的發(fā)展,EDA在通信、電子等領(lǐng)域占有十分重要的地位。本設(shè)計(jì)介紹了基于VHDL語言的數(shù)字鐘的設(shè)計(jì)。數(shù)字鐘的功能是對(duì)年、月、日、時(shí)、分、秒、星期,以及鬧鐘時(shí)、分的預(yù)置;在正常計(jì)數(shù)時(shí)的時(shí)、分與鬧鐘設(shè)定的時(shí)、分相同時(shí),實(shí)現(xiàn)報(bào)時(shí),同時(shí)以stop和pass鍵對(duì)鬧鐘進(jìn)行停止及延遲響鈴的控制; 在整點(diǎn)的時(shí)候led燈閃爍一下。
10、其中,用set脈沖的不同實(shí)現(xiàn)對(duì)預(yù)置,正常計(jì)時(shí),鬧鐘的控制。Set為1~12分別控制顯示年月日、預(yù)置年月日、時(shí)分秒、星期、顯示時(shí)分秒、預(yù)置鬧鐘時(shí)分、顯示鬧鐘預(yù)置的時(shí)分。預(yù)置時(shí)用up的高、低電平實(shí)現(xiàn)對(duì)各預(yù)置量的加、減控制。將1KHZ的時(shí)鐘進(jìn)行分頻為1HZ,實(shí)現(xiàn)每次脈沖為1秒。經(jīng)仿真和驗(yàn)證顯示,此數(shù)字鐘切實(shí)可行,可以實(shí)現(xiàn)顯示時(shí)間和鬧鐘的功能。</p><p><b> 1、設(shè)計(jì)目的</b><
11、;/p><p> 掌握VHDL程序設(shè)計(jì)方法</p><p> 掌握利用可編程邏輯器件和EDA設(shè)計(jì)工具進(jìn)行電子系統(tǒng)設(shè)計(jì)的方法。</p><p><b> 2、設(shè)計(jì)內(nèi)容和要求</b></p><p> 1)彩燈能夠自動(dòng)循環(huán)點(diǎn)亮 2)彩燈循環(huán)顯示且頻率快慢可調(diào)(可選)。 3)該控制電路具有8路以上輸出</p
12、><p> 在軟件工具平臺(tái)上,進(jìn)行VHDL語言的各模塊編程輸入、編譯實(shí)現(xiàn)和仿真驗(yàn)證。</p><p> 用VHDL語言實(shí)現(xiàn)數(shù)字鐘的設(shè)計(jì),要求設(shè)計(jì)實(shí)現(xiàn)一個(gè)具有帶預(yù)置數(shù)的數(shù)字鐘,具有顯示年月日時(shí)分秒的功能。用6個(gè)數(shù)碼管顯示時(shí)分秒,set按鈕產(chǎn)生第一個(gè)脈沖時(shí),顯示切換年月日,第2個(gè)脈沖到來時(shí)可預(yù)置年份,第3個(gè)脈沖到來時(shí)可預(yù)置月份,依次第4、5、6、7個(gè)脈沖到來時(shí)分別可預(yù)置日期、時(shí)、分、秒,第 8
13、個(gè)脈沖到來后預(yù)置結(jié)束,正常工作,顯示的是時(shí)分秒。Up為高電平時(shí),upclk有脈沖到達(dá)時(shí),預(yù)置位加1。否則減1。</p><p><b> 3、電路工作原理</b></p><p> 設(shè)計(jì)一個(gè)循環(huán)彩燈控制器,該控制器控制紅、綠、黃三個(gè)發(fā)光管循環(huán)發(fā)亮。要求紅發(fā)光管亮2秒,綠發(fā)光管亮3秒,黃發(fā)光管亮1秒。</p><p><b> 3
14、.1.1設(shè)計(jì)分析</b></p><p> 實(shí)現(xiàn)循環(huán)彩燈控制的方案很多,不同的控制方案,其設(shè)計(jì)方法和思路也不一樣。設(shè)計(jì)一個(gè)循環(huán)彩燈控制器,該控制器控制紅、綠、黃三個(gè)發(fā)光管循環(huán)發(fā)亮。要求紅發(fā)光管亮2秒,綠發(fā)光管亮3秒,黃發(fā)光管亮1秒</p><p> 由以上所述可以看出, 本設(shè)計(jì)的關(guān)鍵是要產(chǎn)生如圖2所示的時(shí)序關(guān)系。其中,led_r、led_g、led_y 分別表示紅燈、綠燈、
15、</p><p><b> 黃燈的控制信號(hào)。</b></p><p> 圖1循環(huán)彩燈控制器的時(shí)序圖</p><p> 3.1.2循環(huán)彩燈控制器整體設(shè)計(jì)</p><p> 按照系統(tǒng)功能要求, 循環(huán)彩燈控制器的整體框圖如圖3 所示,它主要由2 輸出分頻器模塊、頻率選擇控制模塊和彩燈控制器模塊三部分組成。其中2 輸出分
16、頻器模塊fen_pin24 將輸入的時(shí)鐘信號(hào)clk 進(jìn)行2 分頻、4 分頻得到2 種頻率信號(hào)div2、div4,同時(shí)還產(chǎn)生頻率選擇信號(hào)div16,div16 應(yīng)是div4 的倍數(shù),以控制每種頻率維持的時(shí)間長短。頻率選擇控制模塊xuan_ze 根據(jù)地址選擇端s 將選擇不同頻率的時(shí)鐘信號(hào)送給彩燈控制器模塊,實(shí)現(xiàn)彩燈閃爍的頻率變化。彩燈控制器模塊cai_deng 是整個(gè)電路設(shè)計(jì)的核心,它負(fù)責(zé)整個(gè)設(shè)計(jì)的輸出效果,即彩燈圖案的樣式變化,rst 為
17、復(fù)位信號(hào),低電平有效。</p><p> 圖2 彩燈控制器整體框圖</p><p> 圖3 彩燈控制模塊的狀態(tài)轉(zhuǎn)移圖</p><p> 3.1.3程序設(shè)計(jì)框圖</p><p> 圖 4 程序設(shè)計(jì)框圖</p><p> 3.2.1 數(shù)字鐘功能介紹</p><p> 數(shù)字鐘具有計(jì)時(shí)、預(yù)
18、置、報(bào)時(shí)的功能。以不同的set脈沖控制各個(gè)功能。</p><p> 在計(jì)時(shí)功能中,數(shù)字鐘實(shí)現(xiàn)對(duì)年月日時(shí)分秒即星期的計(jì)時(shí),并可以通過LED數(shù)碼管分別顯示年月日、或時(shí)分秒、或星期、或鬧鐘的時(shí)分。</p><p> 在預(yù)置功能中,可以通過UP鍵對(duì)各需要預(yù)置的量進(jìn)行控制。UP=1時(shí),進(jìn)行“加”控制,UP=0時(shí),進(jìn)行“減”控制。</p><p> 在報(bào)時(shí)功能中,分為整點(diǎn)
19、報(bào)時(shí)和設(shè)置時(shí)間報(bào)時(shí)。其中整點(diǎn)報(bào)時(shí)以ce作為使能輸入端,在整點(diǎn)時(shí)燈進(jìn)行一秒閃爍;設(shè)置時(shí)間報(bào)時(shí)以enable作為使能輸入端,enable=1時(shí)設(shè)置時(shí)間報(bào)時(shí)功能啟動(dòng),在鬧鐘預(yù)置時(shí)間與時(shí)鐘當(dāng)前時(shí)間相同時(shí)報(bào)時(shí),若此時(shí)按下stop,鬧鐘立即停止并不再響鈴,若按下pass,則鬧鐘立即停止,但三分鐘后再響,如此循環(huán)5次后不再響鈴,若什么都不按,鬧鐘響鈴持續(xù)1分鐘。</p><p> 3.2.2 數(shù)字鐘設(shè)計(jì)原理</p&g
20、t;<p> 本設(shè)計(jì)功能有8個(gè)子模塊:分頻模塊、時(shí)分秒模塊、日模塊、年月模塊、鬧鐘預(yù)置模塊、星期模塊、響鈴模塊。通過元件例化由頂層文件timekeeper綜合。</p><p> 整體設(shè)計(jì)框圖及外觀圖如(圖 3-1)及(圖3-2)</p><p> 圖3-1 數(shù)字鐘設(shè)計(jì)整體框圖</p><p> 圖3-2 數(shù)字鐘外觀圖</p>
21、<p> 4、VHDL程序設(shè)計(jì)</p><p> 4.1.1.循環(huán)彩燈方案設(shè)計(jì)與功能描述</p><p> 彩燈的循環(huán)是通過clk的計(jì)數(shù)實(shí)現(xiàn)的,當(dāng)有一個(gè)高電平來到的時(shí)候,則通過Q=Q+1計(jì)數(shù)來實(shí)現(xiàn)。當(dāng)Q的值從“000”逐次加“1”到“111”的時(shí)候,通過判斷Q的值是否為“111”的時(shí)候,進(jìn)行清“0”,即變?yōu)椤?00”再次重新計(jì)數(shù)。那么通過Q的狀態(tài)值從“000”->“
22、001”->“010” ->“011”->“100” ->“101”->“110” ->“111”->“000”的循環(huán),實(shí)現(xiàn)了彩燈的循環(huán)。</p><p> 彩燈的亮滅是通過判斷Q的值來選擇的,用case_when語句。</p><p> 對(duì)于頻率的調(diào)節(jié),則是通過timer來控制,由人為的設(shè)定timer 的值,通過賦不同的初值來改變頻率。也是通
23、過計(jì)數(shù)來分頻的</p><p> 4.1.2.程序代碼:</p><p> library ieee;</p><p> use ieee.std_logic_1164.all;</p><p> use ieee.std_logic_arith.all;</p><p> use ieee.std_logi
24、c_unsigned.all;</p><p> entity light8a is</p><p> port (clk,en,rst:in std_logic;</p><p> timer:in std_logic_vector(3 downto 0);</p><p> a,b,c,d,e,f,g,h:out std_logi
25、c);</p><p> end light8a;</p><p> architecture one of light8a is</p><p> signal w:std_logic_vector(3 downto 0);</p><p> signal couts:std_logic;</p><p>
26、<b> begin</b></p><p> process(clk,timer) ----------分頻進(jìn)程 </p><p> variable x : std_logic_vector(3 downto 0):=timer;</p><p><b> be
27、gin</b></p><p> if clk'event and clk='1' then </p><p> if x<4 then x:=x+1;</p><p> else x:=timer;</p><p><b> end if;</b></p>
28、<p><b> end if;</b></p><p> if x="0100" then couts<='1';</p><p> else couts<='0';</p><p><b> end if;</b></p>
29、<p> end process;</p><p> process(clk,en,rst,couts) ----------計(jì)數(shù)循環(huán)進(jìn)程</p><p> variable Q : std_logic_vector(3 downto 0);</p><p><b> begin</b></p><
30、p> if rst='0'then Q:=(others=>'0');</p><p> elsif clk'event and clk='1' then</p><p> if couts='1' then</p><p> if en='1' then&l
31、t;/p><p> if Q<8 then</p><p> Q:=Q+1;w<=Q;</p><p> if Q="1000"then Q:=(others=>'0'); -</p><p><b> end if;</b></p><p
32、><b> end if;</b></p><p><b> end if;</b></p><p><b> end if;</b></p><p><b> end if;</b></p><p> end process;</
33、p><p> process(w) --------選擇燈亮滅,即控制彩燈循環(huán)進(jìn)程</p><p><b> begin</b></p><p><b> case w is</b></p><p> when"0001"=>a<='1';b
34、<='0';c<='0';d<='0';e<='0';f<='0';g<='0';h<='0';</p><p> when"0010"=>a<='0';b<='1';c<='
35、0';d<='0';e<='0';f<='0';g<='0';h<='0';</p><p> when"0011"=>a<='0';b<='0';c<='1';d<='0';e&l
36、t;='0';f<='0';g<='0';h<='0';</p><p> when"0100"=>a<='0';b<='0';c<='0';d<='1';e<='0';f<='0&
37、#39;;g<='0';h<='0';</p><p> when"0101"=>a<='0';b<='0';c<='0';d<='0';e<='1';f<='0';g<='0';h<
38、='0';</p><p> when"0110"=>a<='0';b<='0';c<='0';d<='0';e<='0';f<='1';g<='0';h<='0';</p><
39、;p> when"0111"=>a<='0';b<='0';c<='0';d<='0';e<='0';f<='0';g<='1';h<='0';</p><p> when"1000"
40、=>a<='0';b<='0';c<='0';d<='0';e<='0';f<='0';g<='0';h<='1';</p><p> when others=>null;</p><p><b&
41、gt; end case;</b></p><p> end process;</p><p> end architecture one;</p><p> 4.2.1 數(shù)字鐘整體設(shè)計(jì)思路</p><p> 采用自上而下的方法進(jìn)行整體設(shè)計(jì)。整個(gè)設(shè)計(jì)共分為8個(gè)模塊,通過頂</p><p> 層文
42、件timekeeper元件例化將8個(gè)模塊各個(gè)端口對(duì)應(yīng)相連。在設(shè)計(jì)各個(gè)模塊時(shí)所用到的其它運(yùn)算方法等放于work庫中,通過程序包及程序包體的方式對(duì)所使用函數(shù)進(jìn)行定義。</p><p> 主要使用的語句有:元件例化語句,過程語句,信號(hào)賦值語句,if語句,case語句(在狀態(tài)機(jī)中)。</p><p> 圖(4-1)表示了個(gè)模塊的連接及連接是所用到的觸發(fā)器等。</p><p&
43、gt; 圖4-1 整體結(jié)構(gòu)圖</p><p> 4.2 各模塊設(shè)計(jì)方法</p><p> 4.2.1 頂層模塊</p><p> 頂層模塊timekeeper是.對(duì)對(duì)所有模塊的綜合。</p><p> 它包含的功能是:通過元件例化連接各模塊;實(shí)現(xiàn)對(duì)鬧鐘控制位sp2的控制;實(shí)現(xiàn)鬧鐘的整點(diǎn)報(bào)時(shí)閃爍。</p><
44、p> 輸入端:up 全局加減選擇,控制預(yù)置時(shí)的加減</p><p> setpin 設(shè)定選擇</p><p> upclk 加減觸發(fā)</p><p> f1000 時(shí)鐘輸入</p><p> 輸出端:a0~d1 八位數(shù)碼管控制引腳的輸出</p><p> z 整點(diǎn)報(bào)時(shí)輸出</
45、p><p> 4.2.2 其他模塊</p><p><b> 1、時(shí)分秒模塊</b></p><p> 時(shí)分秒模塊h_m_s是對(duì)時(shí)、分、秒正常計(jì)時(shí)(set=0 or 1 or 12)和預(yù)置時(shí)分秒(set=5 or 6 or 7)的實(shí)現(xiàn)。</p><p> 分和秒由兩個(gè)六十進(jìn)制實(shí)現(xiàn),時(shí)由24進(jìn)制實(shí)現(xiàn)。當(dāng)時(shí)間達(dá)到23時(shí)
46、59分59秒時(shí),時(shí)分秒全部歸零,進(jìn)位位ov由零變?yōu)?,通過管腳連接到date模塊的時(shí)鐘計(jì)數(shù)信號(hào)clk0,開啟date模塊。</p><p><b> 2、日的模塊</b></p><p> 日的模塊date實(shí)現(xiàn)日子進(jìn)行正常計(jì)時(shí)(set=0 or 1 or 12)和預(yù)置(set=4)。</p><p> 由于每月的天數(shù)與月份、年份有關(guān),故需
47、判斷年月。</p><p> 當(dāng)1、3、5、7、8、10、12月時(shí),每月31天,使用31進(jìn)制。</p><p> 當(dāng)4、6、9、11月時(shí),每月30天,使用30進(jìn)制。</p><p> 當(dāng)2月時(shí),分閏年和平年。閏年29天,平年28天。</p><p> 閏年和平年的判斷方法是:由于通過年月模塊傳輸?shù)哪攴轂閮晌籅CD碼。若高位信號(hào)為“xx
48、x0”且低位信號(hào)為“xx00”或高位信號(hào)為“xxx1”且低位信號(hào)為“xx10”,則可判定為閏年,否則為平年。 </p><p> 以上各月,當(dāng)日期至月底時(shí)返回1,進(jìn)位位ov變?yōu)?通過管腳連接年月模塊的時(shí)鐘計(jì)數(shù)信號(hào)clk0,開啟年月模塊。</p><p><b> 3、年月模塊</b></p><p> 年月模塊year_mon實(shí)現(xiàn)
49、年月正常計(jì)時(shí)(set=0 or 1 or 12)和年、月的預(yù)置(set=2 or 3)。</p><p> 月為12進(jìn)制,當(dāng)達(dá)到12時(shí)變回為1,同時(shí)使年份進(jìn)1。由兩位BCD碼表示年份,故可以表示100年之年的所有年,為100進(jìn)制。</p><p> 圖4-2 year_mon和date模塊的電路連接圖</p><p><b> 4、星期模塊<
50、;/b></p><p> 星期模塊week的功能是實(shí)現(xiàn)對(duì)星期的計(jì)時(shí)(set=0 or 1 or 12)和預(yù)置(set=8)。為七進(jìn)制。</p><p> 圖4-3 week模塊的RTL</p><p><b> 5、鬧鐘模塊</b></p><p> 鬧鐘模塊alarm是對(duì)鬧鐘時(shí)和分的預(yù)置(set=1
51、0 or 11)。時(shí)為24進(jìn)制,分為60進(jìn)制。</p><p> 圖4-3 alarm模塊的RTL</p><p> 另外,在頂層模塊timekeeper,當(dāng)鬧鐘預(yù)置時(shí)間與計(jì)時(shí)時(shí)間相同時(shí)(僅時(shí)、分),鬧鐘響鈴,當(dāng)不對(duì)其進(jìn)行任何操作時(shí),響鈴維持1分鐘。響鈴方式見4.2.7響鈴模塊。</p><p><b> 6、響鈴模塊</b></
52、p><p> 響鈴模塊alarm是對(duì)鬧鐘響鈴的控制。其中主要包含:</p><p> Enable:當(dāng)enable=1時(shí),鬧鐘可以工作。</p><p> Sp2 :當(dāng)頂層模塊鬧鐘時(shí)間與計(jì)時(shí)相等時(shí),sp2=1,響鈴開啟。</p><p> Stop :鬧鐘停止并不再響鈴。</p><p> Pass :鬧
53、鐘停止但三分鐘后再響,循環(huán)5次。</p><p> Sp :響鈴輸出。Sp=1時(shí)響鈴,sp=0時(shí)不響。</p><p> 本模塊主要使用的方法是狀態(tài)機(jī)。相應(yīng)狀態(tài)轉(zhuǎn)換圖如下:</p><p> 圖 4-4 響鈴模塊狀態(tài)轉(zhuǎn)換圖</p><p> 在狀態(tài)t_pass時(shí),使用計(jì)數(shù)的方法實(shí)現(xiàn)對(duì)3分鐘,5次循環(huán)的計(jì)數(shù)。</p>
54、<p> 圖 4-5 計(jì)數(shù)的流程圖</p><p> 圖4-6 speak模塊的RTL</p><p><b> 7、分頻模塊</b></p><p> 分頻模塊fenpin使輸入為1KHZ時(shí)鐘信號(hào)時(shí),接入電路經(jīng)分頻后仍能按1HZ即1s計(jì)數(shù)。</p><p> 圖4-7 fenpin模塊的R
55、TL</p><p><b> 8、顯示模塊</b></p><p> 顯示模塊led即七段數(shù)碼管的顯示電路。</p><p> 圖4-8 led模塊的RTL</p><p> 4.2.3 程序包模塊</p><p> 程序模塊是對(duì)各模塊所用到的函數(shù)的定義,通過程序包package定
56、義時(shí)、日、月、年等的增減函數(shù)(procedure),并用程序包體package body具體說明函數(shù)的內(nèi)容。通過use.work.pac.all語句調(diào)用程序包,使程序書寫更加方便簡(jiǎn)潔。</p><p><b> 5、仿真與分析</b></p><p> 5.1循環(huán)彩燈仿真分析</p><p> 當(dāng)設(shè)定timer的值為1的時(shí)候,仿真圖如下:
57、</p><p> 當(dāng)設(shè)定timer的值為3的時(shí)候,仿真圖如下:</p><p> 通過仿真可知,timer可以控制頻率快慢,且彩燈a,b,c,d,e,f,g,h能循環(huán)點(diǎn)亮</p><p> 5.2 數(shù)字鐘仿真結(jié)果</p><p> 1、h_m_s模塊 </p><p> 表示當(dāng)up=1時(shí),時(shí)鐘時(shí)(se
58、t=5)、分(set=6)、秒(set=7)從0開始加。</p><p><b> 圖 5-1</b></p><p><b> 2、date模塊</b></p><p> 以下為對(duì)應(yīng)月份截圖。另外,當(dāng)日期由最末變?yōu)?時(shí),ov進(jìn)1以控制year_mon模塊。</p><p> ?。?)大月:每
59、月31天。</p><p><b> 圖5-2-1</b></p><p><b> 小月:每月30天。</b></p><p><b> 圖5-2-2</b></p><p> (3)平年2月:每月28天。</p><p><b>
60、 圖5-2-3</b></p><p> 閏年2月:每月29天。</p><p><b> 圖5-2-4</b></p><p> 3、year_mon模塊</p><p><b> 圖5-3</b></p><p><b> 4、week模塊
61、</b></p><p> 前半部分up=1,為加,1~7,后半部分up=0,為減,6~1</p><p><b> 圖5-4</b></p><p><b> 5、alarm模塊</b></p><p> 下圖反映對(duì)鬧鐘時(shí)(set=10)、分(set=11)的預(yù)置,up=1為加
62、。</p><p><b> 圖 5-5</b></p><p><b> 6、speak模塊</b></p><p><b> (1)按下pass</b></p><p> 由下圖可見,當(dāng)時(shí)間相同sp為高電平;按下pass后sp變?yōu)榈碗娖?,三分鐘后sp又為高電平。&l
63、t;/p><p><b> 圖5-6-1</b></p><p><b> ?。?)按下stop</b></p><p> 由下圖可見,當(dāng)時(shí)間相同時(shí)sp為高電平,按下stop后sp變?yōu)榈碗娖健?lt;/p><p><b> 圖 5-6-2</b></p><p
64、> 各模塊仿真均可實(shí)現(xiàn),且波形顯示可以實(shí)現(xiàn)預(yù)想的功能。</p><p><b> 6、課程設(shè)計(jì)總結(jié)</b></p><p> 通過這次的課程設(shè)計(jì),我又一次系統(tǒng)的復(fù)習(xí)了VHDL語言,通過實(shí)踐對(duì)VHDL語言和EDA技術(shù)有了更具現(xiàn)實(shí)性應(yīng)用性的了解,并熟練了相關(guān)軟件的使用方法。</p><p> 此次課程設(shè)計(jì)的內(nèi)容是數(shù)字鐘,我學(xué)會(huì)了如何利
65、用元件例化將各個(gè)模塊結(jié)合起來,而不是一味的想起一個(gè)功能設(shè)計(jì)一個(gè)功能,而是有一個(gè)總體的自上而下的設(shè)計(jì),建立基本的設(shè)計(jì)框圖(如圖 3-1),再進(jìn)行具體的設(shè)計(jì)。</p><p> 在程序調(diào)試的過程中,出現(xiàn)了很多的問題。我發(fā)現(xiàn)往往是一行出現(xiàn)了錯(cuò)誤導(dǎo)致了接下來一系列錯(cuò)誤的出現(xiàn)。</p><p> 還有在仿真中出現(xiàn)錯(cuò)誤的紅線,并出現(xiàn)了‘U’字符,全都是未設(shè)置初值所致。而在設(shè)置初值時(shí)仍然出現(xiàn)了問題。
66、最開始我想定義一個(gè)clr信號(hào),當(dāng)clr為高電平時(shí)各功能清零,但是在實(shí)際仿真時(shí),由于常常要看在月末或類似23時(shí)59分59秒這樣的時(shí)刻是否有進(jìn)位信號(hào)進(jìn)為高電平,從零開始顯然讓仿真變的十分麻煩,如果可以直接賦初值到接近進(jìn)位的時(shí)刻就會(huì)讓仿真變得簡(jiǎn)便。即使用信號(hào)賦初值的方法對(duì)信號(hào)進(jìn)行賦初值,既解決錯(cuò)誤又利于仿真。</p><p> 在最后對(duì)頂層仿真時(shí)出現(xiàn)了很多的問題,最后發(fā)現(xiàn)都是未對(duì)應(yīng)的問題。</p>&l
67、t;p> 當(dāng)然,我的設(shè)計(jì)還有很多不足的地方。比如有一處的競(jìng)爭(zhēng)冒險(xiǎn)產(chǎn)生的毛刺沒有解決。最開始是將speak模塊控制信號(hào)sp2的相關(guān)程序?qū)懺诹薬larm模塊,仿真時(shí)發(fā)現(xiàn)在一處出現(xiàn)了毛刺,在對(duì)鬧鐘進(jìn)行預(yù)置時(shí)分時(shí)的第一個(gè)時(shí)間都未足一個(gè)時(shí)鐘周期(如圖 5-5)。后來我想是否因?yàn)閍larm模塊有兩個(gè)process進(jìn)程,就將sp2的相關(guān)程序挪到了頂層模塊,但是最后還是沒有實(shí)現(xiàn)。咨詢了一下同學(xué)們,他們都說這沒有問題,不需要解決,所以就沒有解決這
68、個(gè)問題。</p><p> 此次課程設(shè)計(jì)我學(xué)到了很多,但是我覺得應(yīng)該放在剛剛考完EDA之后,那時(shí)候?qū)χ皇怯浀帽容^清楚,不像在這次設(shè)計(jì)時(shí)很多知識(shí)都想不起來了。其他的對(duì)我?guī)椭己艽蟆?lt;/p><p><b> 7、參考文獻(xiàn)</b></p><p> 1 李景華,杜玉遠(yuǎn)等著.可編程邏輯器件與EDA技術(shù).沈陽:東北大學(xué)出版社,20002 齊懷印
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 循環(huán)彩燈控制器設(shè)計(jì)課程設(shè)計(jì)
- 微機(jī)原理數(shù)字鐘課程設(shè)計(jì)報(bào)告
- 微機(jī)技術(shù)課程設(shè)計(jì)--彩燈控制器設(shè)計(jì)
- 課程設(shè)計(jì)--彩燈循環(huán)控制器的設(shè)計(jì)
- 數(shù)字電子課程設(shè)計(jì)-- 彩燈控制器
- 數(shù)電課程設(shè)計(jì)循環(huán)彩燈控制器
- 數(shù)電課程設(shè)計(jì)循環(huán)彩燈控制器
- 數(shù)電課程設(shè)計(jì)----循環(huán)彩燈控制器
- 數(shù)電課程設(shè)計(jì)-循環(huán)彩燈控制器
- 微機(jī)接口課程設(shè)計(jì)報(bào)告--數(shù)字鐘實(shí)驗(yàn)
- 數(shù)電課程設(shè)計(jì)-循環(huán)彩燈控制器
- 彩燈控制器課程設(shè)計(jì)--流水彩燈控制器
- 彩燈控制器課程設(shè)計(jì)
- 彩燈控制器課程設(shè)計(jì)
- 課程設(shè)計(jì)-- 彩燈控制器
- 數(shù)字鐘課程設(shè)計(jì)
- 數(shù)字鐘課程設(shè)計(jì)
- 微機(jī)原理課程設(shè)計(jì) -- 基于8086彩燈控制器的設(shè)計(jì)
- 數(shù)字鐘課程設(shè)計(jì)
- 彩燈控制器課程設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論