16X16點陣顯示綜合實驗eda_第1頁
16X16點陣顯示綜合實驗eda_第2頁
16X16點陣顯示綜合實驗eda_第3頁
16X16點陣顯示綜合實驗eda_第4頁
16X16點陣顯示綜合實驗eda_第5頁
已閱讀5頁,還剩14頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、精選優(yōu)質(zhì)文檔-傾情為你奉上精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)專心-專注-專業(yè)精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)北 華 航 天 工 業(yè) 學 院EDA技術綜合設計課程設計報告報告題目: 16X16點陣顯示綜合實驗 作者所在系部: 電子工程系 作者所在專業(yè): 自動化 作者所在班級: B08221 作 者 姓 名 : 王建超 指導教師姓名: 崔瑞雪 完 成 時 間 : 2010-11-30 內(nèi) 容 摘 要EDA技術是現(xiàn)代電子信息工程領域的一門新興技術,它是在現(xiàn)代先進的計算機工作平臺上開發(fā)出來的一整套電子系統(tǒng)設計的軟硬件工具,并提供了先進的電子系統(tǒng)設計方法。隨著EDA技術的不斷發(fā)展,開發(fā)

2、人員完全可以通過自己的電子系統(tǒng)設計來定制其芯片內(nèi)部的的電路功能,使之成為設計者自己的專門集成電路芯片。在本次課設中,設計一個共陰16X16點陣控制接口,要求:在時鐘信號的控制下,使點陣動態(tài)點亮,點亮方式為使點陣顯示器顯示“沈小蘭王建超袁利宏”九個字和一種花樣,其中列選信號為16-4編碼器編碼輸出。列選信號采用與7段數(shù)碼管的位選信號一樣的處理方法,即列掃描信號頻率大于24HZ。字體、格式,注意本次為課設報告、不是實驗報告關鍵詞:EDA、可編程邏輯器件、時鐘信號、16*16點陣字符發(fā)生器目錄一、設計要求1二、實驗目的1三、硬件要求1四、實驗原理1五、程序設計2 16進制計數(shù)器2 16*16點陣的行

3、列驅動器2六、原理圖12七、仿真波形12八、實驗總結13參考文獻13課程設計任務書課題名稱16*16點陣顯示綜合實驗完成時間11/30指導教師崔瑞雪職稱副教授學生姓名王建超班 級B08221總體設計要求和技術要點設計一個共陰16X16點陣控制接口,要求:在時鐘信號的控制下,使點陣動態(tài)點亮,點亮方式為使點陣顯示器顯示“沈小蘭王建超袁利宏”九個字和一種花樣,其中列選信號為16-4編碼器編碼輸出。列選信號采用與7段數(shù)碼管的位選信號一樣的處理方法,即列掃描信號頻率大于24HZ。工作內(nèi)容及時間進度安排11/29日: 上午 熟悉EDA V型試驗系統(tǒng),完成芯片下載,試驗箱連線; 下午 調(diào)試程序,對錯誤進行修

4、改,實現(xiàn)目標花樣;11/30日: 上午 驗收、答辯;講前面工作寫上課程設計成果1與設計內(nèi)容對應的軟件程序2課程設計報告書3成果使用說明書4設計工作量要求一、 實驗要求設計一個共陰16X16點陣控制接口,要求:在時鐘信號的控制下,使點陣動態(tài)點亮,點亮方式為使點陣顯示器顯示“沈小蘭王建超袁利宏”九個字和一種花樣,其中列選信號為16-4編碼器編碼輸出。二、實驗目的1、 了解點陣字符的產(chǎn)生和顯示原理。2、了解E2PROM和1616點陣LED的工作機理。3、 加強對于總線產(chǎn)生,地址定位的CPLD實現(xiàn)的理解。三、硬件要求1 主芯片EPF10K10LC84-4。2 可變時鐘源。3 帶有事先編程好字庫/字符的

5、E2PROM 2864。4 1616掃描LED點陣。四、實驗原理 1616掃描LED點陣的工作原理同8位掃描數(shù)碼管類似。它有16個共陰極輸出端口,每個共陰極對應有16個LED顯示燈。所以其掃描譯碼地址需4位信號線。要使16點陣上某個點亮,如第10行第4列的LED點亮,只要讓列選信號為“0100”,從而選中第4列,再給第10行一個高電平,即可點亮該LED。本實驗通過FPGA芯片寫入字形,產(chǎn)生掃描信號。為了顯示整個漢字,首先分布好漢字的排列,以行給漢字信息;然后以大于24HZ的頻率掃描列,即每行逐一加高電平,根據(jù)人眼的視覺殘留特性,使之形成整個漢字的顯示由于要顯示不同的字,需要給一個信DIN,對不

6、同字不同花樣進行選擇。而該信號的產(chǎn)生可以通過一個16進制計數(shù)器完成。本設計由16進制計數(shù)器,行驅動和列驅動組成。輸出包括了如下圖所示的列選信號SEL0SEL3。五、程序設計 116進制計數(shù)器:LIBRARY ieee;USE ieee.std_logic_1164.all;USE ieee.std_logic_unsigned.all;ENTITY JISHU ISPORT(CLK,RST,LOAD:IN STD_LOGIC; DIN:IN STD_LOGIC_VECTOR(3 DOWNTO 0); DOUT:BUFFER STD_LOGIC_VECTOR(3 DOWNTO 0);END JI

7、SHU;ARCHITECTURE SHILIU OF JISHU ISBEGIN PROCESS(CLK,RST,LOAD,DIN) BEGIN IF (CLKEVENT AND CLK=1) THEN IF(RST=1)THEN DOUT0); ELSIF (LOAD=1) THEN DOUT=DIN; ELSIF (DOUT=15) THEN DOUT=0000; ELSE DOUT=DOUT+1; END IF; END IF; END PROCESS;END SHILIU;216*16點陣的行列驅動器library ieee;use ieee.std_logic_1164.all;us

8、e ieee.std_logic_unsigned.all;entity zhi isport( din : in std_logic_vector(3 downto 0);selout : buffer std_logic_vector(3 downto 0); clk,rst: in std_logic;dotout : out std_logic_vector(15 downto 0);end zhi;architecture one of zhi isbeginprocess(clk,rst,din,selout)variable b:std_logic_vector(15 downt

9、o 0); beginif rst=1then seloutseloutb:=00000; when 0000 =b:=11100; when 0001 =b:=01000; when 0010 =b:=10000; when 0011 =b:=00010; when 0100 =b:=00100; when 0101 =b:=01000; when 0110 =b:=10000; when 0111 =b:=00000; when 1000 =b:=11100; when 1001 =b:=00100; when 1010 =b:=00100; when 1011 =b:=00100; wh

10、en 1100 =b:=00100; when 1101 =b:=11100; when others =b:=00000; end case; when0001=seloutb:=00000; when 0000 =b:=00000; when 0001 =b:=00000; when 0010 =b:=00000; when 0011 =b:=00000; when 0100 =b:=10000; when 0101 =b:=01000; when 0110 =b:=11100; when 0111 =b:=11110; when 1000 =b:=00000; when 1001 =b:

11、=00000; when 1010 =b:=00000; when 1011 =b:=00000; when 1100 =b:=00000; when 1101 =b:=00000; when others =b:=00000; end case; when0010= seloutb:=00000; when 0000 =b:=00110; when 0001 =b:=00110; when 0010 =b:=00110; when 0011 =b:=00110; when 0100 =b:=00110; when 0101 =b:=00110; when 0110 =b:=00110; wh

12、en 0111 =b:=00110; when 1000 =b:=00110; when 1001 =b:=00110; when 1010 =b:=00110; when 1011 =b:=00110; when 1100 =b:=00110; when 1101 =b:=00110; when others =b:=00000; end case; when 0011= seloutb:=00000; when 0000 =b:=00100; when 0001 =b:=01100; when 0010 =b:=11100; when 0011 =b:=10000; when 0100 =

13、b:=00000; when 0101 =b:=00000; when 0110 =b:=11111; when 0111 =b:=11110; when 1000 =b:=00100; when 1001 =b:=10000; when 1010 =b:=11000; when 1011 =b:=01100; when 1100 =b:=00100; when 1101 =b:=00000; when others =b:=00000; end case; when0100= seloutb:=11000; when 0001 =b:=10000; when 0010 =b:=00000;

14、when 0011 =b:=11100; when 0100 =b:=11110; when 0101 =b:=00000; when 0110 =b:=00000; when 0111 =b:=00000; when 1000 =b:=00000; when 1001 =b:=10000; when 1010 =b:=00000; when 1011 =b:=01000; when 1100 =b:=11100; when 1101 =b:=11110; when 1110 =b:=00000; when others =b:=00000; end case; when0101= selou

15、tb:=00000; when 0001 =b:=00010; when 0010 =b:=00110; when 0011 =b:=01000; when 0100 =b:=10110; when 0101 =b:=01110; when 0110 =b:=10110; when 0111 =b:=00110; when 1000 =b:=00110; when 1001 =b:=10110; when 1010 =b:=01110; when 1011 =b:=00110; when 1100 =b:=00110; when 1101 =b:=00010; when 1110 =b:=00

16、000; when others =b:=00000; end case; when0110= seloutb:=00000; when 0000 =b:=00010; when 0001 =b:=00110; when 0010 =b:=00110; when 0011 =b:=00110; when 0100 =b:=00110; when 0101 =b:=00110; when 0110 =b:=11110; when 0111 =b:=11110; when 1000 =b:=00110; when 1001 =b:=00110; when 1010 =b:=00110; when

17、1011 =b:=00110; when 1100 =b:=00110; when 1101 =b:=00010; when others =b:=00000; end case; when 0111= seloutb:=00100; when 0001 =b:=11000; when 0010 =b:=11000; when 0011 =b:=00100; when 0100 =b:=01010; when 0101 =b:=01010; when 0110 =b:=01010; when 0111 =b:=01010; when 1000 =b:=11110; when 1001 =b:=

18、01010; when 1010 =b:=01010; when 1011 =b:=01010; when 1100 =b:=01010; when 1101 =b:=01010; when 1110 =b:=00010; when others =b:=00000; end case; when1000= seloutb:=11100; when 0001 =b:=00000; when 0010 =b:=00000; when 0011 =b:=10000; when 0100 =b:=01000; when 0101 =b:=00100; when 0110 =b:=00010; whe

19、n 0111 =b:=00010; when 1000 =b:=00010; when 1001 =b:=10010; when 1010 =b:=01010; when 1011 =b:=01010; when 1100 =b:=01010; when 1101 =b:=10010; when 1110 =b:=00000; when others =b:=00000; end case; when1001=seloutb:=01111; when 0000 =b:=01111; when 0001 =b:=01111; when 0010 =b:=01111; when 0011 =b:=

20、10000; when 0100 =b:=10000; when 0101 =b:=10000; when 0110 =b:=10000; when 0111 =b:=01111; when 1000 =b:=01111; when 1001 =b:=01111; when 1010 =b:=01111; when 1011 =b:=10000; when 1100 =b:=10000; when 1101 =b:=10000; when 1110 =b:=10000; when others =null; end case; when1010=seloutb:=10000; when 000

21、0 =b:=10000; when 0001 =b:=10000; when 0010 =b:=10000; when 0011 =b:=01111; when 0100 =b:=01111; when 0101 =b:=01111; when 0110 =b:=01111; when 0111 =b:=10000; when 1000 =b:=10000; when 1001 =b:=10000; when 1010 =b:=10000; when 1011 =b:=01111; when 1100 =b:=01111; when 1101 =b:=01111; when 1110 =b:=

22、01111; when others =null; end case;when1011=seloutb:=11111; when 0000 =b:=11111; when 0001 =b:=11111; when 0010 =b:=11111; when 0011 =b:=11111; when 0100 =b:=11111; when 0101 =b:=11111; when 0110 =b:=11111; when 0111 =b:=00000; when 1000 =b:=00000; when 1001 =b:=00000; when 1010 =b:=00000; when 1011

23、 =b:=00000; when 1100 =b:=00000; when 1101 =b:=00000; when 1110 =b:=00000; when others =null; end case;when1100= seloutb:=00001; when 0000 =b:=00011; when 0001 =b:=00111; when 0010 =b:=01111; when 0011 =b:=11111; when 0100 =b:=11111; when 0101 =b:=11111; when 0110 =b:=11111; when 0111 =b:=00000; whe

24、n 1000 =b:=00000; when 1001 =b:=00000; when 1010 =b:=10000; when 1011 =b:=11000; when 1100 =b:=11100; when 1101 =b:=11110; when 1110 =b:=11111; when others =null; end case; when1101= seloutb:=11111; when 0000 =b:=11111; when 0001 =b:=11111; when 0010 =b:=11111; when 0011 =b:=11111; when 0100 =b:=111

25、11; when 0101 =b:=01111; when 0110 =b:=00111; when 0111 =b:=00011; when 1000 =b:=11111; when 1001 =b:=11111; when 1010 =b:=00111; when 1011 =b:=01111; when 1100 =b:=11111; when 1101 =b:=11111; when 1110 =b:=11111; when others =null; end case; when1110= seloutb:=11111; when 0000 =b:=11111; when 0001 =b:=11111; when 0010 =b:=11111; when 0011 =b:=01111; when 0100 =b:=01111; when 0101 =b:=01111; when 0110 =b:=01111; when 0111 =b:=01111; when 1000 =b:=01111; when 1001 =b:=01111; when 1010 =b:=01111; when 1011 =b:=11111; when 1100 =b:=11111; when 1101 =b:=11111; when 1110 =b:=11111; when others =n

溫馨提示

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

評論

0/150

提交評論