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

描述

 

一、适合范围

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


 

二、概述

on_screen_change(screen)回调函数,画面切换通知,该函数通常用来根据页面给特定变量赋值,启动和关闭定时器以及设置系统参数。


 

三、教程实现

工程配置:

首先建立一个HMI工程以DC80480M070为例。如3-1所示。

HMI

图3-1 新建工程


 

1、在画面上放置一个功能按钮用来切换画面触发on_screen_change(screen)回调函数,以及放置两个数值控件绑定不同的地址用来显示参数。如3-2所示。其余界面配置同上,如图3-3和3-4所示。

HMI

图3-2 控件配置

HMI

图3-3 控件配置


 

HMI

图3-4 控件配置

Lua脚本预览

 

HMI(1)


 

 

HMI(2)


 

HMI(3)

 


 

函数应用

1.当切换页面后为所需要赋值的特定控件赋值,当切换到画面0时给0x1000地址0x1002地址赋值,脚本如下:

function on_screen_change(screen)

    if screen == 0 then 

        local _screen= get_screen()

        set_uint16(VT_LW,0x1002,_screen)

        set_uint16(VT_LW,0x1000,11)

    end 

end


 

2.可以启动以及停止定时器来实现所需要定时处理的功能,脚本如下:

count = 0

function on_timer(timer_id)

    if timer_id==0 then 

        count=count+1

        set_uint16(VT_LW,0x1100,count)

    end 

end 

function on_screen_change(screen)

    if screen == 1 then

        start_timer(0,1000,0,0)

        local _screen= get_screen()

        set_uint16(VT_LW,0x1004,_screen)

    end 

end


 

3.可以设置调节屏幕的系统参数,脚本如下:

function on_screen_change(screen)

    if screen == 2 then 

        set_uint16(VT_LW,0x0121,20)

        local _screen= get_screen()

        set_uint16(VT_LW,0x1006,_screen)

        stop_timer(0)

    end 

end

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

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分