EDA實驗二 VHDL七段數(shù)碼管顯示譯碼_第1頁
EDA實驗二 VHDL七段數(shù)碼管顯示譯碼_第2頁
EDA實驗二 VHDL七段數(shù)碼管顯示譯碼_第3頁
EDA實驗二 VHDL七段數(shù)碼管顯示譯碼_第4頁
EDA實驗二 VHDL七段數(shù)碼管顯示譯碼_第5頁
全文預(yù)覽已結(jié)束

下載本文檔

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

文檔簡介

1、EDA實驗二 七段數(shù)碼管顯示譯碼的設(shè)計一、實驗?zāi)康?、掌握七段數(shù)碼管譯碼器的工作原理;2、學(xué)會運用波形仿真測試檢驗程序的正確性;3、學(xué)會運用波形仿真測試檢驗程序的正確性。二、實驗設(shè)備 ZYE1502C型實驗箱三、內(nèi)容要求1、用撥位開關(guān)輸入8421BCD碼,七段數(shù)碼管顯示“0F”16個16進制的數(shù)字。2、觀察字符亮度和顯示刷新的效果:(1)在8個七段數(shù)碼管上同時顯示某一數(shù)字;(2)在8個七段數(shù)碼管上動態(tài)顯示某一數(shù)字。3、擴展內(nèi)容:(1)動態(tài)顯示時,能即時改變顯示的順序;(2)動態(tài)顯示時,實現(xiàn)顯示數(shù)字從0F的循環(huán)顯示。四、實驗步驟1、輸入:設(shè)計部分采用VHDL語言完成;2、編譯;3、仿真;4、下載

2、;5、連線。(1)四個撥位開關(guān)(在P1、P2處選擇)連接D3、D2、D1、D0信號所對應(yīng)的管腳。時鐘CLK所對應(yīng)的管腳同實驗箱上的時鐘源相連。(2)掃描片選信號DIG(0 TO 3)的管腳同七段數(shù)碼管(共陰)相連;(3)七段數(shù)碼管驅(qū)動信號A,B,C,D,E,F,G的管腳分別同掃描數(shù)碼管的段輸入PCLK處的連接線孔A,B,C,D,E,F,G相連。五、實驗報告1、論述實驗過程和步驟;2、填寫正確的實驗結(jié)果。(1)通過兩種顯示效果分析:字符顯示亮度同掃描頻率的關(guān)系,且讓人眼感覺不出光閃爍現(xiàn)象的最低掃描頻率是多少?答:掃描頻率越高,顯示亮度越低。人眼看是否閃爍與所用的時鐘和分頻方式有關(guān),在頻率穩(wěn)定和分

3、頻均勻的情況下,最低掃描頻率為256Hz,若分頻不均勻或頻率不穩(wěn)定,則需更高頻率。(2)字形編碼的種類,即一個7段數(shù)碼管可產(chǎn)生多少種字符,產(chǎn)生所有字符需要多少根被譯碼信號線?答:一個7段數(shù)碼管可產(chǎn)生27=128種字符,產(chǎn)生所有字符至少需要7根被譯碼信號線。但假如只編譯0-F,16個字符,則至少只需要4根被譯碼信號線。六、實驗小結(jié)。答:1、不同控制端需要預(yù)先分配控制優(yōu)先級,否則編寫的時候會出現(xiàn)很多問題。優(yōu)先級分為普通和特殊,一般錯誤情況可以跨越權(quán)限顯示出來。2、不同的錯誤需要不同的顯示來區(qū)分。3、LOAD和CLR的優(yōu)先級低于EN,在EN從無效到有效的過程中(01),顯示會根據(jù)現(xiàn)態(tài)和MODE出現(xiàn)多

4、種情況:(0,次態(tài),不定態(tài),鎖存值)等,所以一般在EN啟動后,需要LOAD或者CLR來清空這些不確定因素。優(yōu)先級設(shè)計:優(yōu)先級控制端說明1topEN使能,低電平有效2mode(2,3)錯誤的11值,顯示-或-3LOAD讀取,高電平有效3CLR清零,高電平有效4mode(0)刷屏模式:0靜態(tài)/1刷屏模式5mode(1)刷屏模式:0左->/1<-右4mode(2,3)顯示數(shù)字:00不變/01順數(shù)/10逆數(shù)控制端所有情況列表:控制內(nèi)容DIG、DOUTDOUTDOUTDIG4/1DIG1DOUTDIG瞬時有效位顯示內(nèi)容ENLOADCLRmode(0)mode(1)mode(2,3)4靜態(tài)顯示

5、-1×××××4靜態(tài)顯示-000/01/100×111左->刷屏顯示-000/01/100111<-右刷屏顯示-000/01/1011110無任何顯示011×××4靜態(tài)顯示鎖存數(shù)字0000×004靜態(tài)顯示順數(shù)數(shù)字0000×014靜態(tài)顯示逆數(shù)數(shù)字0000×101左->刷屏顯示鎖存數(shù)字00010001左->刷屏顯示順數(shù)數(shù)字00010011左->刷屏顯示逆數(shù)數(shù)字00010101<-右刷屏顯示鎖存數(shù)字00011001<-右刷屏顯示順數(shù)數(shù)字00

6、011011<-右刷屏顯示逆數(shù)數(shù)字00011104靜態(tài)顯示00000010×00/01/101左->刷屏顯示00011000/01/101<-右刷屏顯示00011100/01/104靜態(tài)顯示DIN數(shù)字0100×00/01/101左->刷屏顯示DIN數(shù)字0101000/01/101<-右刷屏顯示DIN數(shù)字0101100/01/10代碼:LIBRARY IEEE;ENTITY segment ISPORT (CLK : IN STD_LOGIC; CP : Buffer STD_LOGIC; EN : IN STD_LOGIC; LOAD : IN

7、 STD_LOGIC; CLR : IN STD_LOGIC; MODE : IN STD_LOGIC_VECTOR(0 TO 3); DOUT : OUT STD_LOGIC_VECTOR(0 TO 6);-對應(yīng)A,B,C,D,E,F,G,DP輸出 DIN : IN STD_LOGIC_VECTOR(3 DOWNTO 0);-對應(yīng)4321位數(shù)字 DIG : OUT STD_LOGIC_VECTOR(0 TO 3);-段顯信息,one hotEND segment;ARCHITECTURE one OF segment ISBEGINPROCESS (EN,LOAD,CLR,MODE,DIN,

8、CLK,CP) VARIABLE Q : STD_LOGIC_VECTOR(1 DOWNTO 0);VARIABLE COUNT : STD_LOGIC_VECTOR(0 TO 3);VARIABLE P : STD_LOGIC_VECTOR(0 TO 21);BEGIN-使能IF EN='1' THEN DOUT(0 TO 6)<= "0000001"DIG(0 TO 3)<= "0000"ELSIF LOAD='1' AND CLR='1' THEN DOUT(0 TO 6)<= &q

9、uot;0000000"DIG(0 TO 3)<= "0000"ELSE-分頻IF CLK'EVENT AND CLK='1' THENIF P<3999999 THEN P := P + 1;ELSE P := (OTHERS=>'0');END IF;END IF;IF P=1999999 THEN CP<='1'ELSE CP<='0'END IF;-刷屏模式:刷屏模式:0左->/1<-右mod(1)IF CP'EVENT AND CP=

10、'1' THENIF (MODE(1)='0') THENIF Q<3 THEN Q := Q + 1;ELSE Q := (OTHERS=>'0');END IF;ELSEIF Q>0 THEN Q := Q - 1;ELSE Q := "11"END IF;END IF;END IF;-刷屏模式:0靜態(tài)/1刷屏模式mod(0)IF (MODE(0)='0') THEN DIG(0 TO 3)<= "0000"ELSE CASE Q ISWHEN "00&

11、quot; => DIG(0 TO 3)<= "0111"WHEN "01" => DIG(0 TO 3)<= "1011"WHEN "10" => DIG(0 TO 3)<= "1101"WHEN "11" => DIG(0 TO 3)<= "1110"WHEN OTHERS => NULL; END CASE;END IF;-顯示數(shù)字:顯示數(shù)字:00不變/01順數(shù)/10逆數(shù)/11-mod(2,3)I

12、F LOAD='1' THEN COUNT(0 TO 3):=DIN(3 DOWNTO 0);ELSIF CLR='1' THEN COUNT := "0000"ELSEIF CP'EVENT AND CP='1' THENIF (MODE(2)='0')AND(MODE(3)='0') THENCOUNT := COUNT;ELSIF (MODE(2)='0')AND(MODE(3)='1') THENIF COUNT<15 THEN COUNT

13、:= COUNT + 1;ELSE COUNT := (OTHERS=>'0');END IF;ELSIF (MODE(2)='1')AND(MODE(3)='0') THENIF COUNT>0 THEN COUNT := COUNT - 1;ELSE COUNT := "1111"END IF;ELSIF (MODE(2)='1')AND(MODE(3)='1') THENNULL;END IF;END IF;END IF;-顯示模式IF (MODE(2)='1'

14、)AND(MODE(3)='1') THEN DOUT(0 TO 6)<="0000001"ELSECASE COUNT ISWHEN "0000" => DOUT(0 TO 6)<= "1111110"WHEN "0001" => DOUT(0 TO 6)<= "0110000"WHEN "0010" => DOUT(0 TO 6)<= "1101101"WHEN "0011"

15、 => DOUT(0 TO 6)<= "1111001"WHEN "0100" => DOUT(0 TO 6)<= "0110011"WHEN "0101" => DOUT(0 TO 6)<= "1011011"WHEN "0110" => DOUT(0 TO 6)<= "1011111"WHEN "0111" => DOUT(0 TO 6)<= "1110010&q

16、uot;WHEN "1000" => DOUT(0 TO 6)<= "1111111"WHEN "1001" => DOUT(0 TO 6)<= "1111011"WHEN "1010" => DOUT(0 TO 6)<= "1110111"WHEN "1011" => DOUT(0 TO 6)<= "0011111"WHEN "1100" => DOUT(0 TO 6)<= "1001110&qu

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論