0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

TouchGFX 4.21可免費(fèi)用于STM32 MCU

星星科技指導(dǎo)員 ? 來(lái)源:STM ? 作者:STM ? 2023-02-02 10:36 ? 次閱讀

TouchGFX 4.21隨TouchGFX Stock一起發(fā)布,這是有史以來(lái)最大的圖形資源庫(kù),由用于微控制器的GUI設(shè)計(jì)工具提供。新版本旨在為開發(fā)人員帶來(lái)便利。在其眾多錯(cuò)誤修復(fù)和生活質(zhì)量改進(jìn)中,它確保用戶可以更輕松地創(chuàng)建 UI。有了TouchGFX Stock,不再需要尋找資產(chǎn)和支付昂貴的許可費(fèi)。想要?jiǎng)?chuàng)建更充實(shí)的原型的團(tuán)隊(duì)或那些負(fù)擔(dān)不起設(shè)計(jì)師的團(tuán)隊(duì)現(xiàn)在有一個(gè)解決方案,隨著時(shí)間的推移會(huì)不斷增長(zhǎng)。同樣,TouchGFX現(xiàn)在支持SVG文件和NeoChrom GPU加速器,以幫助可擴(kuò)展性和動(dòng)畫。

什么是TouchGFX?

A. 框架

TouchGFX是意法半導(dǎo)體的免費(fèi)使用框架,有助于在STM32微控制器上創(chuàng)建圖形用戶界面。該引擎以C++編寫,利用了意法半導(dǎo)體器件上的優(yōu)化。TouchGFX的工作原理是,界面由用戶導(dǎo)航的屏幕組成。因此,該框架是直觀的,反映了一個(gè)人的經(jīng)驗(yàn)。它也很廣泛,因?yàn)樗幚?2D 和 3D 對(duì)象、視頻、動(dòng)畫、過渡等。此外,訪問生成的代碼的能力允許專家工程師對(duì)其進(jìn)行優(yōu)化。為了幫助他們完成這個(gè)過程,TouchGFX文檔提供了有關(guān)框架API或可用開發(fā)工具的信息。

TouchGFX設(shè)計(jì)師

TouchGFX Designer通常是開發(fā)人員在啟動(dòng)UI時(shí)使用的第一個(gè)工具。這是一個(gè)具有所見即所得方法的實(shí)用程序,設(shè)計(jì)人員可以在其中創(chuàng)建用戶將看到并與之交互的內(nèi)容。開發(fā)人員可以從示例項(xiàng)目開始,例如時(shí)鐘、儀表或動(dòng)畫圖像。還有更多成熟的演示,如骰子動(dòng)畫、場(chǎng)景過渡或池監(jiān)控系統(tǒng)。啟動(dòng)屏幕有助于選擇演示應(yīng)用、意法半導(dǎo)體開發(fā)板,然后配置所有內(nèi)容。因此,運(yùn)行示例代碼和演示只需幾分鐘,這意味著可以更快地創(chuàng)建概念驗(yàn)證。TouchGFX Designer中的UI元素通常采用通過實(shí)用程序界面添加和配置的小部件的形式。

TouchGFX Designer是TouchGFX生態(tài)系統(tǒng)不可或缺的一部分。例如,只要用戶選擇3.0模板,就可以在Designer中啟動(dòng)項(xiàng)目,然后將其帶到STM32CubeMX,設(shè)置探索板或MCU,并讓TouchGFX生成器(見下文)更新。IOC 文件以立即應(yīng)用新設(shè)置。同樣,開發(fā)人員可以從TouchGFX生成器開始,轉(zhuǎn)到TouchGFX Designer,然后返回STM32CubeMX來(lái)更改顯示分辨率。系統(tǒng)將自動(dòng)更新TouchGFX Designer,而無(wú)需關(guān)閉應(yīng)用程序。

觸摸GFX模擬

TouchGFX模擬器可幫助開發(fā)人員在將圖形用戶界面運(yùn)行到MCU之前預(yù)覽其圖形用戶界面。它的部分吸引力在于它提供了鍵盤快捷鍵來(lái)簡(jiǎn)化工作流程。例如,更容易拍攝各種屏幕截圖并逐幀研究動(dòng)畫。同樣,按 F2 會(huì)突出顯示無(wú)效區(qū)域,即系統(tǒng)必須更新的幀部分。因此,開發(fā)人員可以通過不必要地使資產(chǎn)失效來(lái)檢查他們的動(dòng)畫是否浪費(fèi)了 MCU 資源。

觸摸GFX發(fā)生器

TouchGFX生成器與STM32CubeMX配合使用,生成TouchGFX抽象層的重要部分。我們支持幾乎所有帶顯示屏的STM32探索套件,新插件可與任何配備Cortex-M32+、M0或M4的STM7 MCU配合使用。開發(fā)人員仍然需要用他們的用戶代碼填充一些空白并執(zhí)行優(yōu)化,但這個(gè)新插件使啟動(dòng)項(xiàng)目變得更加簡(jiǎn)單。事實(shí)上,Generator創(chuàng)建了空函數(shù)來(lái)指導(dǎo)開發(fā)人員并促進(jìn)電路板初始化。意法半導(dǎo)體開發(fā)板也有現(xiàn)有的默認(rèn)設(shè)置,以加快開發(fā)速度并作為示例。

TouchGFX 4.21 有什么新功能?

觸摸GFX股票

TouchGFX Stock 是最大的免費(fèi)用戶界面圖形資產(chǎn)庫(kù),由面向微控制器的框架提供。它包括圖標(biāo)、GUI 元素、主題、圖像等。由于這些圖標(biāo)來(lái)自谷歌的免費(fèi)使用庫(kù),而意法半導(dǎo)體擁有所有其他資源的權(quán)利,因此TouchGFX Stock擁有慷慨的許可,允許團(tuán)隊(duì)免費(fèi)使用這些資源,即使是商業(yè)項(xiàng)目,只要它們?cè)赟TM32設(shè)備上運(yùn)行。用戶可以抓取資產(chǎn)以針對(duì)其界面調(diào)整其大小或?qū)ζ溥M(jìn)行編輯以滿足其特定需求。該許可證甚至涵蓋將這些資產(chǎn)與另一個(gè)圖形框架一起使用,只要該程序在意法半導(dǎo)體微控制器上運(yùn)行即可。

最近,許多初創(chuàng)公司一直在他們的設(shè)計(jì)中重復(fù)使用TouchGFX占位符或示例資產(chǎn)。新趨勢(shì)源于小型團(tuán)隊(duì)的崛起,這些團(tuán)隊(duì)沒有資源投資于設(shè)計(jì)師。因此,當(dāng)他們采用TouchGFX時(shí),一些開發(fā)人員發(fā)現(xiàn)占位符很優(yōu)雅,只需將它們添加到最終界面中即可。 這就是為什么我們決定投資TouchGFX股票,并成為擁有最廣泛的免費(fèi)圖形資源庫(kù)的MCU供應(yīng)商。它還解釋了我們的許可方法。多年來(lái),我們一直在努力使MCU上的GUI更易于訪問。這是這座大廈之上的另一塊石頭。意法半導(dǎo)體還致力于隨著時(shí)間的推移,通過新的主題、圖像等來(lái)發(fā)展這個(gè)庫(kù)。

與此同時(shí),TouchGFX Stock 帶有 UI 元素,如條形圖、彈出窗口、時(shí)鐘、儀表等等。我們還提供某些資產(chǎn)的淺色和深色版本。最終,TouchGFX 4.21是設(shè)計(jì)方面的一課。工程師不必?fù)?dān)心調(diào)色板不匹配或依賴過時(shí)的設(shè)計(jì)理念。我們提供的設(shè)置使 UI 保持凝聚力和現(xiàn)代性。我們還提供各種尺寸以適應(yīng)大多數(shù)顯示器,因此許多人甚至不需要自己調(diào)整大小。TouchGFX Stock在發(fā)布時(shí)有五個(gè)主題。但是,由于 MCU 上 GUI 的性質(zhì),切換主題不是自動(dòng)的。由于并非所有資產(chǎn)都存在一對(duì)一關(guān)系,因此用戶必須手動(dòng)替換它們。

支持可縮放矢量圖形 (SVG)

TouchGFX開始支持SVG。傳統(tǒng)上,框架存儲(chǔ)光柵圖像,例如 PNG 文件,因?yàn)樗鼈円子谠L問和顯示。相反,SVG 文件不包含渲染,但包含有關(guān)如何繪制它們的說(shuō)明。它使它們具有高度可擴(kuò)展性,但要求更高。雖然這在筆記本電腦或臺(tái)式機(jī)上不是問題,但在低功耗微控制器上卻是完全不同的情況。問題在于,設(shè)計(jì)人員越來(lái)越多地創(chuàng)建動(dòng)畫界面,并希望將一個(gè)UI擴(kuò)展到不同的顯示尺寸。因此,團(tuán)隊(duì)希望使用 SVG 文件來(lái)節(jié)省資源,因?yàn)橐粋€(gè)文件可以通過多種不同的方式繪制。

為了應(yīng)對(duì)這一日益嚴(yán)峻的挑戰(zhàn),意法半導(dǎo)體在某些STM2U5上采用了新的NeoChrom 32.5D加速器。硬件優(yōu)化繪圖動(dòng)畫卸載了一些與 SVG 文件相關(guān)的計(jì)算,從而解決了性能問題。該 IP 還依賴于更快的內(nèi)存接口,從而加快了獲取操作。因此,將文件存儲(chǔ)在外部存儲(chǔ)器中時(shí),損失較小。最終,該公告具有高度的象征意義,因?yàn)楫?dāng)我們?cè)?2022 年 《》 月討論 NeoChrom 時(shí),SVG 不在功能列表中。然而,今天的發(fā)布表明該IP具有很大的潛力,意法半導(dǎo)體將繼續(xù)支持其功能產(chǎn)生的新功能。

TouchGFX已經(jīng)有哪些功能?

支持 X-NUCLEO-GFX01M2 和 X-NUCLEO-GFX02Z1

當(dāng)工程師決定使用圖形用戶界面時(shí),顯示器通常會(huì)成為其物料清單中最昂貴的組件。沒有觸摸層的簡(jiǎn)單2英寸顯示屏將顯著改善用戶體驗(yàn),但它仍然比其他任何東西都貴。因此,當(dāng)目標(biāo)是五美元或更少的BoM時(shí),采購(gòu)負(fù)擔(dān)得起的顯示器是有問題的。因此,意法半導(dǎo)體正在出貨顯示器擴(kuò)展板,以幫助工程師找到具有成本效益的器件,并且我們?yōu)門ouchGFX Designer中的硬件提供支持。用戶可以選擇顯示器的配置,并可以開始在符合其規(guī)格的界面上工作。

工程師可以選擇的第一個(gè)擴(kuò)展板是X-NUCLEO-GFX01M2。它使用支持SPI閃存的SPI 2.2英寸QVGA(320 x 240)顯示器,對(duì)于帶有外部閃存和兩層PCB的典型嵌入式系統(tǒng)來(lái)說(shuō),這將適合大約五美元的BOM。X-NUCLEO-GFX01M2 與各種 64 引腳 NUCLEO 板兼容。例如,工程師可以在NUCLEO-WB55RG上使用它,以幫助使藍(lán)牙應(yīng)用更易于訪問。

同樣,X-NUCLEO-GFX02Z1是我們第一款支持并行接口、QSPI閃存和144引腳Nucleo板的顯示擴(kuò)展板。該平臺(tái)面向功率更大的微控制器,這解釋了與提供更高帶寬的接口的兼容性。開發(fā)人員可以將X-NUCLEO-GFX02Z1與第一批STM575U32一起推出的NUCLEO-U5ZI-Q一起使用。因此,它使工程師能夠利用新型MCU更好的每瓦性能比來(lái)創(chuàng)建前幾代STM32無(wú)法實(shí)現(xiàn)的用戶界面。

在 UI 中嵌入視頻

將視頻帶到更多UI的愿望是嵌入式系統(tǒng)上顯示器日益普及的自然結(jié)果。不幸的是,在帶有微控制器的嵌入式系統(tǒng)上顯示視頻具有挑戰(zhàn)性。沒有具有默認(rèn)媒體播放器和編解碼器的操作系統(tǒng)。同樣,編寫顯示YouTube視頻的網(wǎng)頁(yè)也是不可能的。開發(fā)人員必須完成所有繁重的工作,例如實(shí)現(xiàn)視頻緩沖區(qū),確定哪種格式最適合其微控制器,并確定如何利用硬件加速(如果可用)。TouchGFX Designer提供了一個(gè)視頻小部件來(lái)解決這一挑戰(zhàn)。因此,現(xiàn)在添加視頻只需要三個(gè)簡(jiǎn)單的步驟。

矢量?jī)?yōu)化

微控制器上的大多數(shù)靜態(tài)接口都使用位圖,因?yàn)樗鼈冃枰苌俚挠?jì)算吞吐量。相比之下,矢量圖像不太常見,因?yàn)樗鼈冃枰嗟挠?jì)算能力。挑戰(zhàn)在于矢量對(duì)于動(dòng)畫至關(guān)重要。因此,開發(fā)人員可能會(huì)選擇使用更多資源來(lái)獲得更高的每秒幀數(shù),或者使用更少的功率并且動(dòng)畫不太流暢。為了解決這個(gè)問題,TouchGFX在處理矢量圖形時(shí)進(jìn)行了重大優(yōu)化,在某些情況下效率提高了70%。因此,開發(fā)人員可以在較小的MCU上提供更流暢的動(dòng)畫或使用更多的矢量元素。但是,開發(fā)人員將在大型動(dòng)畫上看到最大的性能提升。

新的優(yōu)化利用Chrom-ART在某些操作(如顏色填充)期間卸載微控制器。ST還更新了框架計(jì)算形狀邊緣的方式。此外,由于更新與框架對(duì)矢量圖形的處理有關(guān),因此用戶會(huì)自動(dòng)從中受益。因此,開發(fā)人員將立即看到性能提升,并可以相應(yīng)地進(jìn)行規(guī)劃。有些人可能會(huì)選擇降低其應(yīng)用程序的內(nèi)存要求或決定向其界面添加新動(dòng)畫。團(tuán)隊(duì)可能還必須查看其 UI,因?yàn)槟承┰氐倪\(yùn)行速度可能比預(yù)期快。

導(dǎo)出自定義容器

在最簡(jiǎn)單的形式中,TouchGFX設(shè)計(jì)器依賴于小部件,即在屏幕上繪制的特征的表示形式。該軟件帶有許多預(yù)定義的小部件,例如儀表,時(shí)鐘或圖形,開發(fā)人員還可以設(shè)計(jì)自定義小部件。為了使小部件更直接,設(shè)計(jì)人員可以將它們分組到容器中。容器通常是接口的構(gòu)建塊。它們使程序員能夠在多個(gè)屏幕上重用一組小部件,而無(wú)需每次都重新配置它們。此外,修改容器會(huì)影響使用它的每個(gè)屏幕,從而大大簡(jiǎn)化開發(fā)。TouchGFX還具有預(yù)定義的容器,以加速最常見的設(shè)計(jì)操作,開發(fā)人員可以創(chuàng)建自定義容器。

自定義容器非常受歡迎,因?yàn)樗鼈兪归_發(fā)人員能夠調(diào)整其界面并充實(shí)精確的愿景。然而,任何設(shè)計(jì)工具背后的固有挑戰(zhàn)是,花在一個(gè)項(xiàng)目上的工作很少可以導(dǎo)出到另一個(gè)UI。實(shí)際上,自定義容器包括代碼、圖形資產(chǎn)、文本、依賴項(xiàng)等,將其與現(xiàn)有項(xiàng)目相關(guān)聯(lián)。從版本 4.20 開始,TouchGFX Designer 通過提供導(dǎo)出功能解決了這個(gè)問題,該功能可以創(chuàng)建一個(gè)可在其他項(xiàng)目上重用的捆綁包(.tpkg 文件)。該實(shí)用程序會(huì)將所有資產(chǎn)(包括字體)添加到捆綁包中,并且 XML 文件會(huì)列出其內(nèi)容。因此,開發(fā)人員可以檢查該文件并對(duì)其進(jìn)行修改以選擇要導(dǎo)出的內(nèi)容。

導(dǎo)入自定義容器

若要導(dǎo)入自定義容器,用戶請(qǐng)選擇“編輯”-》“導(dǎo)入”-》“自定義容器”。TouchGFX包括一個(gè)新的導(dǎo)入實(shí)用程序,可指導(dǎo)用戶完成整個(gè)過程。例如,軟件檢測(cè)自定義容器定義的語(yǔ)言,并將它們與新項(xiàng)目中可用的語(yǔ)言進(jìn)行匹配或忽略它們。如果通用名稱之間存在沖突,或者問題可能導(dǎo)致新界面內(nèi)部出現(xiàn)問題,系統(tǒng)還將停止導(dǎo)入過程。TouchGFX Designer強(qiáng)制用戶修復(fù)原始自定義容器上的問題,而不是在導(dǎo)入過程中創(chuàng)建解決方法。由于該功能的目的是保留跨產(chǎn)品界面的外觀,因此強(qiáng)制在原始項(xiàng)目中進(jìn)行更改可確???UI 的一致性。

可緩存容器

顧名思義,它使用位圖緩存來(lái)加速圖形性能并實(shí)現(xiàn)更高的幀速率以實(shí)現(xiàn)更平滑的過渡。下面的演示在STM32F429I探索套件上運(yùn)行。如果沒有 CacheableContainers,簡(jiǎn)單的全屏(240 × 320)幻燈片動(dòng)畫將以每秒 60 幀的速度運(yùn)行。借助TouchGFX技術(shù),系統(tǒng)達(dá)到每秒《》幀。一些智能手表目前使用此功能來(lái)確保無(wú)縫的用戶體驗(yàn),盡管其外形固有的重大硬件限制以及對(duì)更長(zhǎng)電池壽命的需求。除了動(dòng)畫之外,CacheableContainers 還可以優(yōu)化復(fù)雜的小部件,例如紋理映射器或顯示在靜態(tài)背景前面的小動(dòng)態(tài)元素。

如果沒有 CacheableContainers,動(dòng)畫必須重繪每一幀,這可能會(huì)產(chǎn)生計(jì)算成本。CacheableContainer 通過將第一幀和最后一幀以系統(tǒng)保存在 RAM 中的位圖的形式存儲(chǔ)在單獨(dú)的容器中來(lái)繞過此問題。系統(tǒng)不使用渲染動(dòng)畫,而是使用 DMA 從內(nèi)存中檢索兩個(gè)圖像,并通過簡(jiǎn)單的 DynamicBitmap 方法在不同位置顯示它們。MCU不再生成每一幀,從而顯著優(yōu)化了性能。開發(fā)者只需要勾選 TouchGFX Designer 中的 Cacheable 框,選擇要緩存的容器在內(nèi)存中的位置,并在需要時(shí)調(diào)用它們。使用此技術(shù),渲染時(shí)間從 100 毫秒縮短到 5 毫秒。

部分幀緩沖

幀緩沖區(qū)是一個(gè)連續(xù)的內(nèi)存空間,用于存儲(chǔ)將顯示在顯示器上的每個(gè)像素的表示形式。例如,智能手表顯示器的標(biāo)準(zhǔn) 24 位 390 x 390 圖像需要 3,650,400 位或 456.3 KB ,這是STM70L32+上SRAM的4%以上,在智能手表和可穿戴設(shè)備上表現(xiàn)出色。如果應(yīng)用程序需要多個(gè)幀緩沖區(qū),則此數(shù)字可能會(huì)爆炸。除了容量限制之外,大型幀緩沖區(qū)需要更長(zhǎng)的時(shí)間來(lái)獲取,因?yàn)楸仨殢膬?nèi)存?zhèn)鬏數(shù)斤@示器,從而降低性能。

顧名思義,部分幀緩沖僅存儲(chǔ)幀緩沖區(qū)的一部分,從而將其內(nèi)存占用量減少了 10。開發(fā)人員可以根據(jù)將要更改的屏幕部分配置其大小,然后存儲(chǔ)多個(gè)部分緩沖區(qū)。然后,框架將選擇合適的框架并將其發(fā)送到顯示器。該技術(shù)最適合短動(dòng)畫,如時(shí)鐘、加載條或隨時(shí)間推移自行構(gòu)建的圖形。它還要求屏幕使用嵌入式控制器,因?yàn)樗鼘⒅苯訌腗CU的RAM接收部分幀緩沖區(qū),從而繞過閃存以增加性能。該技術(shù)適用于并行/8080、DSI 和 SPI 顯示器。

TouchGFX還優(yōu)化了部分幀緩沖區(qū),將UI引入資源受限的微控制器。傳統(tǒng)上,最小的圖形界面需要大約 200 KB 的幀緩沖區(qū)。但是,當(dāng)像STM32G071這樣的微控制器只有36 KB的RAM時(shí),這可能是一個(gè)真正的問題。TouchGFX通過將部分幀緩沖區(qū)優(yōu)化為僅16KB來(lái)解決此問題。考慮到框架的應(yīng)用程序數(shù)據(jù),入門級(jí) UI 只需要 《》 KB 的 RAM 即可運(yùn)行。TouchGFX還使用智能部分屏幕更新。該功能補(bǔ)充了部分幀緩沖,以優(yōu)化屏幕上的更新順序。該過程可節(jié)省資源,從而允許在同一時(shí)間段內(nèi)進(jìn)行更多更新。

L8 壓縮格式

圖形資產(chǎn)會(huì)占用大量?jī)?nèi)存空間,降低其質(zhì)量意味著降級(jí)用戶界面。因此,L8是一個(gè)必不可少的功能,因?yàn)樗梢詫D像文件壓縮高達(dá)75%,而不會(huì)降級(jí),這要?dú)w功于STM32微控制器中的Chrom-ART加速器。只要資產(chǎn)最多使用256種顏色(在配備STM32 MCU的小型嵌入式系統(tǒng)上很常見),開發(fā)人員只需在TouchGFX Designer中勾選一個(gè)框,就可以選擇使用L8格式壓縮資產(chǎn)。解壓縮在計(jì)算上也很高效,因?yàn)樗褂?Chrom-ART 引擎在表格中查找顏色并在不損失質(zhì)量的情況下渲染資產(chǎn)。

文本的 XML 文件

設(shè)計(jì)團(tuán)隊(duì)經(jīng)常將文本存儲(chǔ)在 Excel 文件中,以便與世界各地的各種翻譯人員合作。但是,編輯者必須手動(dòng)處理更改,并確保沒有人無(wú)意中覆蓋其他人的工作,而不是使用版本控制系統(tǒng),例如 Git,這可能很麻煩。為了解決這個(gè)問題,TouchGFX將所有文本存儲(chǔ)在XML文件中。該格式使合并操作和沖突解決變得更加簡(jiǎn)單。TouchGFX還包括一個(gè)XML到Excel轉(zhuǎn)換器,以適應(yīng)現(xiàn)有的工作流程。開發(fā)人員可以導(dǎo)出到Excel,然后將他們的Excel文件導(dǎo)入回TouchGFX及其XML格式。

優(yōu)化的項(xiàng)目文件

TouchGFX還通過小型項(xiàng)目文件促進(jìn)了協(xié)作。它們的大小使它們更容易合并和潛在共享。以前,項(xiàng)目文件以 JSON 格式存儲(chǔ)所有參數(shù)。問題是這樣的文件可能會(huì)變得非常大。因此,意法半導(dǎo)體決定通過僅存儲(chǔ)自定義設(shè)置來(lái)優(yōu)化項(xiàng)目文件。因此,文件中不存在的任何內(nèi)容都將被視為使用默認(rèn)值。因此,該文件要小得多,使 Git 上的合并操作更加簡(jiǎn)單和快速。

一次性文本及其隨機(jī) ID

希望使用文本的開發(fā)者必須在TouchGFX設(shè)計(jì)器的文本面板中創(chuàng)建一個(gè)資源,然后在UI中使用文本的ID。但是,TouchGFX還允許“一次性文本”,它不顯示為典型的文本資源。開發(fā)人員在測(cè)試期間或文本不重要時(shí)使用它。它可以防止用不相關(guān)的文本填充數(shù)據(jù)庫(kù),并有助于更快地進(jìn)行原型設(shè)計(jì)。實(shí)際上,與常規(guī)文本資源不同,一次性文本功能會(huì)自動(dòng)生成一個(gè) ID,并在從 UI 中刪除資源時(shí)從數(shù)據(jù)庫(kù)中刪除資源。TouchGFX還使用隨機(jī)字符串生成器來(lái)創(chuàng)建ID。因此,同一項(xiàng)目中的兩個(gè)一次性文本 ID 幾乎不可能相同。

動(dòng)畫和小部件

滑入式過渡和動(dòng)態(tài)圖形

開發(fā)人員面臨的挑戰(zhàn)是利用我們不斷添加到TouchGFX的所有功能。因此,我們提供已經(jīng)使用上述功能的優(yōu)化動(dòng)畫。例如,傳統(tǒng)的滑入式過渡需要整個(gè)屏幕刷新,而TouchGFX的劃像動(dòng)畫使用的資源要少得多。同樣,動(dòng)態(tài)圖形小部件可以更好地顯示順序數(shù)據(jù),對(duì)RAM和微控制器的影響更小。

靜態(tài)圖形

隨著可穿戴設(shè)備跟蹤環(huán)境或物理數(shù)據(jù),用戶希望看到進(jìn)展。圖表可以跟蹤心率、溫度、步行步數(shù)等。TouchGFX開發(fā)人員首先要求提供動(dòng)態(tài)圖表,因?yàn)樗鼈兛赡茈y以實(shí)現(xiàn),并且該功能自TouchGFX 4.15以來(lái)一直可用?,F(xiàn)在,我們的團(tuán)隊(duì)正在發(fā)布靜態(tài)圖形以適應(yīng)新的應(yīng)用程序。事實(shí)上,不需要不斷發(fā)展或只知道隨時(shí)間略有變化的數(shù)據(jù)更適合靜態(tài)表示。新圖表的工作方式略有不同。開發(fā)人員只需要在動(dòng)態(tài)數(shù)據(jù)點(diǎn)上發(fā)送一個(gè)數(shù)據(jù)點(diǎn),因?yàn)闀r(shí)間間隔是恒定的。但是,在靜態(tài)軸上,程序員必須輸入 X 軸和 Y 軸的信息。

時(shí)鐘和紋理映射器

TouchGFX還具有模仿應(yīng)用程序的小部件,例如模擬和數(shù)字時(shí)鐘。還有一個(gè)紋理映射器,這意味著開發(fā)人員可以通過簡(jiǎn)單的拖放開始創(chuàng)建他們的映射程序。他們?nèi)匀恍枰斎胨麄兊腃++代碼,但這將使整個(gè)過程更加順暢。Texture Mapper也是TouchGFX在資源受限的MCU上進(jìn)行優(yōu)化的一個(gè)很好的例子。它可以幫助對(duì)對(duì)象進(jìn)行動(dòng)畫處理,甚至可以在STM32G0上運(yùn)行,只要圖形資源位于RAM中而不是閃存中。

軌距

儀表模板繪制針和弧線以幫助用戶監(jiān)視值。開發(fā)人員還可以更改其背景、指針的方向、值范圍等。下面的演示展示了程序員如何在IDE和TouchGFX設(shè)計(jì)器之間切換,以獲得更流暢的工作流程。團(tuán)隊(duì)可以快速檢查儀表,即時(shí)調(diào)整它,并立即測(cè)試他們的代碼。例如,視頻顯示了該功能如何控制儀表的行為。只需很少的代碼行,開發(fā)人員就可以更改值的范圍以及指標(biāo)接收更新的頻率等。這樣的優(yōu)化可以在不需要不斷更新顯示的值的應(yīng)用程序中節(jié)省大量資源。

高級(jí)文本管理

文本是大多數(shù)圖形用戶界面的重要組成部分,這解釋了為什么設(shè)計(jì)師在文本上工作如此之多。他們定制它,翻譯它,塑造它。在TouchGFX設(shè)計(jì)器上創(chuàng)建的某些應(yīng)用程序可以擁有數(shù)千個(gè)文本資源,每個(gè)資源都可以翻譯成多種語(yǔ)言。問題是處理文本可能很麻煩。因此,為了減少摩擦,TouchGFX現(xiàn)在提供了開發(fā)人員可以根據(jù)其應(yīng)用程序的部分或功能定義的組。新功能使在TouchGFX設(shè)計(jì)器中并排顯示翻譯文本變得更加簡(jiǎn)單。它還有助于捆綁相關(guān)信息以檢查一致性和準(zhǔn)確性。最后,組可以更快地搜索和查找特定資源。

TouchGFX Designer還包括一個(gè)選項(xiàng),用于在組中設(shè)置默認(rèn)參數(shù)。該部分允許用戶選擇字體規(guī)格、回退字符、通配符、對(duì)齊方式等。以前,開發(fā)人員必須覆蓋每個(gè)文本資源的參數(shù),這可能是很多工作。多虧了組,可以同時(shí)為許多資源設(shè)置參數(shù),從而大大優(yōu)化開發(fā)。具有自定義版式的現(xiàn)有項(xiàng)目將看到其設(shè)置移動(dòng)到新部分。新的文本界面還顯示一次性文本,并在必要時(shí)將其提升為資源。

審核編輯:郭婷

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 微控制器
    +關(guān)注

    關(guān)注

    48

    文章

    7350

    瀏覽量

    150239
  • mcu
    mcu
    +關(guān)注

    關(guān)注

    146

    文章

    16705

    瀏覽量

    348032
  • 意法半導(dǎo)體
    +關(guān)注

    關(guān)注

    31

    文章

    3065

    瀏覽量

    108263
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    TouchGFXMCU 負(fù)載的計(jì)算過程介紹

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

    基于TouchGFX的智能手表設(shè)計(jì) —底層驅(qū)動(dòng)與 UI 進(jìn)行關(guān)聯(lián)

    電子發(fā)燒友網(wǎng)站提供《基于TouchGFX的智能手表設(shè)計(jì) —底層驅(qū)動(dòng)與 UI 進(jìn)行關(guān)聯(lián).pdf》資料免費(fèi)下載
    發(fā)表于 01-05 11:22 ?2次下載

    基于TouchGFX的智能手表設(shè)計(jì) —硬件驅(qū)動(dòng)層程序設(shè)計(jì)

    電子發(fā)燒友網(wǎng)站提供《基于TouchGFX的智能手表設(shè)計(jì) —硬件驅(qū)動(dòng)層程序設(shè)計(jì).pdf》資料免費(fèi)下載
    發(fā)表于 01-05 11:20 ?1次下載

    基于 TouchGFX 的智能手表設(shè)計(jì)—Designer 軟件 UI 設(shè)計(jì)

    電子發(fā)燒友網(wǎng)站提供《基于 TouchGFX 的智能手表設(shè)計(jì)—Designer 軟件 UI 設(shè)計(jì).pdf》資料免費(fèi)下載
    發(fā)表于 01-05 11:06 ?0次下載

    基于TouchGFX的智能手表設(shè)計(jì)(4)

    電子發(fā)燒友網(wǎng)站提供《基于TouchGFX的智能手表設(shè)計(jì)(4).pdf》資料免費(fèi)下載
    發(fā)表于 12-29 17:31 ?4次下載

    基于TouchGFX的智能手表設(shè)計(jì)(3)

    電子發(fā)燒友網(wǎng)站提供《基于TouchGFX的智能手表設(shè)計(jì)(3).pdf》資料免費(fèi)下載
    發(fā)表于 12-29 17:30 ?7次下載

    基于TouchGFX的智能手表設(shè)計(jì)(2)

    電子發(fā)燒友網(wǎng)站提供《基于TouchGFX的智能手表設(shè)計(jì)(2).pdf》資料免費(fèi)下載
    發(fā)表于 12-29 17:29 ?5次下載

    基于TouchGFX的智能手表設(shè)計(jì)(1)

    電子發(fā)燒友網(wǎng)站提供《基于TouchGFX的智能手表設(shè)計(jì)(1).pdf》資料免費(fèi)下載
    發(fā)表于 12-29 17:28 ?6次下載

    實(shí)戰(zhàn)經(jīng)驗(yàn) | TouchGFX 控件附加 ClickListener 功能的方法介紹

    是專用于 STM32 的圖形界面設(shè)計(jì)軟件,可用來(lái)低成本開發(fā)優(yōu)秀的圖形界面,TouchGFX 現(xiàn)已變的越來(lái)越流行。為了幫助客戶更加深入地理解和使用 TouchGFX ,本文介紹了
    的頭像 發(fā)表于 11-17 17:40 ?1092次閱讀

    TouchGFX開發(fā)(3)----使用TouchGFX配置IIC接口OLED

    TouchGFX開發(fā)(3)----使用TouchGFX配置IIC接口OLED
    的頭像 發(fā)表于 11-09 15:31 ?1326次閱讀
    <b class='flag-5'>TouchGFX</b>開發(fā)(3)----使用<b class='flag-5'>TouchGFX</b>配置IIC接口OLED

    實(shí)戰(zhàn)經(jīng)驗(yàn) | STM32GUI TouchGFX 屏幕切換功能簡(jiǎn)介

    關(guān)鍵詞:GUI,TouchGFX,Transition 目錄預(yù)覽 1、引言 2、TouchGFX屏幕切換功能 3、小結(jié) 01 引言 TouchGFX 是專用于
    的頭像 發(fā)表于 11-09 10:05 ?4093次閱讀

    TouchGFX開發(fā)(1)----安裝軟件

    TouchGFX 是一個(gè)高性能的嵌入式圖形庫(kù),主要用于為微控制器(MCU)驅(qū)動(dòng)的設(shè)備創(chuàng)建現(xiàn)代用戶界面(UI)。它提供了一套豐富的圖形功能,使開發(fā)者能夠構(gòu)建出具有高度自定義和流暢的用戶體驗(yàn)的界面。
    的頭像 發(fā)表于 11-08 15:28 ?563次閱讀
    <b class='flag-5'>TouchGFX</b>開發(fā)(1)----安裝軟件

    TouchGFX從舊版本更新到新版本的方法

    X-CUBE-TOUCHGFXSTM32Cube 生態(tài)系統(tǒng)的一個(gè)軟件包,它包含以下組件:TouchGFX Designer,TouchGFX Generator 和
    的頭像 發(fā)表于 11-01 17:15 ?915次閱讀
    <b class='flag-5'>TouchGFX</b>從舊版本更新到新版本的方法

    TouchGFX用起來(lái)和emWIN或者ucGUI區(qū)別大嗎?

    TouchGFX現(xiàn)在可以免費(fèi)用了,不知道和emWIN或者ucGUI區(qū)別大嗎,難度是否更大。
    發(fā)表于 10-30 08:24

    如何添加觸摸屏驅(qū)動(dòng)到TouchGFX中?

    使用STM32CubeMX移植TouchGFX 一文中介紹了如何用TouchGFX點(diǎn)亮屏幕,但是此時(shí)屏幕還沒有觸摸的功能。下面將介紹如何添加觸摸屏驅(qū)動(dòng)到TouchGFX
    的頭像 發(fā)表于 10-09 14:41 ?1772次閱讀