?TouchGFX是什么??TouchGFX有哪些優(yōu)異功能?
?TouchGFX本質(zhì)上就是一個圖形框架,大家可以通過?TouchGFX實(shí)現(xiàn)圖形化的操作,在諸如嵌入式系統(tǒng)等場景下都有非常廣泛的應(yīng)用。為增進(jìn)大家對?TouchGFX的認(rèn)識,本文將對?TouchGFX以及?TouchGFX的功能予以詳細(xì)介紹。如果你對?TouchGFX具有興趣,不妨和小編一起來繼續(xù)往下閱讀哦。
一、?TouchGFX是什么
?TouchGFX?是一款專為?STM32微控制器設(shè)計(jì)的圖形界面開發(fā)工具?,由ST公司推出。它通過圖形化的方式設(shè)計(jì)用戶界面(UI),并與STM32底層硬件緊密集成,高效利用MCU資源。TouchGFX旨在簡化GUI開發(fā),支持低資源消耗的高性能用戶界面,特別適合嵌入式系統(tǒng)的應(yīng)用。
1、功能和特性
TouchGFX具有以下主要功能和特性:
·?圖形設(shè)計(jì)工具?:TouchGFX Designer是一個易于使用的圖形構(gòu)建工具,支持拖放操作,便于快速設(shè)計(jì)和評估圖形界面。
·?高性能引擎?:TouchGFX引擎優(yōu)化了圖形處理,能夠在最低的CPU負(fù)荷和內(nèi)存消耗下提供最佳性能。
·?仿真和代碼生成?:結(jié)合WYSIWYG仿真器和自動代碼生成功能,簡化了從設(shè)計(jì)到實(shí)現(xiàn)的整個開發(fā)流程。
·?跨平臺兼容性?:完全兼容STM32CubeMX初始化和代碼生成工具,便于在統(tǒng)一項(xiàng)目環(huán)境中開發(fā)圖形和主應(yīng)用程序。
2、應(yīng)用場景
TouchGFX廣泛應(yīng)用于需要高性能圖形界面的嵌入式系統(tǒng)中,特別適合以下場景:
?HMI-of-things技術(shù)革新?:通過創(chuàng)建類似于智能手機(jī)的圖形用戶界面,加速HMI技術(shù)的發(fā)展?。
?低資源消耗設(shè)備?:在資源有限的嵌入式設(shè)備中提供高效的用戶界面解決方案。
二、TouchGFX功能介紹
1、L8圖像壓縮
圖形資源占用大量內(nèi)存空間,但降低圖形質(zhì)量也就意味著UI的降級。因此L8 是一項(xiàng)必不可少的功能,它可以將圖像文件壓縮 75% 而無需降級,這要?dú)w功于 STM32 微控制器中的 ChromART 加速器。圖形資源最多使用 256 種顏色,這在 STM32 微控制器的小型嵌入式系統(tǒng)上很常見,開發(fā)人員只需在 TouchGFX Designer 中勾選一個框,就可以選擇使用 L8 格式壓縮圖形。解壓縮的算法也很高效,因?yàn)樗褂?ChromART 引擎在表中查找顏色,并在不損失質(zhì)量的情況下對圖形進(jìn)行渲染。
TouchGFX Designer的新版本引入了一個關(guān)鍵功能:L8圖像的壓縮。單擊左側(cè)欄的“圖像”可列出當(dāng)前加載的圖形資源。對于所有L8圖像,軟件都提供一個新的“壓縮”下拉菜單,用戶可以在三種方法之間進(jìn)行選擇:L4、LZW9(Lempel-Ziv-Welch)和游程編碼(RLE)。這三個都是無損的,L4和LZW9創(chuàng)建壓縮表,為條目分配顏色,而RLE只是對重復(fù)序列進(jìn)行因子計(jì)算。這些方法都有優(yōu)缺點(diǎn),因此我們還提供了一個“自動”選項(xiàng),讓編譯器根據(jù)新文件大小及其渲染時間選擇最優(yōu)化的壓縮方法。
用戶平均可將圖像文件大小減少20%到80%。多數(shù)情況下,圖像所需的時間是渲染的兩倍。然而,由于開發(fā)人員會將此功能用于靜態(tài)界面、圖標(biāo)或較小的資產(chǎn),因此影響并不明顯,渲染只需幾毫秒。此外,文件更小意味著從內(nèi)存中讀取時間更短,這就抵消了較長的渲染時間。因此,對存儲的優(yōu)化平衡了解壓縮的代價,在使用更少內(nèi)存的同時,能提供與未壓縮L8資產(chǎn)相同或幾乎相同的性能。
升級到TouchGFX Designer 4.22 的用戶必須手動選擇他們的壓縮方法。ST仍將未壓縮格式設(shè)置為默認(rèn)格式,因?yàn)槲覀儾幌M_發(fā)人員在還不了解的情況下看到平臺處理L8圖像的方式發(fā)生了這么大的變化。該功能充分體現(xiàn)了我們在優(yōu)化內(nèi)存占用(尤其是在閃存中)的同時還要考慮到性能所做出的努力。
2、支持可縮放矢量圖形圖像(SVG)
TouchGFX 推出了對SVG的支持。以往,TouchGFX 架構(gòu)存儲的是光柵圖像,如PNG文件,因?yàn)樗鼈円子谠L問和顯示。而SVG文件不包含渲染,但包含繪制說明。它們的可擴(kuò)展性更好,但要求更高。這對于筆記本電腦或臺式機(jī)不是問題,但對于低功耗微控制器就不同了。其難點(diǎn)在于,設(shè)計(jì)師正在創(chuàng)建越來越多的動畫界面,他們希望一個UI可以通過縮放適應(yīng)不同尺寸的顯示器。因此,設(shè)計(jì)團(tuán)隊(duì)希望使用SVG文件節(jié)省資源,因?yàn)橐粋€文件可以用多種不同的方式繪制。
為了應(yīng)對這一日益增長的挑戰(zhàn),ST在某些STM32U5產(chǎn)品上集成了新的NeoChrom 2.5D加速器。該硬件對繪圖動畫進(jìn)行了優(yōu)化,減輕了與SVG文件相關(guān)的一些計(jì)算負(fù)擔(dān),從而解決了性能問題。該IP還具有更快的內(nèi)存接口,加快了提取操作。因此,將文件存儲在外部存儲器中時,損失更小。SVG IP具有很大應(yīng)用潛力,ST將繼續(xù)基于其特性為用戶帶來更多新功能。
以上便是此次帶來的?TouchGFX相關(guān)內(nèi)容,通過本文,希望大家對?TouchGFX已經(jīng)具備一定的了解。如果你喜歡本文,不妨持續(xù)關(guān)注我們網(wǎng)站哦,將于后期帶來更多精彩內(nèi)容。最后,十分感謝大家的閱讀,have a nice day!