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

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

3天内不再提示

【产品应用】用 AWTK 和 AWPLC 快速开发嵌入式应用程序 (6)-在线调试

ZLG致远电子 2022-11-22 10:05 次阅读

AWPLC 除了提供打印日志的调试方式外,还提供了在线调试的功能。本文用我们之前讲过的定时器例子,来演示如何使用在线调试功能。

383d8680-6854-11ed-b116-dac502259ad0.jpg  背景

AWTK全称 Toolkit AnyWhere,是 ZLG 开发的开源 GUI 引擎,旨在为嵌入式系统、WEB、各种小程序、手机和 PC 打造的通用 GUI 引擎,为用户提供一个功能强大、高效可靠、简单易用、可轻松做出炫酷效果的 GUI 引擎。

AWPLC是 ZLG 自主研发的 PLC 系统(兼容 IEC61131-3),其中 AWPLC 的运行时库(Runtime)基于 ZLG TKC 开发,可以移植到到任何主流 RTOS嵌入式系统。AWPLC 的集成开发环境(IDE)基于 AWTK 开发,可以运行在 Windows、MacOS 和 Linux 系统之上。AWPLC 的主要目标之一是把 PLC 中低代码开发方法引入到嵌入式软件,从而提高嵌入式软件的开发效率和可靠性。

383d8680-6854-11ed-b116-dac502259ad0.jpg  简介

在线调试功能对程序员来说非常重要的,没有调试功能就像被人蒙上了眼睛。AWPLC 除了提供打印日志的调试方式外,还提供了在线调试的功能,在线调试不仅支持源码级的断点,还支持功能块级的断点。本文用我们之前讲过的定时器例子,来演示如何使用在线调试功能。


383d8680-6854-11ed-b116-dac502259ad0.jpg  在线调试

1. 运行被调试的程序

到目前为止,我们都是在 PC 上模拟运行的,runPLC 是 AWPLC 的模拟程序。按下面的方式,可以运行 ztimer 例子。

./bin/runPLCztimer

2. 准备调试

在 designer 中打开 ztimer 项目,点击"调试"按钮,可以打开调试界面。

38667ca2-6854-11ed-b116-dac502259ad0.png

3. 设置断点

双击功能块可以在对应的功能块上设置断点,设置断点后,功能块上会显示一个小红点表示已经设置了断点。再次双击可以取消该断点。

387a19f6-6854-11ed-b116-dac502259ad0.png

4. 开始调试

点击调试界面上的“开始“按钮,开始调试:

388ad476-6854-11ed-b116-dac502259ad0.png

当程序运行到指定断点时,对应的代码会高亮,对应的功能块也会有箭头指示。

38bbd1ca-6854-11ed-b116-dac502259ad0.png

5. 查看变量

在线调试最方便的的地方,就是可以查看系统实时的状态,在 AWPLC 中可查看局部变量(temp 变量),成员变量(local)和全局变量(global)。38d044d4-6854-11ed-b116-dac502259ad0.png* 这里还需完善,以后将功能块的输入/输出变量直接显示到图上。

383d8680-6854-11ed-b116-dac502259ad0.jpg  总结

AWPLC 调试功能和界面还需要完善,不过总的来说,还是挺方便的。目前 AWPLC 还是一个独立 AWTK 的控件,上面是该控件的演示程序,等成熟后会集成到 AWStudio 里去。

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

    关注

    5068

    文章

    19008

    浏览量

    302994
收藏 人收藏

    评论

    相关推荐

    AWTK 最新动态:支持浏览器控件

    导读AWTK浏览器控件,基于webview项目实现,将浏览器嵌入AWTK应用程序中,让开发者可以方便的集成
    的头像 发表于 11-20 01:05 68次阅读
    <b class='flag-5'>AWTK</b> 最新动态:支持浏览器控件

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

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

    EsDA,一站嵌入式软件

    EsDA是一套面向工业智能物联领域的嵌入式系统设计自动化工具集,包含实时操作系统AWorksLP、低代码开发平台AWStudio、资源管理平台AXPI、跨平台GUI引擎AWTK和云服务平台ZWS
    的头像 发表于 09-15 08:10 223次阅读
    EsDA,一站<b class='flag-5'>式</b><b class='flag-5'>嵌入式</b>软件

    嵌入式开发常用软件有哪些?

    嵌入式开发常用软件有哪些? 对于初学嵌入式的朋友们,会想要了解嵌入式软件开发常用的软件有些,有什么。那么看以下常用的软件介绍。 1.Vis
    发表于 09-09 15:22

    七大嵌入式GUI盘点

    特点是支持跨平台同步开发,一次编程,到处编译,跨平台使用。 GUIX 是微软的高级工业级GUI解决方案,专门针对深度嵌入式,实时和IoT应用程序而设计。微软还提供了名为GUIX Studio
    发表于 09-02 10:58

    嵌入式linux开发的基本步骤有哪些?

    嵌入式Linux开发是一个复杂的过程,涉及到硬件选择、操作系统移植、驱动开发应用程序开发等多个方面。以下是
    的头像 发表于 09-02 09:11 381次阅读

    C28x嵌入式应用程序二进制接口

    电子发烧友网站提供《C28x嵌入式应用程序二进制接口.pdf》资料免费下载
    发表于 08-31 09:39 0次下载
    C28x<b class='flag-5'>嵌入式</b><b class='flag-5'>应用程序</b>二进制接口

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

    是什么AWTK全称ToolkitAnyWhere,是ZLG开发的开源GUI引擎,旨在为嵌入式系统、WEB、各种小程序、手机和PC打造的通用GUI引擎,为用户提供一
    的头像 发表于 08-30 12:48 375次阅读
    【<b class='flag-5'>AWTK</b>最新动态】<b class='flag-5'>AWTK</b> 1.8版本发布

    MSP430嵌入式应用程序二进制接口

    电子发烧友网站提供《MSP430嵌入式应用程序二进制接口.pdf》资料免费下载
    发表于 08-30 11:43 0次下载
    MSP430<b class='flag-5'>嵌入式</b><b class='flag-5'>应用程序</b>二进制接口

    嵌入式QT常见开发方式有哪些?

    嵌入式工程师可以使用同一套代码库开发适用于不同嵌入式操作系统(如Linux、RTOS)的应用程序,只需针对目标平台调整编译选项和配置即可。 6
    发表于 08-12 10:05

    深度详解嵌入式系统专用轻量级框架设计

    MR 框架是专为嵌入式系统设计的轻量级框架。充分考虑了嵌入式系统在资源和性能方面的需求。通过提供标准化的设备管理接口,极大简化了嵌入式应用开发的难度,帮助
    发表于 04-27 02:32 937次阅读
    深度详解<b class='flag-5'>嵌入式</b>系统专用轻量级框架设计

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

    AWTK是基于C语言开发的跨平台GUI框架。本系列文章介绍如何从0开始创建AWTK应用程序,包括搭建开发
    的头像 发表于 03-21 08:23 565次阅读
    【从0开始创建<b class='flag-5'>AWTK</b><b class='flag-5'>应用程序</b>】编译应用到RTOS平台

    【从0开始创建AWTK应用程序】编译应用到嵌入式Linux平台运行

    。搭建Linux平台交叉编译环境在上一篇文章我们介绍了使用AWTK开发简单的应用并在PC上模拟运行,本篇文章就来介绍一下怎么让应用程序运行在嵌入式Linux平台上。1
    的头像 发表于 12-07 12:08 668次阅读
    【从0开始创建<b class='flag-5'>AWTK</b><b class='flag-5'>应用程序</b>】编译应用到<b class='flag-5'>嵌入式</b>Linux平台运行

    【从0开始创建AWTK应用程序】创建应用程序并在模拟器运行

    AWTK是基于C语言开发的跨平台GUI框架。本系列文章介绍如何从0开始创建AWTK应用程序,包括搭建开发
    的头像 发表于 12-01 08:24 462次阅读
    【从0开始创建<b class='flag-5'>AWTK</b><b class='flag-5'>应用程序</b>】创建<b class='flag-5'>应用程序</b>并在模拟器运行

    嵌入式开发为什么需要输出调试信息?

    嵌入式开发为什么需要输出调试信息? 因为输出调试信息是嵌入式开发中一项非常重要的实践,它有助于保证软件的可靠性、稳定性和性能,也是故障排查的关键工具之一。
    发表于 11-28 16:46