當(dāng)前位置:首頁 > 學(xué)習(xí)資源 > 講師博文 > 七大嵌入式GUI盤點(diǎn),有你不知道的么?
嵌入式圖形用戶界面(GUI)是一種為嵌入式系統(tǒng)設(shè)計(jì)的用戶界面,它可以讓用戶通過圖形化的方式與設(shè)備進(jìn)行交互。以下是對七種嵌入式 GUI 的盤點(diǎn)。
emWin
由德國SEGGER公司開發(fā),可為圖形LCD設(shè)計(jì)提供高級(jí)支持,極大簡化了LCD設(shè)計(jì)。它是使用比較廣泛的一款GUI,配合GUI Builder或App Wizard上位機(jī)軟件,用起來也比較方便。emWin以C語言源代碼提供,使其成為嵌入式市場的專業(yè)、通用GUI,可用于多種不同的場景。
TouchGFX
屬于Draupner Graphics公司的GUI產(chǎn)品,以炫酷的界面著稱,在2018年7月,TouchGFX被ST收購,在STM32上可以免費(fèi)使用TouchGFX。目前已經(jīng)集成在STM32CubeMX中。它可以減輕CPU負(fù)載、充分利用STM32的硬件圖形外設(shè)并創(chuàng)建最佳性能的用戶界面,自帶豐富的控件,也支持自定義控件。
MiniGUI
一款國產(chǎn)GUI,一款面向嵌入式系統(tǒng)的高級(jí)窗口系統(tǒng)和圖形用戶界面(GUI)支持系統(tǒng),由魏永明先生于1998年底開始開發(fā)。2002年,魏永明先生創(chuàng)建北京飛漫軟件技術(shù)有限公司,為MiniGUI提供商業(yè)技術(shù)支持,同時(shí)也繼續(xù)提供開源版本。MiniGUI為嵌入式Linux系統(tǒng)提供了完整的多進(jìn)程支持;可以MiniGUI-Processes、MiniGUI-Threads或者M(jìn)iniGUI-Standalone三種運(yùn)行模式運(yùn)行。它對中文的支持很友好,支持GB2312與BIG5字符集,其他字符集也可以輕松加入。
Qt for MCU
是一個(gè)專為嵌入式微控制器(MCU)設(shè)計(jì)的圖形框架和工具包,它允許開發(fā)者在資源受限的設(shè)備上創(chuàng)建和提供類似智能手機(jī)的用戶體驗(yàn)。這個(gè)框架是Qt生態(tài)系統(tǒng)的一部分,旨在將Qt的創(chuàng)造力帶入嵌入式微控制器領(lǐng)域,支持跨微處理器(MPU)和微控制器(MCU)重用UI,并使用現(xiàn)成組件實(shí)現(xiàn)快速開發(fā)。
LVGL
全稱Light and Versatile Graphics Library,是一個(gè)自由的,開源的GUI庫,界面精美,資源消耗小,可移植度高,響應(yīng)式布局等特點(diǎn),全庫采用純C語言開發(fā)。它的作者是來自匈牙利的Gabor Kiss-Vamosikisvegabor,LVGL用C語言編寫,以實(shí)現(xiàn)最大的兼容性(與C++兼容),模擬器可在沒有嵌入式硬件的PC上啟動(dòng)嵌入式GUI設(shè)計(jì)。
AWTK
全稱為Toolkit AnyWhere,是周立功傾心打造的一套基于C語言開發(fā)的GUI框架。旨在為用戶提供一個(gè)功能強(qiáng)大、高效可靠、簡單易用、可輕松做出炫酷效果的GUI引擎。其特點(diǎn)是支持跨平臺(tái)同步開發(fā),一次編程,到處編譯,跨平臺(tái)使用。
GUIX
是微軟的高級(jí)工業(yè)級(jí)GUI解決方案,專門針對深度嵌入式,實(shí)時(shí)和IoT應(yīng)用程序而設(shè)計(jì)。微軟還提供了名為GUIX Studio的桌面開發(fā)工具,該工具允許開發(fā)人員在桌面上設(shè)計(jì)其GUI并生成GUIX代碼,然后可以將其導(dǎo)出到目標(biāo)。
嵌入式系統(tǒng)通常資源有限,包括內(nèi)存、處理能力和存儲(chǔ)空間。因此,要仔細(xì)評(píng)估 GUI 庫的資源需求,并進(jìn)行必要的優(yōu)化,如減少圖形元素的復(fù)雜度、合理使用緩存等。注意圖形渲染的效率,避免不必要的重繪操作,以降低 CPU 負(fù)載。