GD32F450系列MCU基于200MHz Cortex-M4內(nèi)核,是GD32F4家族的高性能產(chǎn)品線,具備了超高的計算性能。GD32F450配備了TFT-LCD控制器(TLI)和硬件圖形加速器IPA (Image Processing Accelerator), 以實現(xiàn)液晶驅(qū)動并顯著提升顯示效果,最高可以支持XGA 10吋1024 x 768像素的RGB TFT顯示。下面我們就來一起了解MCU驅(qū)動TFT-LCD并加速圖形顯示的過程。
GD32F450的TLI (TFT-LCD控制器)連接同步的LCD接口,并且為無源LCD提供像素數(shù)據(jù)、時鐘以及時序信號來驅(qū)動LCD顯示屏。它支持不同的可編程的時序參數(shù)。內(nèi)置的DMA可以不斷的從系統(tǒng)存儲器(如外接的SDRAM里)搬運數(shù)據(jù)并輸出到外部的LCD顯示。GD32F450的TLI接口具備了多層顯示能力,可以支持兩個獨立的顯示層,并支持層窗口和層混疊。
TLI接口只負責產(chǎn)生LCD需要的時序,并沒有集成RAM。由于顯示高分辨率圖形圖像所需要的RAM容量較大(通常幾百KB以上),不可能直接使用MCU內(nèi)置的RAM,所以需要外擴一片SDRAM來緩存所需要顯示的圖像數(shù)據(jù)。在這里,SDRAM的作用是LCD的顯存。比如要驅(qū)動480*272分辨率16位色的裸屏,則顯存就需要480*272*(16/8) 個字節(jié)。
那么在使用TLI之前,要配置好LCD的時序并設(shè)置外擴的SDRAM的地址。開啟并配置好TLI之后,就可以在LCD的時鐘引腳測量到有穩(wěn)定的頻率輸出,MCU會自動將SDRAM緩存的內(nèi)容輸送到LCD屏幕上顯示。我們通過改變SDRAM緩存的內(nèi)容就可以直接改變顯示內(nèi)容。
TLI模塊支持2個圖層和1個背景圖層,一般來說顯示一個圖層就可以了。但這2個圖層可以單獨設(shè)置顯示區(qū)域和SDRAM緩存地址,并且同時開啟時,支持層窗口和層混疊,這樣就發(fā)揮了多層顯示的效果。MCU自動將2個圖層的顯示內(nèi)容進行混合,混合順序是:圖層2 -> 圖層1 -> 背景色,圖層2位于最頂層,我們可以利用這兩個圖層實現(xiàn)復雜的功能,以及比如透明度變化以及毛玻璃效果等特殊的顯示效果。
另外,TLI模塊還可以跟GD32F450內(nèi)置的圖像處理加速器(IPA)一起使用。IPA的本質(zhì)是一個專用的DMA用于做圖像之間的傳輸,提供了從某一個或兩個源圖像到目標圖像的可配置的、靈活的圖像處理功能。Flash與SDRAM之間的數(shù)據(jù)的傳輸都可以通過IPA來硬件傳輸,MCU只需要配置一下傳輸?shù)穆窂?,并在中斷里等傳輸完成的通知就可以。IPA可以很大程度提升整個系統(tǒng)處理圖像的能力,比如可以復制某一源圖像到目標圖像中并同時進行特定的格式轉(zhuǎn)換,或者將兩個不同的源圖像進行混合,并將得到的結(jié)果進行特定的顏色格式轉(zhuǎn)換,以及用特定的顏色填充目標圖像區(qū)域等。
下面以一個應(yīng)用實例來說明GD32F450的LCD顯示功能 (來自EEboard網(wǎng)友ts2000的GD32F450方案分享)。
這是一個基于GD32F450的文件圖片瀏覽器,包含RGB565驅(qū)動、FATFS、JPEG解碼,支持文件名中英文混合顯示、長文件名支持。字庫建立在SD卡,再也不怕更換字庫麻煩和字庫大小限制了。RGB屏用的是通用的40P RGB彩屏。隨便就可以搜索到。SDRAM則用的SD內(nèi)存,隨便就可以搜索到。
方案結(jié)構(gòu)圖如下:
開機CPU對所有的硬件進行初始化,然后從SD卡讀取所有的文件信息,打印在屏幕上,按鍵可以控制光標上下移動,當選擇某一圖片后,CPU對JPG格式的圖片解碼,然后顯示在屏幕上。當按下返回鍵后,CPU會重新讀取相應(yīng)的文件信息。
以下是使用GD32F450驅(qū)動TFT-LCD的硬件方案演示:
-
驅(qū)動器
+關(guān)注
關(guān)注
52文章
8069瀏覽量
145686 -
存儲器
+關(guān)注
關(guān)注
38文章
7412瀏覽量
163449 -
圖像數(shù)據(jù)
+關(guān)注
關(guān)注
0文章
51瀏覽量
11259
發(fā)布評論請先 登錄
相關(guān)推薦
評論