營銷團隊日益迫切地希望工程部門能夠在下一代產品中采用提供更大且圖像質量更優的顯示器。對于咖啡機、烤箱、工廠自動化設備及家用熱水器等諸多應用而言這一需求確實存在,當然對于工程團隊來說也這會是一項有趣的新挑戰。
如何在應用中配置顯示器
讓我們先來看一下選擇顯示器時會有哪些選項。這個產業通常會用到很多三個字母的縮寫詞(TLA),它們雖然很簡單,但有時也容易引起混淆。
相信工程界的每位從業者都已經熟知液晶顯示器這一概念;即使以后轉到其他工作崗位,從事“銷售”工作,他們仍會記得曾在實際工作中使用過帶LCD顯示屏的設備。
其實它的基本原理很簡單。兩個極化層中間有一個液晶層(夾角90度),如果沒有液晶,就不會有光線穿過。
然而,晶體被置于一種螺旋模式中,它可以對兩個極化層中間光的偏振進行調整,這意味著所有光線可以從中穿過。當把電荷引入液晶時,液晶會展開或得到調和,從而不再對光振進行調整,此時液晶會呈現黑色。
這種“扭曲”方向是液晶顯示器常見的內部構造模式,這便是扭曲向列型液晶顯示器(TN-LCD)的來源。“向列型”只是用來描述液晶物理狀態的一種表達方式。
彩色顯示器可以以這種模式進行配置,每個像素使用三個單獨的LCD液晶單元,每個單元配置一個紅色、綠色或藍色的過濾器。然后像素會排成列和行,對列施加電壓并且使行觸底,一個特定的像素就可以被打開或關閉。
然而,這種方法的問題是,在大顯示屏上,當同一列及同一行的幾個像素同時被切換時,電荷通過矩陣傳播會有很長的延遲,電荷分布到這個矩陣中也會導致對比度較差的情況發生。
通過使用STN-LCD模塊,在一定程度上可以解決這個問題。在這種情況下,STN代表超扭曲向列型液晶屏。在STN屏中,90度旋轉的液晶將由一個“超級扭曲”—或通常270度的扭曲液晶所取代。
然而,這仍是在建立一個具有帶電列和觸底行的矩陣,也稱為被動模式,它仍帶有前面所述及的固有限制。
主動控制提供了更好的對比度且響應時間更短。在主動式液晶顯示系統中,每一個液晶單元都配置專用的晶體管,晶體管控制著電池或像素的切換。這時“薄膜晶體管液晶顯示屏(TFT-LCD)”便應運而生,它是一種由薄膜晶體管控制的液晶屏,是當今圖形顯示應用中常見的顯示屏。
OLED不是該市場中流行的顯示技術,只是一種替代品。基本上它的每個像素都帶有LED矩陣。與其他以液晶顯示為基礎的產品相比,它功率低,更輕便,可以放在柔性表面上。但是,代價昂貴的制造工藝和顯示器中藍色部件相對有限的壽命遲緩了他們被大規模引入市場的進程。
當然,還有一些其他的替代品沒有得到廣泛應用,但應該被了解,在這里將其介紹如下:
EPD:即電子紙,在電子閱讀器和一些手表中得到應用,但不適用于嵌入式非消費品。
LCOS:硅基液晶,用于“近眼”設備或投影儀,但尚未在產業市場中得到應用。
PDP(或等離子):用于老式的大顯示屏,但正在迅速被LCD或LED屏取代。
顯示器驅動
現在,我們了解顯示屏顯示圖片的原理以及各種顯示技術的差異。接下來讓我們看看如何實現驅動顯示屏。對于較小的顯示屏,往往采用被動控制系統,經常可以看到采用新的COG(玻璃上芯片)技術,其中液晶顯示器的驅動芯片實際上是被集成到面板玻璃里面了。
這樣能夠有效降低較小顯示屏的成本。大多數情況下,這些顯示屏包括一個附加的印刷電路板,其中包含顯示屏的控制裝置,另外還可以包含一個觸摸界面控制器。
在顯示方面還有兩個選項:顯示模塊和標準顯示器。正如你想象的那樣,該完整模塊帶有保存顯示屏圖像數據所需的內存,通常是一個簡單的SPI接口。
我們此處對更多細節不作詳細探討,但可以肯定地說,雖然它們的價格比標準顯示器略高,但卻能為初級用戶提供更簡單的解決方案。
標準顯示器有2個標準接口
RGB信號或LVDS信號。對于超過一定量級的(關于WVGA)情況將提供一個LVDS接口,較小量級的情況將提供一個RGB接口。當然,這并非是一成不變的規則,但顯示屏越大,越有可能只有一個LVDS接口。
RGB是一個并行接口,每種顏色(紅、綠、藍)由并行總線代表。因此,對于一個24位的彩色顯示器來說,將會有24個“數據”位。
這是簡單的接口,因為每個像素數據都會以標準的一對一傳輸的方式被存儲到RAM上。有幾種不同的RGB標準符號,如RGB666、RGB565,這僅僅表明了每種顏色所擁有的位數。對于RGB666來說,每種顏色都擁有6個數位,因此它擁有18bpp的顏色。除了這些數據信號,還有在面板上同步傳輸的時鐘信號。
面板時鐘(或像素時鐘)會對整個接口的傳輸速度進行設定并對隨后發生的數據傳輸進行設置。還有一種Hsync時鐘(或水平同步時鐘),當跳到下一行時會在多個像素時鐘之后顯示。
然后以更慢的頻率,以Vsync(垂直同步)信號的方式依次顯示何時所有的行被寫入,并且為顯示下一張圖片或下一個畫面創造了條件。
當然,顯示器越大,滿足顯示屏的刷新率所需的像素時鐘速度會更高。因為當外部信號頻率變高時,信號錯亂的風險也會隨之增大。
由于這個原因,更大的顯示屏現在傾向于使用LVDS接口而不是標準的并行RGB模式。LVDS代表低電壓差分信號。LVDS技術已得到廣泛應用,對于這種技術來說,信號的完整性是非常重要的,尤其在高頻率情況下。
LVDS信號傳輸采用雙線接口模式(每通道),擁有一個常用電壓(通常為1.2 V)。在此條件下,如果要創建“高頻”信號,一條線上的電壓需要升高100 mV,另一條線上支持信號的電壓需要降低100 mV。從而為實現低功耗,高頻率,高可靠性的信號傳輸創造了條件。
顯示器通常有四個LVDS通道,分別用于傳輸紅色、綠色、藍色和時鐘信號,這樣數據便會以串行方式傳輸,而不是以并行方式傳輸。
管理內容
現在我們已經知道這些顯示屏是如何設置的,接下來我們把視線轉移到這一應用的另一層面,來看看圖像內容是如何形成的。首先,讓我們先來看一下這些圖像是如何儲存的。相信大家一定會對自家電腦中儲存的JPEG格式度假照片非常熟悉。
但這并非圖像所采用的格式,圖像以光柵圖像或位圖的格式進行保存。當然,這比你度假照片的JPG格式要大得多,現在我們來探究一下這些圖像是如何保存在內存中的,以及你對這些圖像的實際需求程度。
正如我們所言,基本圖片儲存為位圖,所有圖片像素經由數據來實現儲存和顯示。和其他格式一樣,不存在數據壓縮。它可以是16位或24位色深;若為24位顏色,則每一像素由三個字節來表示。
此時你就能立即明白,這意味著很大一部分內存空間將被占用。例如,一個640x480像素的VGA顯示屏會有307,000個像素,顯示屏上的每個圖像約有900KB的數據。但除此之外,內存的使用問題仍未完結。
一個典型的GUI(圖形用戶界面)應用程序由若干圖層組成。這些圖層會在另一層頂部顯示。例如,某一層可能是整體的背景圖像,而下一層則可能是圖片外圍的幀,這一圖片上顯示一些數據,如氣溫和時間。
第三層可能是一個圖表,用以顯示應用程序中實時測量的數據。將這些圖片存儲于不同的層,并因此分布在RAM的不同區域,正是因為你僅需要更改某一小圖片,而不用重新計算整個圖像。若每次圖表更新或氣溫變化你都需要修改整個GUI的話,將會耗費太多CPU功率。
這些圖層到時會通過硬件加速或軟件、使用大量各種各樣的機制來實現整合。
這里有兩個關鍵概念,一個是阿爾法混合,另一個是色度鍵控。阿爾法混合定義已知的阿爾法通道。阿爾法通道是額外的8位值,用以加入每一像素的24位色彩信號。
這種阿爾法值定義每一像素的透明度,以使得圖層能夠在背景層的頂部設為半透明狀態。色度鍵控在內存方面稍微不那么密集,但對圖片整合非常有用。色度鍵控是一種為我們所有人都熟悉,它在電影中廣泛應用,又被稱作“綠光屏”。演員站在一副綠色簾幕的前方,然后綠色被一段播放著氣急暴躁的恐龍追逐他的畫面所代替。
在電影制作中,人類膚色通常采用綠色或藍色,這兩種色調沒有變過。但實際上,也可以使用紅色。這種效果對于創作不同形態的對象大有裨益,只需使用一個正方形,然后在需要去色的對象的周圍區域進行著色。
在前面的例子中,我們使用了一個24位色深的VGA顯示屏,并且需要900kB的圖像數據。現在,讓我們設想一下,這一圖像僅僅是圖像的背景,而且在它的頂部還顯示有另外兩張圖片。
圖表有一個,幀將會是其他的層。這些無須全屏,所以在這種情況下,我們只能使用較小尺寸的圖像,大概為QVGA尺寸的,每張需要225KB,而且現在所需的總內存大概為1.3MB。 因此,你擁有1.3MB的數據內存來支撐你在展示于銀幕之上的現有數據。然而,遺憾的是,你還需要比1.3MB更大一點的內存。這里的問題就易如反掌了。比如,如果一個顯示屏中的背景與下一個顯示屏中的背景不一致,因而你要更改某一張圖片,在該圖片仍然顯示于顯示屏上時,你就必須通過CPU來更改內存中的數據。
這會引起顯示屏上的可見閃爍,并且會導致顯示屏顯示某個圖像的一半和下一個圖像的另一半。這看起來明顯欠佳;尤其是當我們認為顯示屏正用于促進為終端客戶創造更高價值的命題時。
這個問題通過諸如雙重緩沖等概念就可以非常容易地解決。在雙重緩沖區,你實際上可以折疊系統中的所有內存以便于下一張圖片可以設置在后緩沖區,然后在圖片準備好時,你只需從內存中某個區域轉換至下一個區域即可。內存的使用空間由此翻了一倍。現在,我們只需2.6MB的內存就能搞定了。
現在,我已為24位色深的VGA顯示屏儲存了2.6MB的圖片數據。當然,也有方法將其擴大和縮小。
用個更小一點的顯示屏也是可能的,這會降低內存需求。因為每一像素寬越小,你能在縱列中節省的其他像素就有480。但是,在其他方向也同樣如此。XGA顯示屏的像素為720x1024,其24位色深的背景圖像所需內存為2.1MB,而不是VGA顯示屏的900KB。
另一個可以更改的是每一像素的顏色需要使用多少位。在該例中,我們每像素使用了24位,因 為這是時下流行的選擇。它的靈活性大,而且確保了顯示器在實際操作中能夠展示圖形化團隊意欲搬上銀幕的作品。
當然,也能使用設置的8位色深,但這回帶來一些其他問題。因為只有255種顏色,所以要遇到的問題也會很多。例如,像顯示文本這樣的功能都很難實現。
現代字體不單單是由白色背景和帶有像素精確數寬度的黑色字母組成。甚至連簡單字母都是由一連串的黑色和灰色組成,因此很容易為人的眼睛所識別。
使用小顯示屏和8位色深來顯示一些數據也是可能的。
考慮到這一點,就驅動顯示屏的處理器或控制器而言,也有很多選擇。一般的經驗法則為,微控制器驅動色神較低、尺寸較小顯示屏的好選擇,其成本低廉;這對于背景圖像只需占用大約150KB(使用16bpp)內存的QVGA尺寸的顯示屏(320x240)仍然具有意義。
然而,MCU的帶寬以及MCU中的內核性能常常不足以創造真正豐富的用戶體驗。因此,除了QVGA尺寸,標準選擇更傾向于要么MPU,要么新的嵌入式MPU,各大供應商對此均有供貨。實際上,選擇內嵌好存儲器的MPU更為普遍。
結論
總之,為諸多系統加裝顯示屏的消費潮流正橫掃嵌入式電子產品界。這種簡單的做法促使OEM走上了產品差異化之路并實現了其終端產品的增值,但同時也為剛剛邁入該領域的設計工程師們提出了新的挑戰。就技術、色彩和尺寸而言,顯示屏的選擇多種多樣,幾乎每天都在發生新的變化。因為,移動和消費領域不斷推動顯示技術朝著日新月異、生動有趣的方向發展。
對于新邁入該領域的工程師而言,應在初期就確定下來的關鍵設計標準是顯示屏的尺寸(單位:像素),然后根據這一標準,剩下的大多數決策就顯得簡單多了。如果采用大顯示屏,那么就需要配備大量內存以及支持該內存和界面的控制器或處理器,同時還需要有足夠的性能來驅動它。