广州大彩串口屏论坛_大彩开发者交流论坛

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 327|回复: 0

大彩讲堂:VisualHMI-LUA教程-on_update回调函数使用指南

[复制链接]

136

主题

176

帖子

1万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
10465
发表于 2025-7-28 14:30:15 | 显示全部楼层 |阅读模式


一、适合范围
本文档适用于VisualHMI平台,Lua脚本语言为V5.3版本,配合工程可以完成大部分的内部逻辑处理。

二、概述
on_update(slave,vtype,addr)触摸回调函数,当变量被设置后,自动执行此函数。
• slave:站号索引,0开始
• vtype:变量类型,生成main.lua,自动定义变量的数据类型
• addr:变量地址
重点:
1.串口指令修改寄存器值,不会触发on_update回调。
2.在on_update函数里,调用set_uit16(set_int16/set_uint32...),不会在触发on_update回调。
3.在其他系统回调函数,如on_init ,执行set_uit16(set_int16/set_uint32...) ,会触发on_update回调。
4.用户点击屏幕,修改控件状态(寄存器值),会触发on_update回调。

三、教程实现
功能实现
首先建立一个HMI工程以DC80480M070为例。如3-1所示
图3-1 新建工程
控件配置
1.放置一个位状态指示灯作为按钮来触发条件,控件地址绑定一个0x1000以上的LW地址即可。然后添加一个数值控件,绑定和按钮相同的地址,用来实时显示按钮状态的变化。再放置一个数值按钮绑定到LW1001。如图3-2所示。
图3-2 控件配置(触摸回调)
2、我们再配置一组控件:位状态指示灯绑定LW1002,数值控件绑定LW1003。如图3-3所示。不同的是,这次我们通过初始化函数on_init()来修改LW1002的值,从而触发on_update函数来设置LW1003的值。
图3-3 控件配置(初始化函数回调)
Lua脚本预览




广州大彩光电科技有限公司(总部)
地址:广州市黄埔区科学城玉树工业园富康西街8号C栋销售与技术支持:(020)82186683-601

大彩深圳办事处
地址:深圳市龙岗区坂田街道深汇大厦1栋1108
邮箱:fujq@gz-dc.com
销售与技术支持:付先生 13828461018

大彩成都办事处
地址:四川省成都市高新区天府大道中段500号东方希望天祥广场C座39楼3910号

邮箱:niesl@gz-dc.com
销售与技术支持:聂经理 18180927176

大彩上海办事处
地 址:上海市浦东新区长清路1200弄森宏旗臻商务楼39号813

邮箱:sales103@gz-dc.com
销售与技术支持:刘经理 13671882080

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
销售与技术支持:(020)82186683-601
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|广州大彩串口屏论坛_大彩开发者交流论坛

GMT+8, 2025-8-30 08:53 , Processed in 0.052627 second(s), 20 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表