周立功的python接口 周立功awtk_所见即所得



前不久,我分享过一篇关于GUI的文章《》,今天继续分享一篇周立功的的开源GUI:AWTK。

ZLG立功科技开源了一款GUI系统——AWTK(Toolkit AnyWhere),源码链接:


主源码仓库:https://github.com/zlgopen/awtk	
镜像源码仓库:https://gitee.com/zlgopen/awtk


AWTK简介


AWTK是一个伸缩性极强的嵌入式图形框架,可在Cortex-M3这样低端的单片机上运行,也可以在Cortex-A7/A8/A9等处理器,甚至DSP以及X86处理器上运行,既可支持小型RTOS系统,也能支持Linux、MacOS、iOS、Android操作系统,还能支持Windows操作系统、WEB以及各种小程序,可以说是一个全能的嵌入式GUI引擎。


AWTK是一款 跨平台 的GUI系统。目前支持的平台有 ZLG AWorks、Windows、Linux、MacOS、嵌入式 Linux,以后可能也会在浏览器 (即将公测)、各种小程序、Android 和 iOS 等平台上运行。


AWTK 提供了一套跨平台的基础工具库。其中包括链表、数组、字符串 (UTF8 和 widechar),事件发射器、值、对象、文件系统、互斥锁和线程、表达式和字符串解析等等。


AWTK主要特色

AWTK旨在为用户提供一个功能强大、简单易用,能轻松做出炫酷效果的GUI引擎,具有如下特点:


1、开源、免费,用于商业无需付费;


2、高效:小巧高效,可运行在Cortex-M3等小资源平台(参考图1) ;


3、跨平台:支持跨多种操作系统,跨多种硬件平台(参考图2) ;


4、稳定:架构优秀,全方位检查测试,多平台验证以及强大后备技术支援;


5、功能强大:


  • 支持硬件加速,支持视网膜高清分辨率技术;
  • 拥有完善的动画系统,丰富的GUI控件;
  • 支持位图字体和矢量字体;
  • 内置中英文输入法,并支持智能词组输入;
  • 支持多语言开发,支持国际化;

6、易用;


7、支持纯C语言编程;


8、支持组态方式开发界面,所见即所得;


9、提供完善的API手册、使用文档和大量示例代码:


  • 支持纯C语言编程;
  • 支持组态方式开发界面,所见即所得;
  • 提供完善的API手册、使用文档和大量示例代码;

10、扩展性好:可扩展控件、动画、引擎等。


周立功的python接口 周立功awtk_嵌入式_02


图1 广泛处理器支持

 


周立功的python接口 周立功awtk_嵌入式_03


图2 多软件平台支持

AWTK开发环境

ZLG致远电子即将推出AWTK集成开发环境AWTK Designer,简化AWTK界面设计,开发者无需手写XML,采用拖拽方式即可完成界面设计,所见即所得。AWTK Designer本身就是采用AWTK编程实现,界面如图3所示。

 


周立功的python接口 周立功awtk_所见即所得_04


图3 AWTK Designer界面

AWTK优势

AWTK平台是一套基于C语言的跨平台GUI开发框架,可用于开发物联网、消费电子、工业控制、汽车电子、智能家居等领域的应用产品,旨在为用户提供一个功能强大、高效可靠、简单易用、可轻松做出炫酷效果的GUI开发解决方案,使用户开发GUI应用就像开发串口应用一样简单。开发流程如图5所示。

 


周立功的python接口 周立功awtk_所见即所得_05


优势,让懂的人一眼就明白:

1、支持纯C语言编程;

2、支持跨多种操作系统,跨多种硬件平台,小巧高效;

3、拥有完善的动画系统,丰富的GUI控件,支持硬件加速;

4、支持位图字体和矢量字体;

5、内置中英文输入法,并支持智能词组输入;

6、支持视网膜高清分辨率技术;

7、支持组态方式开发界面,所见即所得;

8、支持界面与逻辑分离技术,用脚本直接编写逻辑;

9、支持云端模板和组件市场,构建开发生态圈。

周立功的python接口 周立功awtk_周立功的python接口_06

周立功的python接口 周立功awtk_所见即所得_07

AWTK运行效果

1、官方效果图

周立功的python接口 周立功awtk_周立功的python接口_08

周立功的python接口 周立功awtk_周立功的python接口_09

周立功的python接口 周立功awtk_周立功的python接口_10

周立功的python接口 周立功awtk_所见即所得

2、运行在Cortex-M3内核的STM32上

周立功的python接口 周立功awtk_所见即所得_12

上面是作者正念移植到STM32实现的效果,热衷于GUI的小伙伴可以尝试一下。


‧   END   ‧‧‧‧‧‧‧‧‧‧‧‧‧‧‧‧