查看原文
其他

一款免费、炫酷的GUI:AWTK

strongerHuang 2021-01-31

关注、星标公众,不错过精彩内容

来源:嵌入式大杂烩 + ZLG立功科技


前不久,我分享过一篇关于GUI的文章《盘点嵌入式那些常见的GUI:emWin、TouchGFX、MiniGUI、Qt等》,今天继续分享一篇周立功的的开源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、扩展性好:可扩展控件、动画、引擎等。


图1 广泛处理器支持


 

图2 多软件平台支持


AWTK开发环境

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

 

图3 AWTK Designer界面

AWTK优势

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

 


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

1、支持纯C语言编程;

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

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

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

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

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

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

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

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



AWTK运行效果

1、官方效果图


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

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


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

推荐阅读:

什么是STM32Trust?
三极管来源,及NPN与PNP区别
PID原理和参数调试
逻辑电平0和1的世界
变压器的这些冷知识,你知道吗?


关注公众号『strongerHuang』,在底部菜单,或后台回复“1024”,查看更多精彩内容。


长按识别图中二维码关注

    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存