<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > EDA/PCB > 設計應用 > 基于FPGA的真彩VGA顯示的實(shí)現

基于FPGA的真彩VGA顯示的實(shí)現

作者: 時(shí)間:2012-03-12 來(lái)源:網(wǎng)絡(luò ) 收藏

Mif文件在中的應用,主要是在RAM,ROM中,一般用來(lái)存儲字模、波形數據、信號采樣、數據序列等,可以看做是C語(yǔ)言中的數組,用來(lái)存儲數據。Bingo當年也是郁悶的很啊,當年做電子琴,在Quartus II Memory Initialzation File 也手動(dòng)寫(xiě)過(guò)曲譜的mif文件。眼睛都花了;曾經(jīng)做過(guò)波形發(fā)生器,有康芯的Guagle的支持,很方便;對于字符圖片顯示,字模數據的龐大,Bingo最后通過(guò)C語(yǔ)言,根據mif格式,設計了軟件,今天定格。

本文引用地址:http://dyxdggzs.com/article/190667.htm

一、講真彩顯示的理由:

畢竟這是電腦的液晶,為啥我們就不能做的想電腦一樣顯示彩色的圖片呢?只是單純的顯示線(xiàn)條,字符,感覺(jué)還是在玩LCD1602、LCD12864似地,不爽,不爽,灰常的不爽。那么大的,不做點(diǎn)像樣的東西,還真的很不甘心。

視覺(jué)的沖擊,真彩的誘惑,內心的萌動(dòng),如果你是個(gè)不愿意放棄的人,沒(méi)做到真彩顯示,我想,你應該不會(huì )那么踏實(shí);如果你是一個(gè)對視覺(jué)有沖動(dòng)的人,單調的驅動(dòng),決不會(huì )甘心。Bingo當年就是很不爽,為了那一刻,走一步,再走一步,潛行了很久,終于在某年某月某一天,視覺(jué)暫留于熒光屏,彩色的誘惑,阻隔了前面的世界,歷史從此定格。

本章將講述VGA真彩顯示的設計,通過(guò)硬件設計,軟件設計,以及各種不同的方案來(lái)講解,同時(shí)通過(guò)對Bingo設計的真彩顯示的一個(gè)工程稍做分析;最后展望未來(lái),繼續走下一步,視覺(jué)暫留的我們不能就此停下腳步,,風(fēng)雨兼程決不放棄,接下來(lái)要做的將會(huì )更多更多,其實(shí)這才是真正的開(kāi)始。

二、真彩顯示的要求

1、數據的流通

要想在VGA上顯示一張彩色的圖片,就必須有充足的條件。簡(jiǎn)單的說(shuō),那就必須要有圖片數據源、要能實(shí)現數據緩存,最后以標準的時(shí)序給VGA刷屏。整體流程如下圖所示:

55.gif

(1)外部數據源,由CPU捕獲

(2)由CPU捕獲的數據,緩存與SRAM或者SDRAM等顯存

(3)由CPU控制VGA狀態(tài),以固定的時(shí)序給VGA刷屏

關(guān)于標準時(shí)序給VGA刷屏也就是以上的(3),Bingo在前面兩張已經(jīng)講的非常清楚,掌握的朋友應該可以應用自如了。前文中VGA的驅動(dòng)沒(méi)有數據源(暫且認為Mif文件的數據屬于邏輯電路的描述),我們只是用FPAG邏輯描述的電路,給VGA固定坐標顯示固定的內容。因此,這一章的關(guān)鍵是將VGA刷屏的數據源,以及數據緩存處理,Bingo通過(guò)分析數據流通渠道來(lái)分析VGA真彩圖像顯示的技術(shù)。

2、色彩的識別

關(guān)于圖像的格式,有JPEG、BMP、PNG等多種格式;圖像的位數,也有單色、4灰、256色、4096色、16位真彩色、24位真彩色、32位真彩色這幾種。

有一種方法是直接通過(guò)讀取存放于SD卡、U盤(pán)等移動(dòng)數據的圖片,通過(guò)圖片解碼來(lái)得到圖像數據,真彩顯示。并行數據輸出,經(jīng)過(guò)數模轉換(電阻網(wǎng)絡(luò )轉換或者視頻轉換芯片),得到16位以上的VGA數據。人眼不能分辨的極限,至少也需要16位真彩色。16位以上的數據,24位、32位,人眼基本無(wú)法分辨清楚,因此,要求不是很高的情況下16位真彩色已經(jīng)足夠勝任。

前面講過(guò)的VGA驅動(dòng),最基本的分辨率有如下三種:

(1)VGA_640_480_60FPS_25MHz

(2)VGA_800_600_72FPS_50MHz

(3)VGA_1024_768_60FPS_65MHz

可見(jiàn),至少25MHz的速度刷屏,需要我們在軟件中實(shí)現顯卡刷屏的功能;在最小圖片容量即(1)模式下的數據量是640*480*16 = 4915200Bits = 600KB,在(3)模式下的數據量是1024*768*16 = 1.5MB。如此大的圖片數據,需要有如此容量的緩存區。

綜上,也就是說(shuō),要實(shí)現真彩圖像VGA顯示,第一需要16位以上的VGA驅動(dòng)電路,第二需要足夠的容量來(lái)存放圖片。

三、各種方案的匯總

1. 靜態(tài)數據源

所謂靜態(tài)數據源,就是數據已經(jīng)保存在系統中,不能再改變的的數據源。為了顯示真彩圖像,我們可以將圖像數據存放于SDRAM,或者Flash,從而通過(guò)讀取IC上已經(jīng)存儲的圖像數據,顯存于SRAM,利用前面Bingo設計的VGA可移植模塊驅動(dòng)刷屏,實(shí)現真彩圖像的顯示?;镜募軜嬀褪牵?/p>

+ 靜態(tài)數據源 + SDRAM/SRAM + VGA

當然此處數據存放于SDRAM,我們可以用Nios II 的C存放于數組,通過(guò)JTAG下載;FLASH中的數據,我們可以用Nios II 中的 Flash Programmer來(lái)完成配置。關(guān)于SDRAM中存放圖像數據來(lái)實(shí)現真彩圖像時(shí)最基本最簡(jiǎn)單的方法,Bingo將會(huì )在后文講解。


上一頁(yè) 1 2 3 4 下一頁(yè)

關(guān)鍵詞: FPGA VGA

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>