如有侵犯,即刻刪除
附圖太麻煩,批量上傳一次:
1. vga
顯示原理
vga(video graphics array)
作為一種標準的顯示介面得到了廣泛的應用。
vga在任何時刻都必須工作在某一顯示模式下,其顯示模式分為字元顯示模式和圖形顯示模式,而在應用中討論的都是圖形顯示模式。
vga的圖形模式分為三類:
cga,
ega相容的圖形模式;標準
vga圖形模式;
vga擴充套件圖形模式,後兩種圖形模式統稱為
vga圖形模式。文中基於標準
vga模式來實現。工業標準的
vga顯示模式為:
640×480×16×60。
常見的彩色顯示器一般由陰極射線管
(crt)
構成,彩色由
grb(green red blue)
基色組成。顯示採用逐行掃瞄的方式解決,陰極射線槍發出電子束打在塗有螢光粉的螢光屏上,產生
grb基色,合成乙個彩色畫素。掃瞄從螢幕的左上方開始,從左到右,從上到下,逐行掃瞄,每掃完一行,電子束回到螢幕的左邊下一行的起始位置,在這期間,
crt、對電子束進行消隱,每行結束時,用行同步訊號進行行同步;掃瞄完所有行,用場同步訊號進行場同步,並使掃瞄回到螢幕的左上方,同時進行場消隱,並預備進行下一次的掃瞄。
vga顯示控制器控制
crt顯示圖象的過程如圖
1所示。
2. vga
訊號時序圖2
所示是計算機
vga(640×480
,60 hz)
影象格式的訊號時序圖。圖2中,
v_sync
為場同步訊號,場週期
tvsync=16
.683 ms
,每場有
525行,其中
480行為有效顯示行,
45行為場消隱期。場同步訊號
vs中每場有
1個脈衝,該脈衝的低電平寬度
twv=63μs(2行)
。場消隱期包括場同步時間
twh、場消隱前肩
thv(13行)
、場消隱後肩
tvh(30行)
,共45
行。行週期
thsync=31
.78μs
,每顯示行包括
800點。其中,
640點為有效顯示區,
160點為行消隱期
(非顯示區
)。行同步訊號
hs中每行有乙個脈衝,該脈衝的低電平寬度
twv=3
.81 μs(即96
個dck)
;行消隱期包括行同步時間
twh,行消隱前肩
thc(19
個dclk)
和行消隱後肩
tch(45
個dclk)
,共160
個點時鐘。復合消隱訊號是行消隱訊號和場消隱訊號的邏輯與,在有效顯示期復合消隱訊號為高電平,在非顯示區域它是低電平。 圖
2:vga時序
3. 實際使用
圖3:vga訊號示意圖
如上圖,是我製作的實際的一幀vga影象示意圖,比上述訊號時序圖更加形象。
4.結合edid進行實際說明
以下是從我本地linux中獲取到的edid片斷(位於/var/log/xorg.*.log中):
(ii) nvidia(0): validating mode "1024x768":
(ii) nvidia(0): 1024 x 768 @ 75 hz
(ii) nvidia(0): mode source: x server
(ii) nvidia(0): pixel clock : 78.75 mhz
(ii) nvidia(0): hres, hsyncstart: 1024, 1040
(ii) nvidia(0): hsyncend, htotal : 1136, 1312
(ii) nvidia(0): vres, vsyncstart : 768, 769
(ii) nvidia(0): vsyncend, vtotal : 772, 800
(ii) nvidia(0): h/v polarity : +/+
(ii) nvidia(0): mode is valid.
其中的引數說明如下:
pixel clock:一秒鐘可產生多少個畫素點;
hres: 行解析度,對應於圖3中的「有效影象區域」的寬;
hsyncstart:行同步開始標記,對應於圖3中的「行同步訊號」的左側,意思是從「有效影象區域」的左側開始,數多少個畫素開始同步;
hsynend:行同步結束標記,對應於圖3中的「行同步訊號」的右側,意思是從「有效影象區域」的左側開始,數多少個畫素同步結束;
htotal:一幀vga畫面一共寬多少個畫素,其包含「行同步訊號」的寬、「行消隱前肩」、「行消隱後肩」和「有效影象區域」的寬。
計算關係:
行消隱後肩寬 = hsyncstart
–hres;
行同步訊號寬 = hsyncend
–hsyncstart;
行消隱前肩寬 = htotal
–hsyncend;
類似於「行」的機制,「場」的引數說明如下:
vres: 高解析度,對應於圖3中的「有效影象區域」的高;
vsyncstart:場同步開始標記,對應於圖3中的「場同步訊號」的上部,意思是從「有效影象區域」的頂部開始,數多少個畫素開始同步;
vsynend:場同步結束標記,對應於圖3中的「場同步訊號」的底部,意思是從「有效影象區域」的底部開始,數多少個畫素同步結束;
vtotal:一幀vga畫面一共高多少個畫素,其包含「場同步訊號」的寬、「場消隱前肩」、「場消隱後肩」和「有效影象區域」的高。
計算關係:
略。重新整理率的計算:
framerate = (int)( fpixelclock / (fhtotal * fvtotal) )
好了,這次就先寫到這裡,以後有時間逐步完善。
由於掌握程度有限,文中可能有紕漏之處,敬請指正。謝謝。
ojoe
2010-6-18
VGA訊號時序
1.vga顯示原理 vga video graphics array 作為一種標準的顯示介面得到了廣泛的應用。vga在任何時刻都必須工作在某一顯示模式下,其顯示模式分為字元顯示模式和圖形顯示模式,而在應用中討論的都是圖形顯示模式。vga的圖形模式分為三類 cga,ega相容的圖形模式 標準vga圖形...
VGA管腳定義
vga管腳定義 1 紅基色red2 綠基色green 3 藍基色 blue 4 位址碼 id bit 5 自測試 各家定義不同 6 紅地7 綠地8 藍地9 保留 各家定義不同 10 數字地11 位址碼12 位址碼13 行同步14 場同步15 位址碼 各家定義不同 如下圖 最近在整個vga的驅動,挺鬱...
VGA入門理解
vga就是如今很多顯示器上連線主機的訊號傳輸介面。有三排15個引腳。標號描述 標號描述 標號描述12 34id2 顯示器id第2位 5gnd 地 6r gnd 紅色接地 7ggnd綠色接地 8bgnd 藍色接地 9key 10sgnd 同步訊號地 11id0顯示器id第0位 12id1 顯示器id第...