VGA全稱是Video Graphics Array,即視頻圖形陣列,是一個(gè)使用模擬信號(hào)進(jìn)行視頻傳輸?shù)臉?biāo)準(zhǔn)。分辨率高,顯示速度快。
一、傳輸協(xié)議
VGA接口15個(gè)引腳,除去地線,我們一般會(huì)用到5個(gè)引腳:1(RED)、2(GREEN)、3(BLUE)、13(HSYNC)、14(VSYNC)。
如圖1:
1、2、3指的是傳輸?shù)募t、綠、藍(lán)三色的模擬信號(hào),范圍為0-0.714V,0代表無色,0.714V代表滿色,需要注意的這是模擬信號(hào),因此前面還需要進(jìn)行一個(gè)數(shù)模轉(zhuǎn)換。HSYNC(行同步信號(hào))和VSYNC(場同步信號(hào))分別是指傳輸一行和傳輸一幀的時(shí)序,下面看一下他們的時(shí)序圖:
a:行同步時(shí)期,掃描地址的復(fù)位
b:行消隱后肩,掃描地址轉(zhuǎn)移后的穩(wěn)定等待準(zhǔn)備期
c:行顯示時(shí)期,數(shù)據(jù)有效區(qū)域
d:行消隱前肩,掃描地址轉(zhuǎn)移的準(zhǔn)備
e:行掃描總時(shí)間,一行掃描的總時(shí)間
o:場同步時(shí)期,掃描地址的復(fù)位
p:場消隱后肩,掃描地址轉(zhuǎn)移后的穩(wěn)定等待準(zhǔn)備期
q:場顯示時(shí)期,數(shù)據(jù)有效區(qū)域
r:場消隱前肩,掃描地址轉(zhuǎn)移的準(zhǔn)備
s:場掃描總時(shí)間,一場掃描的總時(shí)間
可以看出,行同步時(shí)序和場同步時(shí)序類似,分別經(jīng)歷4個(gè)階段:拉低、顯示后沿、有效數(shù)據(jù)傳輸和顯示前言。
FPGA硬件測試時(shí)要將sys_pll中的輸出頻率改為25MHZ。
三、驅(qū)動(dòng)電路的verilog設(shè)計(jì)(lcd_driver)
目前液晶顯示器普及,而高于 60Hz 的刷新率對(duì)于液晶來說,沒有任何意義,所以我們以 640*480 在 60Hz 的刷新率下為例。
本次我們采用的是ADV7123視頻轉(zhuǎn)換芯片來實(shí)現(xiàn)。
1)為便于移植,根據(jù)640*480 60hz分辨率下的參數(shù),宏定義相關(guān)數(shù)據(jù)。
2)行掃描單位hcnt計(jì)數(shù)
3)列掃描單位vcnt計(jì)數(shù)
每掃描完一行,即hcnt完成H_TOTAL次計(jì)數(shù)后,vcnt進(jìn)行自加。
4)ADV7123控制信號(hào)輸出
為了實(shí)現(xiàn)數(shù)據(jù)在lcd_dclk上升沿有效,我們將clk翻轉(zhuǎn)輸出,已實(shí)現(xiàn)上升沿采樣 。
lcd_blank作為顯示空白信號(hào),低電平有效。
設(shè)計(jì)中不需要lcd_sync信息,可以直接接地。
5)有效顯示使能信號(hào)輸出
當(dāng)使能信號(hào)有效時(shí),接收外部輸入的RGB數(shù)據(jù)lcd_data.
6)外部數(shù)據(jù)請求控制信號(hào)
為了保證數(shù)據(jù)穩(wěn)定,lcd_request要提前一個(gè)時(shí)鐘請求外部輸入數(shù)據(jù) 。
同時(shí),設(shè)計(jì)中實(shí)時(shí)顯示下一時(shí)刻的掃描地址lcd_xpos、lcd_ypos,也要提前一個(gè)時(shí)鐘輸出,以保證外部數(shù)據(jù)輸入的同步化。
lcd_xpos、lcd_ypos是顯示器有效顯示區(qū)域的行列坐標(biāo)計(jì)數(shù)值。
四、模擬VGA圖像數(shù)據(jù)的輸入
1)宏定義三原色組合的顏色如下
這里要注意所用的VGA驅(qū)動(dòng)電路是RGB888還是RGB565,如果是RGB565,三原色要改成下面樣式,并把其他程序中l(wèi)cd_data的位數(shù)改為16位:
筆者曾在這里犯過錯(cuò)誤。
2)根據(jù)輸入的行、列地址信號(hào),輸出三原色組合后得到的8條彩色。
五、不同分辨率的VGA驅(qū)動(dòng)
lcd_para文件定義了四種VGA分辨率驅(qū)動(dòng),這里只需修改定義的注釋就行,并把PLL鎖相環(huán)中的頻率改為相應(yīng)的頻率。
PLL修改方法為直接修改下面參數(shù)中的乘法除法因子:
編輯:hfy
-
FPGA
+關(guān)注
關(guān)注
1629文章
21744瀏覽量
603661 -
Verilog
+關(guān)注
關(guān)注
28文章
1351瀏覽量
110124 -
模擬信號(hào)
+關(guān)注
關(guān)注
8文章
1130瀏覽量
52469 -
驅(qū)動(dòng)電路
+關(guān)注
關(guān)注
153文章
1530瀏覽量
108544 -
VGA
+關(guān)注
關(guān)注
5文章
535瀏覽量
62978
發(fā)布評(píng)論請先 登錄
相關(guān)推薦
評(píng)論