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