其他功能
如果專案設定中有任何可用的其他功能,就會出現「Additional Features」(其他功能)群組。
外部資料讀取器
對於RGB565影像緩衝區像素格式,TouchGFX支援Data Reader (資料讀取器)介面,讓開發人員能夠直接從非記憶體映射的串列快閃記憶體讀取資料,無需進行快取,而代價就是在記憶體增加額外的緩衝區。 如需相關範例瞭解如何實作資料讀取器,以便由非記憶體映射的Flash晶片中擷取應用程式資產,請參見串列快閃記憶體一文。
Data Reader (資料讀取器)選項通常適用於低成本解決方案,例如STM32G0這類沒有足夠記憶體用於額外緩衝區的解決方案。
開發人員可進行以下設定:
- External Data Reader (外部資料讀取器):啟用或停用功能。 如果啟用,TouchGFX會直接透過所產生的介面擷取資產資料。 如果停用,則開發人員需要將圖像快取到記憶體緩衝區中。
- External Data Reader: Memory base address (外部資料讀取器:記憶體基底位址):指定外部資料讀取器記憶體的起始位址。
- External Data Reader: Memory size (外部資料讀取器:記憶體大小):指定外部資料讀取器記憶體的大小。
- External Data Reader: Line Buffer Size (外部資料讀取器:行緩衝區大小):建立兩個緩衝區以便將圖像或文字混合到影像緩衝區當中。 預設值為:一個螢幕寬度* 4位元組,以支援ARGB8888像素格式的全尺寸圖像。
- External Data Reader: Minimum DMA transfer size (外部資料讀取器:最小DMA傳輸量):設定啟動DMA傳輸所需的最小位元組。 如果請求的傳輸量少於最小位元組便不會用到DMA。
在啟用外部資料讀取器的情況下產生程式碼之後,TouchGFX Generator會建立如下的額外檔案,以支援直接從非記憶體映射Flash中擷取資產。
TouchGFX/target/generated/TouchGFXGeneratedDataReader.cpp
TouchGFX/target/generated/TouchGFXGeneratedDataReader.hpp
TouchGFX/target/TouchGFXDataReader.cpp
TouchGFX/target/TouchGFXDataReader.hpp
像往常一樣,對TouchGFX Generator產生的AL架構而言,TouchGFXGeneratedDataReader
為唯讀,使用者應在TouchGFXDataReader
類別中進行修改。 TouchGFXGeneratedDataReader
屬於touchgfx::FlashDataReader
類別。
TouchGFX Generator會修改以下檔案以設定TouchGFX HAL,以使用DataReader
。
TouchGFX/target/generated/TouchGFXConfiguration.cpp
TouchGFX/target/generated/TouchGFXGeneratedHAL.cpp
TouchGFX/target/generated/TouchGFXGeneratedHAL.hpp
Note
向量渲染
為了能在TouchGFX Generator設定向量渲染,影像緩衝區像素格式必須為RGB565或RGB888。 就向量渲染功能而言,開發人員有以下兩種選項:
- Enabled (啟用):啟用對應用程式的向量渲染支援。 如果在TouchGFX Designer之中使用SVGImage小工具,就需要使用此選項。
- Disabled (停用):停用對應用程式的向量渲染支援。
Caution
Tip
Further reading
8位元LTDC色彩查閱資料表
若LTDC設定以L8格式讀取影像緩衝區,且TouchGFX於ABRG2222、ARGB222、BGRA2222或RGBA2222進行渲染,TouchGFX Generator將提供CLUT,並於TouchGFXHAL::initialize()
期間載入至LTDC之中。 有關LTDC和CLUT的用法,詳見STM32 MCU參考手冊。