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

本篇文章介绍一下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可以主动获取、设置串口屏的变量值,或接收串口屏的按键事件,实现双向交互。
图 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控制串口屏。
图 2 使用awstudio开发界面应用3. 工作原理
串口屏hmi工程实际上是一个awtk+mvvm的程序(运行时),这个程序可以加载res文件夹的ui资源文件(ui-xml、字体、图片等),并显示在屏幕上。由于使用mvvm框架,界面上的可变内容可以绑定到特定的变量名。
串口屏作为通信服务端启动,而mcu端程序使用我们封装好的通信协议(mcu sdk),作为通信客户端与串口屏连接,之后就可以直接通过变量名进行交互。
图 3 工作原理后期用户如果想更新串口屏上的应用,直接用awstudio设计新界面,打包替换res文件夹的资源文件然后重启串口屏即可,无需重新编译hmi工程。 
demo演示下面使用pc上的mcu模拟器和串口屏模拟程序来对awtk-hmi的一些功能进行演示。
1. mcu获取串口屏事件用户在串口屏上改变界面数据时,会自动将事件通知mcu端,如下图所示:
图 4 串口屏界面改变自动通知mcu
2. mcu设置串口屏变量属性在mcu中输入属性名称、属性类型和值再点击“设置属性”按钮即可看到串口屏界面中对应的属性改变,如下图所示:
图 5 mcu修改数据自动更新串口屏界面
3. 串口屏实机效果下面是串口屏在实际板子上的运行效果,包括使用mcu操控串口屏界面以及手动操作串口屏界面两种方式:
图 6 串口屏实际上板演示

PCB超级实用AD常用快捷键总结
什么是土壤电阻率
高通发布最新智能手表芯片Wear3100
杂质度过滤机使用注意事项
信步科技SV1a-H8112P-B主板规格英文版
【AWTK开源智能串口屏方案】方案介绍和工作原理
2021年物联网趋势将会对全球各行业产生哪些影响?
各种电子原件在电路中的作用
利用全介质超构表面实现太赫兹高效自旋解耦多功能波前调控的设计
图文详解Linux分段机制
苏宁易购正式宣布以48亿元收购家乐福中国80%股份
干式变压器型号及参数大全_干式变压器的选用要点
DLP光学引擎在生物3D打印方面应用
五类网线和超五类网线区别大吗
lcd12864液晶显示屏的特点
华为Mate9在美发布 但集成Alexa似乎是败笔
虹科Ellab冻干验证解决方案获得美国和欧洲两项官方专利
生物质颗粒燃料热量定硫仪不准确怎么办?
北京移动利用自身数据资源和网络优势,赋能智慧教育推动教育均衡发展
所托瑞安获得“天津市科学技术进步二等奖”