一種64色VGA的設計思路
上周末和好友小陳繼續(xù)探討VGA的真彩色硬件電路時,他給我提供了一個很新穎的想法(至少我個人這么是這么認為的)。一般的VGA做8色的設計其實硬件電路無非下圖所示:
本文引用地址:http://www.ex-cimer.com/article/279417.htm
雖然嚴格來說五個信號接口的邏輯高電平是0.7V,但是接3.3V加個電阻其實也是可以工作的。對于這個電路,因為顏色信號接口VGA_R,VGA_G,VGA_B都是模擬電平輸入(0-0.7V),理論上來說每個信號是可以有256(就是把0-0.7V電壓256等分)個電平值,那么RGB三個信號接口一共最多就會有256的3次方就是1400多萬種色彩,在需要做真彩色的設計中一般都是需要AD模塊的。但是如果僅僅用VGA來顯示諸如工業(yè)上的一些簡單的菜單,就不需要那么豐富的色彩,也許8色,也許64色或者256色就足夠了。
一種64色VGA的設計思路
上面的電路就是基于8色的設計,同樣的硬件電路,我們就提出了一種64色的設計方案。如何實現呢?且聽我慢慢道來,如果我用50MHz的時鐘做一副800*600的圖片顯示,刷新頻率是75Hz,上面的電路的確只能顯示8色。而如果我把時鐘頻率提高到100MHz時,還是顯示一副800*600的圖像,那么刷新頻率就會達到150Hz,現在就要提出我們的構想了。我們知道,一般人眼對于75Hz的頻率其實是比較好的一種視覺效果,而如果我把現在的150Hz的一幅圖片顯示變成兩幅圖片交替顯示,那會是怎樣一種效果呢?很顯然,由于在原來75Hz顯示時的理想視覺時間里,RGB每個信號會出現2bit的數據,而6種不同顏色灰度疊加在一起又會是怎樣一個效果呢?先看看下面這個圖吧:
左邊和中間分別是在RGB送紅色數據和綠色數據的效果(手機拍的,可能綠色效果不好),而右邊卻是前后兩次交叉送紅色和綠色數據的效果,由于綠色和紅色的疊加其實出現的顏色是第三色了(應該是有點深綠色了),那么同樣道理,原先的3bit圖像數據,在我們提高頻率交叉送數據的情況下就會變成了6bit的圖像數據,那么也就能夠達到64色了。
由于手頭不方便接100MHz的晶振,上面這幅圖是我用50MHz的時鐘做的,紅色和綠色是75Hz的刷新率。而深綠色嚴格說應該是75/2Hz的刷新率,肉眼看其實還是會有閃動的。這個實驗說明了這個思路有一定的可行性,但是如果時鐘上到100MHz(甚至150MHz,理論可以達到512色)以后情況如何呢?VGA接口能接受如此快的傳輸速率嗎?等我手頭有器件了我會著手實踐一下的!
評論