衡阳派盒市场营销有限公司

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

TouchGFX升級至V4.12,每秒幀數從9幀升級至60幀 更新TouchGFX Suite

黃工的嵌入式技術圈 ? 來源:黃工的嵌入式技術圈 ? 作者:黃工的嵌入式技術 ? 2020-02-03 15:07 ? 次閱讀

TouchGFX屬于Draupner Graphics公司的GUI產品,在去年(2018年7月),TouchGFX被ST收購,在STM32上可以免費使用TouchGFX。

之前也寫過關于GUI的文章:盤點嵌入式那些常見的GUI:emWin、TouchGFX、MiniGUI、Qt等。

一、TouchGFXSuite(開發套件)

TouchGFX是STM32生態系統中的免費工具。它由兩部分組成:用于設計和配置豐富的用戶界面的TouchGFX Designer PC工具,以及在終端設備上運行以確保較高UI性能的TouchGFX Engine軟件。

二、TouchGFX 4.12

TouchGFX 4.12帶來了可緩存容器,部分幀緩沖區以及L8圖形壓縮格式等內容,這些都將改善更多STM32微控制器的性能。

這也是ST自2018年收購該解決方案以來的首次重大升級,并且已成為STM32生態系統不可或缺的一部分。

三、CacheableContainers緩存容器

CacheableContainer是一項技術,顧名思義,它使用位圖緩存來顯著加速圖形性能,并通過大規模優化性能來實現更高的幀速率以實現更平滑的過渡。

如果沒有CacheableContainer技術,則簡單的全屏(240×320)幻燈片動畫將以每秒9幀的速度運行。啟用了新的TouchGFX技術后,系統可以達到每秒60幀的速度。

盡管某些智能手表因其外形尺寸固有的重大硬件限制以及需要更長的電池壽命,但目前仍使用此功能來確保更無縫的用戶體驗。為復雜的小部件設置動畫時,它可以使性能最大化。

在傳統系統中,動畫要求系統重新繪制每一幀,這可能會使計算變得昂貴。在屏幕1和屏幕2之間的動畫中,大約需要20幀,重新繪制每個幀大約需要100毫秒。

原理:

CacheableContainer通過以系統保留在RAM中的位圖的形式將第一幀和最后一幀存儲在單獨的容器中來繞過此問題。該系統無需計算動畫,而是使用DMA從內存中檢索兩個圖像,并通過簡單的DynamicBitmap方法將其顯示在不同的位置。

MCU不再需要渲染每個幀,從而顯著優化了性能。開發人員只需勾選Cacheable在“ TouchGFX設計器”框中,選擇要緩存的容器在內存中的位置,并在需要時調用它們。使用此技術,渲染時間從100毫秒降至5毫秒。

四、部分幀緩沖部分幀緩沖是ST為客戶開發的另一項技術,有巨大的成果。幀緩沖區是連續的存儲空間,用于存儲將出現在顯示屏上的每個像素的表示形式。

例如,用于智能手表顯示屏的標準24位390 x 390圖像需要3,650,400位或440 KB的幀緩沖器。 公式:

原理:

顧名思義,部分幀緩沖區僅存儲一部分幀緩沖區,從而將其在內存中的大小平均減少10。開發人員可以根據實際更改的屏幕部分配置其大小,然后存儲多個部分幀緩沖區。

TouchGFX引擎將選擇合適的引擎并將其發送到顯示器。因此,系統不必獲取整個緩沖區,而是使用更小的文件,從而提高了整體性能。

該技術最適合短動畫,例如時鐘或隨時間推移而建立的圖形。它還要求屏幕使用嵌入式控制器,因為它將直接從MCU的RAM接收部分幀緩沖區,從而繞過Flash以進一步提高性能。該技術可用于Parallel / 8080,DSI和SPI顯示器。

五、L8壓縮格式和TouchGFX開發工具

圖形資源在內存中占用大量空間,直到現在開發人員唯一能做的就是減少細節以縮小文件大小。不幸的是,這也意味著要提供不太友好的圖形用戶界面。

L8的獨特之處在于,它可以利用STM32微控制器中存在的ChromART加速器來顯著壓縮圖像文件。只要圖片資源最多使用256種顏色,開發人員就可以選擇通過使用L8格式壓縮圖形資源,只需在TouchGFX開發工具中打勾即可。

該系統生成的圖像縮小了多達75%,并且解壓縮階段在計算上非常有效,因為它使用ChromART引擎查找表格中的各種顏色并對資產進行解壓縮而不會降低質量。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 主板
    +關注

    關注

    53

    文章

    1928

    瀏覽量

    71397
  • 單幀數據
    +關注

    關注

    0

    文章

    2

    瀏覽量

    6174
  • TouchGFX
    +關注

    關注

    1

    文章

    42

    瀏覽量

    13284
收藏 人收藏

    評論

    相關推薦

    EtherCAT數據結構解析

    物理層和常規的以太網卡,通過獨特的數據結構和處理機制,實現了基于EtherNet的實時控制。本文將深入探討EtherCAT的數據結構,的組成、子報文的結構、工作計數器的功能到數
    的頭像 發表于 02-02 17:42 ?184次閱讀

    TouchGFX助力STM32打造高效GUI顯示方案

    TouchGFX 是一款針對 STM32 微控制器優化的先進免費圖形軟件框架。 TouchGFX 利用 STM32 圖形功能和架構,通過創建令人驚嘆的類似智能手機的圖形用戶界面,加速了物聯網 HMI 革命。
    的頭像 發表于 01-13 15:16 ?132次閱讀
    <b class='flag-5'>TouchGFX</b>助力STM32打造高效GUI顯示方案

    tougfx如何限制刷新

    touchgfx中不是有個model類中tick一直循環被調用,怎么讓它讓他調用的速度慢一些,我感覺是通過改變刷新的頻率解決,有別的解決辦法嗎?
    發表于 12-06 22:04

    can標準和擴展能否共存

    CAN(Controller Area Network)是一種用于汽車和工業自動化領域的現場總線通信協議。CAN協議具有多種格式,包括標準和擴展。在實際應用中,標準和擴展
    的頭像 發表于 07-24 15:24 ?2089次閱讀

    can標準和擴展的區別

    CAN(Controller Area Network)是一種用于汽車和工業領域的通信協議,它允許多個設備在同一總線上進行通信。CAN協議有兩種類型:標準和擴展。這兩種類型在結
    的頭像 發表于 07-24 15:20 ?2146次閱讀

    touchGFX初始化卡住了怎么解決?

    之前TouchGFX是可以用的,但用cubeMX再生成代碼后就不能用了 檢查后發現卡在TouchGFX初始化階段,具體表現為藍色LED亮紅色LED不亮 嘗試把堆棧的空間翻倍也沒用
    發表于 07-02 07:35

    touchgfx生成代碼報錯怎么解決?

    touchgfx生成代碼報錯,怎么解
    發表于 06-03 08:51

    TouchGFX 中 MCU 負載的計算過程介紹

    TouchGFX Desinger 下載的 TBS(TouchGFX Board Setup)大都帶有 MCU 的 負載計算功能,那么如何在自己的板子上增加 MCU 負載計算功能呢?本文檔參考
    的頭像 發表于 05-24 13:24 ?542次閱讀
    <b class='flag-5'>TouchGFX</b> 中 MCU 負載的計算過程介紹

    如何判斷USART接收到一幀數據?

    如何判斷USART接收到一幀數
    發表于 05-16 07:31

    TouchGFX如何實現視頻播放?

    TouchGFX 如何實現視頻播放
    發表于 04-12 08:14

    touchgfx掉電重啟后卡死無法顯示怎么解決?

    萌新求助。。。在cubeIDE上生成的例程,debug調試時正常顯示,一旦掉電重啟就會卡死無法顯示,加載了freeRTOS,創建兩個任務,一個touchgfx,一個led燈閃爍。掉電重啟后燈也不會亮
    發表于 04-08 07:37

    STM32L4R9移植touchgfx GUI顯示控件異常花屏的原因?

    移植touchgfx工程后 (1)開啟GUI出顯示異常,問題不能確定,懷疑是dma2d送數據不正確,目前未找到touchgfx的填充界面函數在那里??? (2)關閉GUI顯示函數,直接調用底層dma2d寫的清屏函數可以顯示正常!!! 請大佬們幫幫我0.0多謝,幫忙分析一下
    發表于 04-07 08:30

    科學家研發超高幀率相機,每秒拍攝156.3萬億圖像

    通過獨特的計算成像模式,研究團隊成功地讓光線于不同時刻進入傳感器,使得相機能以驚人的每秒156.3萬億速度拍攝緩慢運動的畫面。
    的頭像 發表于 03-27 15:46 ?1092次閱讀

    touchgfx如何改變圖片顏色?

    touchgfx是否有提供函數可以直接改變image控件中圖片的顏色,類似LVGL中圖片控件的recolor函數,對圖片重新著色成某種純色圖片,如果touchgfx沒有這種函數,是否有方法可以實現這種功能?
    發表于 03-15 06:24

    MX生成文件touchGFX無法成功編譯是哪里出了問題?

    1、MX生成文件時,toolchian工具選擇keil且touchGFX選擇高版本時,生成文件可以成功在touchGFX不可以成功編譯。 2、toolchian工具選擇IDE且touchGFX選擇
    發表于 03-13 07:40
    百家乐科学打| 百家乐软件辅助器| 信博娱乐| 银泰百家乐龙虎斗| 百家乐官网赌博合作| 和记国际娱乐| 百家乐全讯网2| 百家乐官网投注五揽式| 淘金盈娱乐城| 水果机游戏机| 大连百家乐官网商场| 百家乐转盘| 欧洲百家乐的玩法技巧和规则| 八运24山下卦局| 百家乐官网网站程序| 516棋牌游戏中心 官方版| 百家乐连锁| 博天堂百家乐官网的玩法技巧和规则| 长宁区| 永利高a2| 百家乐打立了| 尊龙百家乐官网娱乐场| 百家乐官网赢钱秘密| 属蛇和属马合作做生意谁吃亏 | 大发888娱乐城大发888大发网| 百家乐赌场论坛| 十六浦百家乐官网的玩法技巧和规则| 百家乐官网国际娱乐| 大发888娱乐城游戏lm0| 百家乐怎么才能包赢| 百家乐前四手下注之观点| 百家乐官网如何骗人| 游戏房百家乐官网赌博图片| 真人百家乐| 一路发娱乐| 大发888娱乐登录| 百家乐好津乐汇| 百家乐庄闲局部失| 百家乐制胜法宝| 百家乐官网游戏必赢法| 吐鲁番市|