0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

免费、炫酷的GUI:AWTK

黄工的嵌入式技术圈 来源:黄工的嵌入式技术圈 作者:黄工的嵌入式技术 2020-02-04 15:24 次阅读

来源:嵌入式大杂烩 + 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、iOSAndroid操作系统,还能支持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所示。

图3AWTK 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的小伙伴可以尝试一下。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 芯片
    +关注

    关注

    455

    文章

    50714

    浏览量

    423139
  • GUI
    GUI
    +关注

    关注

    3

    文章

    659

    浏览量

    39654
  • 快速开发框架

    关注

    0

    文章

    7

    浏览量

    1726
收藏 人收藏

    评论

    相关推荐

    AWTK使用经验】如何使用系统输入法与开启最大化窗口功能

    导读AWTK是基于C语言开发的跨平台GUI框架。AWTK使用经验系列文章将介绍开发AWTK过程中一些常见问题与解决方案。AWTK具有跨平台的
    的头像 发表于 11-14 01:05 218次阅读
    【<b class='flag-5'>AWTK</b>使用经验】如何使用系统输入法与开启最大化窗口功能

    AWTK 最新动态:支持鸿蒙系统(HarmonyOS Next)

    为ToolkitAnyWhere,是ZLG倾心打造的一套基于C语言开发的GUI框架。旨在为用户提供一个功能强大、高效可靠、简单易用、可轻松做出效果的GUI引擎,支
    的头像 发表于 11-06 08:03 219次阅读
    <b class='flag-5'>AWTK</b> 最新动态:支持鸿蒙系统(HarmonyOS Next)

    祝贺致远电子“AWTK开源GUI引擎”入选2024年关键软件产品资源池

    导读热烈祝贺致远电子AWTK开源GUI引擎入选广州市2024年关键软件产品资源池入库名单。为响应《广州市促进软件和信息技术服务业高质量发展措施》,关键软件产品自主研发创新,加快赋能制造业高质量发展
    的头像 发表于 10-25 08:07 371次阅读
    祝贺致远电子“<b class='flag-5'>AWTK</b>开源<b class='flag-5'>GUI</b>引擎”入选2024年关键软件产品资源池

    AWTK使用经验】如何在AWTK显示阿拉伯文本

    AWTK是基于C语言开发的跨平台GUI框架。AWTK使用经验系列文章将介绍开发AWTK过程中一些常见问题与解决方案,例如:如何播放视频或摄像头画面?如何播放序列帧动画?这些都会在系列文
    的头像 发表于 09-12 08:07 350次阅读
    【<b class='flag-5'>AWTK</b>使用经验】如何在<b class='flag-5'>AWTK</b>显示阿拉伯文本

    七大嵌入式GUI盘点

    GUI设计。 AWTK 全称为Toolkit AnyWhere,是周立功倾心打造的一套基于C语言开发的GUI框架。旨在为用户提供一个功能强大、高效可靠、简单易用、可轻松做出
    发表于 09-02 10:58

    AWTK最新动态】AWTK 1.8版本发布

    AWTK是一套基于C语言开发的跨平台GUI框架,目前正式推出1.8版本。本次更新不仅对许多细节进行了优化,还增添了众多重要特性和文档资料。此外,还引入了三款创新控件和两个与AWTK相关项目。A
    的头像 发表于 08-30 12:48 430次阅读
    【<b class='flag-5'>AWTK</b>最新动态】<b class='flag-5'>AWTK</b> 1.8版本发布

    AWTK使用经验】如何更换AWTK SDK与渲染模式

    AWTK是基于C语言开发的跨平台GUI框架。《AWTK使用经验》系列文章将介绍开发AWTK过程中一些常见问题与解决方案,例如:如何播放摄像头画面?如何更换
    的头像 发表于 08-01 08:25 1066次阅读
    【<b class='flag-5'>AWTK</b>使用经验】如何更换<b class='flag-5'>AWTK</b> SDK与渲染模式

    AWTK使用经验】如何实现序列帧动画

    目前想在AWTK中显示流畅的图片动画,此时可以用video_image控件来播放序列帧动画。本篇文章将介绍该控件的原理和使用方法。图1ZTP800示教器运行v
    的头像 发表于 07-18 08:25 414次阅读
    【<b class='flag-5'>AWTK</b>使用经验】如何实现序列帧动画

    AWTK使用经验】如何播放视频或摄像头画面

    AWTK是基于C语言开发的跨平台GUI框架。《AWTK使用经验》系列文章将介绍开发AWTK过程中一些常见问题与解决方案,例如:如何加载外部资源?如何设计自定义进度条?这些都会在系列文章
    的头像 发表于 07-04 08:25 609次阅读
    【<b class='flag-5'>AWTK</b>使用经验】如何播放视频或摄像头画面

    AWTK使用经验】如何添加中文输入法

    AWTK是基于C语言开发的跨平台GUI框架。《AWTK使用经验》系列文章将介绍开发AWTK过程中一些常见问题与解决方案,例如:如何加载外部资源?如何设计自定义进度条?这些都会在系列文章
    的头像 发表于 06-20 08:25 1035次阅读
    【<b class='flag-5'>AWTK</b>使用经验】如何添加中文输入法

    AWTK使用经验】如何响应物理按键

    AWTK是基于C语言开发的跨平台GUI框架。《AWTK使用经验》系列文章将介绍开发AWTK过程中一些常见问题与解决方案,例如:如何加载外部资源?如何设计自定义进度条?这些都会在系列文章
    的头像 发表于 06-06 08:25 790次阅读
    【<b class='flag-5'>AWTK</b>使用经验】如何响应物理按键

    AWTK使用经验】加载和释放外部图片

    AWTK是基于C语言开发的跨平台GUI框架。《AWTK使用经验》系列文章将介绍开发AWTK过程中一些常见问题与解决方案,例如:如何加载外部资源?如何设计自定义进度条?这些都会在系列文章
    的头像 发表于 04-26 08:25 471次阅读
    【<b class='flag-5'>AWTK</b>使用经验】加载和释放外部图片

    【插针机HMI开发】用AWTK开发人机界面

    AWTK介绍致远电子的AWTK是开源GUI引擎,提供了AWTK-C、AWTK-MVVM和AWTK
    的头像 发表于 04-19 08:23 568次阅读
    【插针机HMI开发】用<b class='flag-5'>AWTK</b>开发人机界面

    AWTK使用经验】如何设计立体电池进度条?

    AWTK是基于C语言开发的跨平台GUI框架。《AWTK使用经验》系列文章将介绍开发AWTK过程中一些常见问题与解决方案,例如:如何加载外部资源?如何设计自定义进度条?这些都会在系列文章
    的头像 发表于 04-18 08:25 450次阅读
    【<b class='flag-5'>AWTK</b>使用经验】如何设计立体电池进度条?

    【从0开始创建AWTK应用程序】编译应用到RTOS平台

    AWTK是基于C语言开发的跨平台GUI框架。本系列文章介绍如何从0开始创建AWTK应用程序,包括搭建开发调试环境、使用AWTK创建Hello工程并在模拟器上运行、将
    的头像 发表于 03-21 08:23 606次阅读
    【从0开始创建<b class='flag-5'>AWTK</b>应用程序】编译应用到RTOS平台