跳轉到主要內容

嵌入式繪圖系統

“嵌入式繪圖系統”一詞有許多種含義。

首先,不同的人對“嵌入式系統”一詞有不同的理解。 對某些人來說,嵌入式系統意味著十分可靠的舊式8位元微控制器,無作業系統,實際上也無RAM、ROM或GPIO。 對其他人來說,它可能意味著功能強大的現代智慧手機。

其次,“繪圖系統”一詞有許多種解釋。 對某些人來說,它表示在喜歡的繪畫程式中繪製像素點。 對其他人來說,它表示遊戲機上運行的3D渲染軟體。

對TouchGFX而言,嵌入式系統表示STM32微控制器上的任意系統。 繪圖系統表示有使用者介面且運行頻率為60幀每秒的互動式應用。

四個主要組成部分

為了在此類平臺上實現繪圖應用,我們考慮四個直接相關的主要元件。 當然,嵌入式系統可能包含許多其他元件,但其他元件與圖形顯示的相關性較小。

MCU、RAM、快閃記憶體和顯示器

簡而言之,TouchGFX使用MCU,通過對快閃記憶體中的各個部分進行組合,創建和更新RAM中的圖像。 組合圖像會被傳輸到顯示器。 系統會視需要盡可能多地重複此過程。

MCU

在這個過程中,MCU承擔了所有重要任務。 它讀取快閃記憶體中的圖像,並將它們寫入RAM。 在將半透明紅色文字融合到圖像上時,它計算得到的色彩並將其存儲到RAM。 它對圓的所有像素進行渲染並存儲到RAM。 它將圖像從RAM傳輸到顯示器。

MCU提供CPU、內部快閃記憶體和內部RAM等

STM32 MCU具有特定功能,如LTDC、Chrom-ART、Chrom-GRC等,為繪圖系統的實現提供協助。

RAM

所得計算圖像(影像緩衝)存儲在RAM中。 在更新圖形時,MCU對RAM執行讀和寫操作。 在將所得圖像傳輸給顯示器時,再次執行讀操作。

在許多情況下,所得圖像被存儲在MCU內部的RAM中。 如果將所得圖像存儲在內部RAM中的方法不可行,可以添加外部RAM。

Flash

所有靜態資料均存儲在快閃記憶體中。 圖像、字體和文字。 快閃記憶體由MCU讀取,其內容被寫入RAM或與RAM內容進行組合。

在大多數情況下,由於內部快閃記憶體很少能夠容納下所有圖形資產,因此設置中會增加外部快閃記憶體。 對於十分簡單的應用,有內部快閃記憶體即已足夠。

理想的做法是對快閃記憶體進行記憶體映射,以便從快閃記憶體直接讀取像素並寫入RAM。 或者,如果不對快閃記憶體進行記憶體映射,可將快閃記憶體內容傳輸到RAM,然後再從RAM讀取。

顯示

顯示器將圖像實際顯示出來。

RAM中儲存計算後的圖像(影像緩衝)由MCU按固定時間間隔發送到顯示器。

Further reading
  • 參見硬體選型指南瞭解關於硬體選擇的詳細資訊。
  • 參見開發板啟動搭建指南瞭解關於開發板設置和元件的詳細資訊。