VHDL語言數(shù)碼管靜態(tài)顯示5080211EDA課程設(shè)計(jì)_第1頁
VHDL語言數(shù)碼管靜態(tài)顯示5080211EDA課程設(shè)計(jì)_第2頁
VHDL語言數(shù)碼管靜態(tài)顯示5080211EDA課程設(shè)計(jì)_第3頁
VHDL語言數(shù)碼管靜態(tài)顯示5080211EDA課程設(shè)計(jì)_第4頁
VHDL語言數(shù)碼管靜態(tài)顯示5080211EDA課程設(shè)計(jì)_第5頁
已閱讀5頁,還剩3頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、j t,秦皇島分杈northeastorn university at qinhuangdao靜態(tài)掃描顯示電路設(shè)計(jì)專業(yè):自動(dòng)化班級(jí)學(xué)號(hào):姓名:dennis2010年12月11日一、設(shè)計(jì)實(shí)驗(yàn)?zāi)康模涸趍ax+plusll軟件平臺(tái)上,熟練運(yùn)用vhdl語言,完成靜態(tài)掃描顯示電路的 vhdl語言編程、編譯、綜合、仿真,使用eda實(shí)驗(yàn)箱,實(shí)現(xiàn)靜態(tài)掃描顯示電路 的硬件功能。二、設(shè)計(jì)實(shí)驗(yàn)說明及要求:1靜態(tài)掃描顯示電路組成:計(jì)數(shù)器、顯示譯碼器、掃描電路組成。在靜態(tài) 掃描顯示電路中最關(guān)鍵的是如何在每一個(gè)數(shù)碼管靜態(tài)顯示固定的數(shù)字,除此之 外,靜態(tài)掃描顯示電路需清零控制端啟動(dòng)控制端使靜態(tài)掃描顯示電路清零及啟 動(dòng)。2、

2、靜態(tài)掃描顯示電路要在七個(gè)數(shù)碼管實(shí)現(xiàn)靜態(tài)顯示每位同學(xué)的班級(jí)學(xué)號(hào)顯zj 03、能夠完成清零、啟動(dòng)(可以使用鍵盤或撥碼開關(guān)置數(shù))功能。三、數(shù)字時(shí)鐘組成及功能:1、計(jì)數(shù)器:用來產(chǎn)生實(shí)現(xiàn)數(shù)碼管分配;2、掃描顯示譯碼器:完成對7字段數(shù)碼管顯示的控制;四、系統(tǒng)硬件要求:1、時(shí)鐘信號(hào)為10mhz;2、fpga 芯片型號(hào) epm7128slc84-15、ep1k30tc144-3 或 ep1k100qc208-3 (根 據(jù)實(shí)驗(yàn)箱上fpga芯片具體選擇);3、8個(gè)7段掃描共陰級(jí)數(shù)碼顯示管;4、按鍵開關(guān)(清零、啟動(dòng));五、設(shè)計(jì)內(nèi)容及步驟:1、設(shè)計(jì)思路:靜態(tài)掃描顯示電路的主要組成為:計(jì)數(shù)器、顯示譯碼器、掃描電路組成。

3、 我的學(xué)號(hào)為5080211,因?yàn)樾枰邆€(gè)數(shù)碼管,所以用七進(jìn)制計(jì)數(shù)器即可,計(jì) 數(shù)器從0到6計(jì)數(shù),到6后歸0,接著開始從0到6計(jì)數(shù)。然后掃描電路(即時(shí)鐘信號(hào))根據(jù)每個(gè)時(shí)刻的計(jì)數(shù)器計(jì)數(shù)值,輸岀相應(yīng) 的數(shù)碼管,從而選擇控制,即sel2, sell,sel0o從試驗(yàn)箱的一排數(shù)碼管從 最右端向第七個(gè)數(shù)碼管循環(huán)掃描。例如:sel2, sei 1, sei0為“000”則選擇 地的是最右邊的數(shù)碼顯示管。當(dāng)掃描到一個(gè)數(shù)碼管,根據(jù)此時(shí)需要輸出的數(shù)值,利用顯示譯碼器翻譯 為相應(yīng)的數(shù)碼管顯示編碼即可,比如要sei二“000”時(shí),要輸岀的數(shù)值是“0100” ,將“0100”(即數(shù)字4),翻譯為“1100110”給sei

4、選中的數(shù) 碼管顯示岀來即可。顯示岀來的數(shù)字就是4除此z外,靜態(tài)掃描顯示電路需清零控制端、啟動(dòng)控制端使靜態(tài)掃描顯 示電路清零及啟動(dòng)。啟動(dòng)/關(guān)閉用cs表示,當(dāng)cs為無效時(shí),和時(shí)鐘信號(hào)相與,則沒有時(shí)鐘輸 入,輸出端,使sei二“111”,由于時(shí)鐘停止,則只是選擇最左端的數(shù)碼管, 輸岀的譯碼為“00000000”即什么都沒有顯示。清零用clear表示,當(dāng)其無效時(shí),正常顯示,當(dāng)其有效時(shí),不管譯碼為 多少,強(qiáng)制輸岀為“01111111”即“0” ,由于時(shí)鐘還在掃描,現(xiàn)象即為七 個(gè)數(shù)碼管都為零。此為本程序設(shè)計(jì)的整體思路。2、端口說明:scan時(shí)鐘輸入,上升沿有效cs片選使能端,高電平有效clear清零輸入,

5、高電平有效m0m6數(shù)碼管7段顯示數(shù)據(jù)端口selosel2數(shù)碼管選擇顯示控制端口3、源程序和注釋: library ieee;use ieee. std_logic_l164. all定義實(shí)體-分別為時(shí)鐘掃描入口,啟 動(dòng)/關(guān)閉端口,清零端 口選擇八個(gè)數(shù)碼管中之一顯示數(shù)碼管7段顯示數(shù)據(jù)端口use ieee. std_logic_unsigned.dllentity xuehao isport (scan, cs, clear: in std logic;scl:out std_logic_vector (2 downto 0); m:out std_logic_vector(6 clownto 0

6、);end xuehao;architecture behave of xuehao is-結(jié)構(gòu)體幵始signal si: std_logic_vcctor (2 down to 0);七進(jìn)制計(jì)數(shù)器的數(shù)值signal bcd_out: std_logic_vector (3 downto 0);-八個(gè)數(shù)碼管數(shù)據(jù)輸入端口signal q: std logic vector (6 downto 0);-數(shù)碼管顯示數(shù)據(jù)的編碼signal clk scan: std logic;-接受掃描端口 的信號(hào)constant nol_bcd:std_logic_vcctor:二0001"consta

7、nt no2_bcd: std_logic_vector :=,z0001z,; constant no3_bcd:std_logic_vector:二0010;constant no4 bed:std_logic_vector:二0000; constant no5_bcd:std_logic_vector:二1000; constant no6_bcd:std_logic_vcctor:二0000; constant no7_bcd: std_logic_vector :=,z0101z,;七個(gè)數(shù),分別為1120805,顯示的時(shí)候會(huì)從左到右顯不為5080211beinclk_scan<

8、;=scan and cs;-當(dāng)片選端口為高電平時(shí),開始掃描process (clk_scan)begin-“七進(jìn)制計(jì)數(shù)器if elk scan,event and elk scan二'1' then-掃描時(shí)鐘上升沿有效if si二"110"then slx二"000"-記到6后,再來上升沿后,將會(huì)復(fù)else si二sl+1; end if;end if;end process;位為o-si不到6,輸入上升沿,則si加1計(jì)數(shù)器進(jìn)程結(jié)束process(si)-掃描電路,有數(shù)據(jù)選擇的功能,當(dāng)時(shí) 鐘從0到6計(jì)數(shù)吋對應(yīng)七個(gè)數(shù)碼管輪流顯示,其值對應(yīng)

9、相應(yīng)輸出的學(xué)號(hào) begin case si iswhen,000,=>bcd_out<=nol_bcd;-最右端的學(xué)號(hào)數(shù)字 1when,00r/=>bcd_out<=no2_bcd;-1whcn,010,=>bcd_out<=no3_bcd;-2when,/0ir/=>bcd_out<=no4_bcd;-0when,100,=>bcd_out<=no5_bcd; -8 when,/10r,=>bcd_out<=no6_bcd; -0 when,z 110,=>bcd_out<=no7_bcd;-最左端的學(xué)號(hào)數(shù)字

10、為 5when others二bcd_out二"1000"end case;end process;-數(shù)據(jù)選擇進(jìn)程結(jié)束process (bcd_out)-7段譯碼,將十進(jìn)制的數(shù)字翻譯為可以用數(shù)碼管顯示的編碼begincase bedout is when0000二q二0111111 ; when'ooo1二q二0000110; whcn0010=>qu1011011; whertool 1 "=>q二 1001111" when,0100,=>q<=/z1100110v; when0101二q二1101101; vhen0

11、110 二q二1111101; whcn0111二q二0000111; when"1000"二q二1111111" when others二q二0000000;0的譯碼 1的譯碼 2的譯碼 -3的譯碼 4的譯碼 5的譯碼 6的譯碼 7的譯碼 -8的譯碼end case;end process;-進(jìn)程結(jié)束sel<=sl when cs=" 1" else 111;當(dāng)片選有效時(shí),輸出數(shù)碼管的選擇控制 當(dāng)片選無效時(shí),讓其選擇最左面的一個(gè)數(shù) 碼管由前面的掃描電路和譯碼知,此時(shí)沒有輸 出m二qwhen(cs二'1' and clea

12、r=,0?)else-當(dāng)片選有效,清零無效吋,正常輸出"0111111when(cs二t' and clear二t') else -當(dāng)片選有效,清零有效 時(shí)-“七個(gè)數(shù)碼管輸岀為00000000;4、name:scana3e1 csclearend behave; -結(jié)構(gòu)體結(jié)束 仿真輸岀:5、硬件連線:(1) fpga芯片引腳分配(以ep1k30tc144-3為例,如果引腳用軟件自動(dòng)分配時(shí)),scan124 引腳,cs54 引腳, cleai56 引腳sclo, sell, scl214, 143, 18 引腳,mo,m617, 11, 13, 12, 136, 95.

13、 96 引腳(2) 外部硬件與fpga的接線(以ep1k30tc144-3為例),機(jī)箱時(shí)鐘脈沖clk5124引腳,撥碼開關(guān)do54引腳,撥碼開關(guān)d156引腳,數(shù)碼管顯示接口 sclo, sell, scl214, 143, 18 引腳,數(shù)碼管數(shù)據(jù)接口 a, b, c, d, e, f, g17, 11, 13, 12, 136, 95. 96 引腳color legend口 unassigned uncouted口 column fatttrack nonassignableselected node & pin(s):<none>i row & col fastt

14、rack/ deckcated input 口 row fasltrack6、硬件實(shí)現(xiàn):(1)在max+plusii中編譯通過,然后分配好引腳,仿真成功后。開始下載 硬件調(diào)試。一開始不太懂得下載,下了好幾次都沒有成功,系統(tǒng)提示下載不了, 在檢查數(shù)據(jù)接線后,也沒找岀問題,后來在老師的幫助下把程序下載到了碩件。但是數(shù)碼管顯示的是數(shù)字卻不是預(yù)期的目標(biāo),我的數(shù)碼管顯示數(shù)字是一個(gè)一 個(gè)顯示的,經(jīng)過仔細(xì)分析和檢查,任然沒有發(fā)現(xiàn)問題,問過老師之后才知道說是 掃描太慢,所以是一個(gè)一個(gè)顯示的,然后把elk的吋鐘信號(hào)(即scan的引腳接 入clk3就可以顯示出完整的學(xué)號(hào))在通過cs和clr的高低電平控制時(shí),可以達(dá)

15、到使能端的控制和清零功能,硬 件驗(yàn)證效果理想,達(dá)到了設(shè)計(jì)要求,此時(shí),得到的就是最后的程序了。六. 心得體會(huì)通過這次課程設(shè)計(jì),我對eda技術(shù)有了更進(jìn)一步的了解,以前的實(shí)驗(yàn)一直電 氣自動(dòng)化這門課程的實(shí)驗(yàn)都是在max+plusll的上面實(shí)現(xiàn)的,所以對eda的實(shí)驗(yàn) 箱和實(shí)驗(yàn)碩件上一點(diǎn)都不了解。在這次實(shí)驗(yàn)中對eda的實(shí)驗(yàn)硬件有了更深的認(rèn)識(shí)。比如:如何把vhdl的程 序裝到實(shí)驗(yàn)的硬件中,然后如何的連接實(shí)驗(yàn)箱上的管腳。vhdl是eda技術(shù)的重要組成部分,其具有與具體碩件電路無關(guān)和與設(shè)計(jì)平 臺(tái)無關(guān)的特性,并且具有良好的電路行為描述和系統(tǒng)描述的能力,并在語言易讀 性和層次化,結(jié)構(gòu)化設(shè)計(jì)方面,表現(xiàn)了強(qiáng)大的牛命力和應(yīng)用潛力ovhdl其主要的也是最大的優(yōu)點(diǎn)就在于編程者可以專心致力與其功能的實(shí) 現(xiàn),而不需要對不影響功能的與工藝有關(guān)的因素花費(fèi)過多時(shí)間和精力。一個(gè)簡單 的原理要把應(yīng)用及與其他功能綜合起來就很困難。以前學(xué)習(xí)的時(shí)候,沒有把各部 分內(nèi)容聯(lián)系起來,都是一些零散的,獨(dú)立的。通過設(shè)計(jì)也鞏固了書木上的知識(shí)。通過在上網(wǎng)查詢本

溫馨提示

  • 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. 人人文庫網(wǎng)僅提供信息存儲(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論