技術文章
Technical articlesAWTK是一個伸縮性*的嵌入式圖形框架,可在Cortex-M3這樣低端的單片機上運行,也可以在Cortex-A7/A8/A9等處理器,甚至DSP以及X86處理器上運行,既可支持小型RTOS系統,也能支持Linux、MacOS、iOS、Android操作系統,還能支持Windows操作系統、WEB以及各種小程序,可以說是一個的嵌入式GUI引擎。
AWTK的跨平臺特性,使得應用程序開發也極為便利,在Windows上開發完成的程序,只需經過簡單交叉編譯即可下載至嵌入式目標板運行,且得到的效果是*一樣的,無需再進行任何修改。
AWTK的特點
AWTK旨在為用戶提供一個功能強大、簡單易用,能輕松做出炫酷效果的GUI引擎,具有如下特點:
1、開源、免費,用于商業無需付費;
2、:小巧,可運行在Cortex-M3等小資源平臺(參考圖1);
3、跨平臺:支持跨多種操作系統,跨多種硬件平臺(參考圖2);
4、穩定:架構,檢查測試,多平臺驗證以及強大后備技術支援;
5、功能強大:
支持硬件加速,支持視網膜高清分辨率技術;
擁有完善的動畫系統,豐富的GUI控件;
支持位圖字體和矢量字體;
內置中英文輸入法,并支持智能詞組輸入;
支持多語言開發,支持化;
6、易用;
7、支持純C語言編程;
8、支持組態方式開發界面,所見即所得;
9、提供完善的API手冊、使用文檔和大量示例代碼:
支持純C語言編程;
支持組態方式開發界面,所見即所得;
提供完善的API手冊、使用文檔和大量示例代碼;
10、擴展性好:可擴展控件、動畫、引擎等。
圖1 廣泛處理器支持
圖2 多軟件平臺支持
AWTK開發環境
ZLG致遠電子即將推出AWTK集成開發環境AWTK Designer,簡化AWTK界面設計,無需手寫XML,采用拖拽方式即可完成界面設計,所見即所得。AWTK Designer本身就是采用AWTK編程實現,界面如圖3所示。
圖3 AWTK Designer界面
前景展望
在AWTK誕生以前,沒有哪一款GUI能具有如此廣泛的覆蓋性以及如此良好的伸縮性和延展性。此前的GUI,往往都是聚焦于某一類處理器或者某幾個平臺,要么只支持某一些列處理器,要么只支持有限幾個軟件平臺,這個現狀如今被AWTK打破。AWTK將成為一個可用于嵌入式、手機和PC的通用GUI系統。
AWTK采用LGPL協議發布,任何人或者組織都能獲取到源碼,并可用于商業用途而無需付費。與現有商業GUI相比,既能為節省不少授權費用,而且能掌握全部源碼,也能為提供更有力量的信心保證,僅從這兩點而言,對都是吸引力的。這勢必能吸引眾多嵌入式加入AWTK生態,并為AWTK生態添磚加瓦。
AWTK的多種語言開發特性,能吸引更多掌握不同語言技能的。目前大多數GUI,都僅支持某一種單一語言,C或者C++,而AWTK目前已經支持C、Lua、Javascript on jerryscript、Javascript on nodejs等不同編程語言,將來還能支持其他開發語言。這樣既能為提供編程便利,也能進一步拓寬AWTK的應用領域和使用人群。
AWTK與Linux的結合,可謂相得益彰,為嵌入式Linux的GUI帶來了福音,Linux生態也會促進AWTK的成長和發展。