基于FPGA的LED點(diǎn)陣顯示字符設(shè)計-設(shè)計應(yīng)用_第1頁
基于FPGA的LED點(diǎn)陣顯示字符設(shè)計-設(shè)計應(yīng)用_第2頁
基于FPGA的LED點(diǎn)陣顯示字符設(shè)計-設(shè)計應(yīng)用_第3頁
基于FPGA的LED點(diǎn)陣顯示字符設(shè)計-設(shè)計應(yīng)用_第4頁
基于FPGA的LED點(diǎn)陣顯示字符設(shè)計-設(shè)計應(yīng)用_第5頁
全文預(yù)覽已結(jié)束

下載本文檔

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

文檔簡介

精品文檔-下載后可編輯基于FPGA的LED點(diǎn)陣顯示字符設(shè)計-設(shè)計應(yīng)用隨著社會的發(fā)展和信息時代對各類信息快速發(fā)布的需要,許多政府部門和企事業(yè)單位從提高自身形象和信息規(guī)范化管理考慮,廣泛采用LED電子顯示屏顯示產(chǎn)品,此類多媒體顯示系統(tǒng)通過一定的控制方式,用于顯示文字、圖形、圖像、動畫、股市行情等各種信息以及電視、錄像、DVD等信號,是交通指揮引導(dǎo)、部隊作戰(zhàn)、電力部門、公共場所進(jìn)行企業(yè)形象宣傳、信息發(fā)布和精神文明建設(shè)的有效工具和良好窗口。

采用現(xiàn)場可編程邏輯器件(FPGA)作為控制器,選擇合適的器件,利用器件豐富的I/O口、內(nèi)部邏輯和連線資源,采用自上而下的模塊化設(shè)計方法,可以方便地設(shè)計整個顯示系統(tǒng)。

電子設(shè)計自動化(EDA)技術(shù)是基于可編程器件(PLD)的數(shù)字電子系統(tǒng)設(shè)計,它是進(jìn)行系統(tǒng)芯片集成的新設(shè)計方法,也正在快速地取代基于PCB板的傳統(tǒng)設(shè)計方式。在EDA工具軟件MAX+PLUSⅡ的支持下,本設(shè)計通過了編譯、適配和軟件仿真驗證。用載入真實(shí)實(shí)驗系統(tǒng)的硬件實(shí)驗證明了它的正確性。

1系統(tǒng)結(jié)構(gòu)及其原理

本設(shè)計結(jié)合上海航虹高科技公司生產(chǎn)的EDA實(shí)驗箱,需要顯示的16個字符的字模已存放在EPROM的8000H~807FH,采用單個8×8LED點(diǎn)陣(WTD3088)顯示字符,顯示控制由現(xiàn)場可編程門陣列(FPGA)EPF10K20TC144-4來實(shí)現(xiàn)。系統(tǒng)原理是FPGA首先產(chǎn)生點(diǎn)陣字模地址,并從存儲器讀出數(shù)據(jù)存放在16位寄存器中,然后輸出到LED點(diǎn)陣的列,同時對點(diǎn)陣列循環(huán)掃描以動態(tài)顯示數(shù)據(jù),當(dāng)需要顯示數(shù)據(jù)字模的列和被選中的列能夠協(xié)調(diào)配合起來,就可以正確顯示字符。

2FPGA設(shè)計及其原理

為在8×8LED發(fā)光二極管點(diǎn)陣上顯示字符,首先要把字符表示成為8×8像素點(diǎn)(AD0~AD7),分別為按列抽取依序排列的字符像素信息,均具有8位字長。然后依次對多字符抽取像素信息,并按序排隊存放于EPROM之中,便可得到一個待顯示數(shù)據(jù)序列。進(jìn)一步通過尋址的方法來控制該數(shù)據(jù)序列的釋放過程,就可實(shí)現(xiàn)在8×8LED發(fā)光二極管點(diǎn)陣上滾動顯示多個字符信息的目的。page控制字符顯示的滾動速度,它的取值范圍應(yīng)為0~N,col決定LED點(diǎn)陣的列開關(guān)的掃描速度,它的取值范圍應(yīng)為0~7.某一時刻能在顯示數(shù)據(jù)序列中定位待顯示數(shù)據(jù)的地址指針可用下式計算:addr=page+col應(yīng)當(dāng)注意的是,掃描速度應(yīng)遠(yuǎn)大于滾動速度,本設(shè)計中使用的掃描時鐘是1KHz,字符的滾動速度是1秒/個。調(diào)節(jié)字符信息的滾動速度;改變col的重復(fù)掃描周期,可改善在LED點(diǎn)陣上顯示完整字符信息的穩(wěn)定性。

另外還需指出,由于addr的運(yùn)算要靠硬件實(shí)現(xiàn),故地址指針addr的模應(yīng)取為N,而且為實(shí)現(xiàn)全部字符信息滾過LED點(diǎn)陣,必須在數(shù)據(jù)N前補(bǔ)充8個空數(shù)據(jù)字節(jié)。根據(jù)其工作原理,設(shè)計了描述FPGA內(nèi)核硬件功能的VHDL語言程序。本設(shè)計結(jié)合了EDA實(shí)驗箱和ALTERA公司的MAX+PLUSⅡ研發(fā)工具,并采取了行為的描述方式。

VHDL程序如下:

libraryieee;

useieee.std_logic_1164.all;

useieee.std_logic_arith.all;

useieee.std_logic_unsigned.all;

entityledis

port(clk1,clk2,reset:instd_logic;

led_s:outstd_logic_vector(2downto0);

memcs,rd,wr,cs0809,selmled:outstd_logic;

a:outstd_logic_vector(15downto0);

ad:outstd_logic_vector(7downto0));

end;

architectureled_archofledis

signalcol:integerrange0to7;

signalpage:integerrange0to15;

signaloe:std_logic;

begin

process(clk2,reset,col)

begin

ifreset='1'then

col=0;

elsif(clk2'eventandclk2='1')then

col=col+1;

endif;

led_s=conv_std_logic_vector(col,3);

a(2downto0)=conv_std_logic_vector(col,3);

endprocess;

process(clk1,page)

begin

if(clk1'eventandclk1='1')then

page=page+1;

endif;

a(6downto3)=conv_std_logic_vector(page,4);

endprocess;

ad="ZZZZZZZZ";oe='0';

memcs='0';rd='0';

wr='1';selmled='1';cs0809='1';

a(15downto7)="100000000";

endled_arch;

3實(shí)驗驗證

通過使用EDA工具軟件MAX+PLUSⅡ中的仿真器,對通過編譯的字符滾動顯示器的VHDL設(shè)計進(jìn)行了模擬仿真驗證,證明FPGA的內(nèi)核硬件工作良好。此外,將VHDL程序到由上海航虹高科技公司生產(chǎn)的EDA實(shí)驗箱上后,能正確顯示存放于EPROM中的字符。從而說明了在硬件系統(tǒng)中字符滾動和顯示掃描情況也均正常,驗證了設(shè)計的正確性。

4結(jié)束語

本設(shè)計為顯示單個字符系統(tǒng),若要同時顯示多個字符時,可以加入多個LED點(diǎn)陣即可。同時采用外部譯碼器時,可以控制的字符數(shù)將大大增加,但須注意時鐘CLK的頻率需要提高,以眼睛看到整個字符的不閃爍為基準(zhǔn)。此外,由于FPGA的驅(qū)動能力有限,當(dāng)點(diǎn)陣LED顯示亮度不夠時,需要為L

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論