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

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

3天内不再提示

​【AWTK开源智能串口屏方案】方案介绍和工作原理

ZLG致远电子 2023-12-21 08:24 次阅读

本篇文章介绍一下AWTK 开源智能串口屏方案的基本原理和实际使用效果,包括主要特点、应用场景、工作原理以及简单的Demo演示。

引言:AWTK-HMI是基于AWTK与AWTK-MVVM开发的低代码智能串口屏方案,本系列文章介绍如何从零开发HMI程序,包括搭建开发环境、创建HMI运行时工程、修改应用界面以及开发MCU程序。

AWTK开源智能串口屏方案简介

AWTK 开源智能串口屏方案(Gitee仓库地址:gitee.com/zlgopen/awtk-hmi),仓库包含了MCU端工程(含PC模拟器)、MCU SDK、HMI端工程(含PC模拟器)以及多个串口屏应用示例,并配有说明文档。

其中HMI端工程(又称为运行时)运行在串口屏硬件上,负责界面显示和人机交互,用户可替换里面的资源文件切换为不同的应用。MCU端工程则是用户自己的主控程序,通过调用MCU SDK的API,可以与HMI端通过串口或网口通信。MCU可以主动获取、设置串口屏的变量值,或接收串口屏的按键事件,实现双向交互。

5d7cc85e-9f97-11ee-9788-92fbcf53809c.png

图1 MCU端与串口屏端连接方式

1. 主要特点

1.1 HMI端

  • 开放源码,免费商用,从底层到应用程序全程可控;
  • 基于AWTK和AWTK-MVVM实现强大的 GUI 功能;
  • 强大的界面设计器 AWStudio,拖拽式开发所见即所得;
  • 界面设计与绑定数据(变量)简单,无需编写任何代码;
  • 支持通过串口更新UI资源,无需重新编译工程;
  • 支持在PC上模拟运行。

1.2 MCU端

  • 提供MCU SDK与HMI端通信,使用简单无需了解通信协议;
  • 只需使用三组函数:获取变量、设置变量、监视事件;
  • 无需指定物理地址,变量可用中文名;
  • 支持串口和TCP通信;
  • 提供MCU模拟器模拟与串口屏的交互。

2. 应用场景

本方案假设有两类用户:串口屏厂商与普通用户。厂商把HMI端工程(运行时)烧写固化到串口屏硬件上;用户买到串口屏后,通过AWStudio开发自己的界面应用并把生成的资源文件替换到串口屏上,再开发自己的主控MCU程序,最后通过MCU SDK控制串口屏。

5d8083fe-9f97-11ee-9788-92fbcf53809c.png

图2使用AWStudio开发界面应用3. 工作原理

串口屏HMI工程实际上是一个AWTK+MVVM的程序(运行时),这个程序可以加载res文件夹的UI资源文件(UI-XML、字体、图片等),并显示在屏幕上。由于使用MVVM框架,界面上的可变内容可以绑定到特定的变量名。

串口屏作为通信服务端启动,而MCU端程序使用我们封装好的通信协议(MCU SDK),作为通信客户端与串口屏连接,之后就可以直接通过变量名进行交互。

5d8e345e-9f97-11ee-9788-92fbcf53809c.png图3工作原理后期用户如果想更新串口屏上的应用,直接用AWStudio设计新界面,打包替换res文件夹的资源文件然后重启串口屏即可,无需重新编译HMI工程。

Demo演示

下面使用PC上的MCU模拟器和串口屏模拟程序来对AWTK-HMI的一些功能进行演示。

1. MCU获取串口屏事件

用户在串口屏上改变界面数据时,会自动将事件通知MCU端,如下图所示:

5d953614-9f97-11ee-9788-92fbcf53809c.gif

图 4 串口屏界面改变自动通知MCU

2. MCU设置串口屏变量属性

在MCU中输入属性名称、属性类型和值再点击“设置属性”按钮即可看到串口屏界面中对应的属性改变,如下图所示:

5d993f2a-9f97-11ee-9788-92fbcf53809c.gif图5 MCU修改数据自动更新串口屏界面

3. 串口屏实机效果

下面是串口屏在实际板子上的运行效果,包括使用MCU操控串口屏界面以及手动操作串口屏界面两种方式:

5d9d646a-9f97-11ee-9788-92fbcf53809c.gif图 6 串口屏实际上板演示

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

    关注

    146

    文章

    17123

    浏览量

    350979
  • 开源
    +关注

    关注

    3

    文章

    3309

    浏览量

    42471
  • 串口屏
    +关注

    关注

    8

    文章

    532

    浏览量

    37421
  • awtk
    +关注

    关注

    0

    文章

    44

    浏览量

    226
收藏 人收藏

    评论

    相关推荐

    介绍AWTK

    ZLG 开源 GUI 引擎 AWTK 1.6 发布一、介绍AWTK全称 Toolkit AnyWhere,是ZLG开发的开源 GUI 引擎,
    发表于 08-20 08:09

    介绍AWTK

    ZLG开源GUI引擎AWTK发布1.1版本一、介绍AWTK全称Toolkit AnyWhere,是ZLG开发的开源GUI引擎,旨在为嵌入式系
    发表于 08-20 08:18

    串口通讯的工作原理是怎样的

    串口通讯工作原理
    发表于 01-14 11:11 4321次阅读

    基于AWTK推出的ZMP110x串口应用方案

    串口广泛应用于工业自动化、智能家电、医疗设备、共享设备等各个显示领域。立功科技基于AWTK推出的ZMP110x串口
    发表于 07-25 17:16 1226次阅读

    AWTK 开源智能串口方案

    AWTK开源智能串口方案发布,旨在解决传统串口
    的头像 发表于 12-02 08:24 944次阅读
    <b class='flag-5'>AWTK</b> <b class='flag-5'>开源</b><b class='flag-5'>智能</b><b class='flag-5'>串口</b><b class='flag-5'>屏</b><b class='flag-5'>方案</b>

    AWTK 串口开发(3) - 告警信息

    告警信息是一个常用的功能。在AWTK开源串口中,内置告警信息模型,只需设计用户界面即可实现告警信息的显示和管理。1.功能告警信息是一个常用的功能,MCU在设备异常时,会发送告警信息到
    的头像 发表于 12-23 08:24 446次阅读
    <b class='flag-5'>AWTK</b> <b class='flag-5'>串口</b><b class='flag-5'>屏</b>开发(3) - 告警信息

    AWTK 串口开发(4) - 数据采集

    数据采用是一个常用的功能。在AWTK开源串口中,内置数据采样模型,只需设计用户界面即可实现采样数据的显示和管理。1.功能数据采集是一个常用的功能,MCU定时采集数据(如环保设备定时采
    的头像 发表于 12-30 08:24 398次阅读
    <b class='flag-5'>AWTK</b> <b class='flag-5'>串口</b><b class='flag-5'>屏</b>开发(4) - 数据采集

    AWTK 串口开发(5) - MCU端 SDK 用法

    AWTK开源智能串口,不但开放了串口端全部源码,
    的头像 发表于 01-06 08:24 423次阅读
    <b class='flag-5'>AWTK</b> <b class='flag-5'>串口</b><b class='flag-5'>屏</b>开发(5) - MCU端 SDK 用法

    AWTK 开源串口开发(6) - 定时器的用法

    定时器是个常用的功能,AWTK串口提供了丰富的定时器函数,用于定时器的启动、停止、暂停、恢复、修改和重置等功能,本文以计时器的例子来介绍定时器的基本用法。定时器也是一个常用的功能,在
    的头像 发表于 01-13 08:24 568次阅读
    <b class='flag-5'>AWTK</b> <b class='flag-5'>开源</b><b class='flag-5'>串口</b><b class='flag-5'>屏</b>开发(6) - 定时器的用法

    AWTK开源智能串口方案】HMI端程序移植编译及运行

    本篇文章介绍一下AWTK开源智能串口方案
    的头像 发表于 01-18 08:24 912次阅读
    【<b class='flag-5'>AWTK</b><b class='flag-5'>开源</b><b class='flag-5'>智能</b><b class='flag-5'>串口</b><b class='flag-5'>屏</b><b class='flag-5'>方案</b>】HMI端程序移植编译及运行

    AWTK 开源串口开发(9) - 用户和权限管理

    AWTK串口中,内置用户管理和权限控制的模型,无需编码即可实现登录、登出、修改密码、权限控制、创建用户、删除用户等功能,本文介绍一下用户管理和权限控制的基本用法。用户管理和权限控制
    的头像 发表于 02-19 12:10 503次阅读
    <b class='flag-5'>AWTK</b> <b class='flag-5'>开源</b><b class='flag-5'>串口</b><b class='flag-5'>屏</b>开发(9) - 用户和权限管理

    AWTK开源智能串口方案】MCU SDK使用与编译运行

    代码智能串口方案,本系列文章介绍如何从零开发HMI程序,包括搭建开发环境、创建HMI运行时工程、修改应用界面以及开发MCU程序。MCU端简
    的头像 发表于 02-19 12:11 1195次阅读
    【<b class='flag-5'>AWTK</b><b class='flag-5'>开源</b><b class='flag-5'>智能</b><b class='flag-5'>串口</b><b class='flag-5'>屏</b><b class='flag-5'>方案</b>】MCU SDK使用与编译运行

    AWTK开源智能串口方案】设计UI界面并上传到串口

    本篇文章将介绍如何使用AWStudio设计串口端的UI界面和添加绑定规则,以及怎么将资源文件上传到串口端。引言:
    的头像 发表于 02-22 08:24 714次阅读
    【<b class='flag-5'>AWTK</b><b class='flag-5'>开源</b><b class='flag-5'>智能</b><b class='flag-5'>串口</b><b class='flag-5'>屏</b><b class='flag-5'>方案</b>】设计UI界面并上传到<b class='flag-5'>串口</b><b class='flag-5'>屏</b>

    AWTK 开源串口开发(12) - 记事本应用

    记事本是一个常用的应用程序,在AWTK串口中,内置文件模型和文件选择对话框,无需编写一行传统的代码,即可实现一个简单的记事本应用程序。记事本是一个很常用的应用,用来编辑和查看文本文件非常方便。在
    的头像 发表于 03-09 08:23 345次阅读
    <b class='flag-5'>AWTK</b> <b class='flag-5'>开源</b><b class='flag-5'>串口</b><b class='flag-5'>屏</b>开发(12) - 记事本应用

    AWTK 开源串口开发(16) - 提供 MODBUS 服务

    AWTK串口内置MODBUS从站模型,不用编写一行代码即可让串口提供MODBUS服务,让远程设备通过MODBUS协议访问
    的头像 发表于 04-13 08:24 449次阅读
    <b class='flag-5'>AWTK</b> <b class='flag-5'>开源</b><b class='flag-5'>串口</b><b class='flag-5'>屏</b>开发(16) - 提供 MODBUS 服务