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

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

3天内不再提示

大彩讲堂:VisualHMI-LUA教程-获取和设置16位数据函数

广州大彩串口屏 2025-10-13 16:40 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

一、适合范围

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


二、概述

2.1 get_uint16(vtype,addr)读取无符号短整型寄存器,返回无符号短整型数据。
• vtype:变量类型,生成main.lua,自动定义变量的数据类型
• addr:变量地址

2.2 set_uint16(vtype,addr,value)设置无符号短整形寄存器值。
• vtype:变量类型,生成main.lua,自动定义变量的数据类型
• addr:变量地址
• value:寄存器值

2.3 get_int16(vtype,addr)读取有符号短整型寄存器,返回有符号短整型数据。
• vtype:变量类型,生成main.lua,自动定义变量的数据类型
• addr:变量地址

2.4 set_int16(vtype,addr,value)设置有符号短整形寄存器值。
• vtype:变量类型,生成main.lua,自动定义变量的数据类型
• addr:变量地址
• value:寄存器值


本文本档通过分别对HMI内部地址LW,modbus协议保持寄存器地址,三菱协议D寄存器读写无符号短整型数据对get/set_uint16函数进行说明。

例如:

若要获取LW地址0x1000无符号短整型数据,则函数如下:get_uint16(VT_LW,0x1000)

若要设置LW地址0x1000的值为无符号短整型数据100,则函数如下:set_uint16(VT_LW,0x1000,100)

若要获取LW地址0x1000有符号短整型数据,则函数如下:get_int16(VT_LW,0x1000)

若要设置LW地址0x1000的值为有符号短整型数据100,则函数如下:set_int16(VT_LW,0x1000,100)


重点:get/set_int16函数的用法和get/set_uint16函数的用法一样。只是int16的取值范围是-32768~32767,uint16的取值范围是0~65535。


三、教程实现

功能实现

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

wKgZO2jsuqeACluaAABIbNSkkC8036.png

图3-1 新建工程


控件配置

1.放置一个数值输入控件,启用键盘输入,绑定LW地址0x1000,放置一个数值输入控件,启用键盘输入,绑定LW地址0x1001。再放置一个数值输入控件绑定LW地址0x1002。放置一个按钮控件绑定LW地址0x1111。如图3-2所示。(注意:数值输入控件绑定的数据类型要和脚本数据类型一致。脚本获取和设置的是uint16,控件数据类型也要选择uint16;脚本获取和设置的是int16,控件数据类型也要选择int16)

wKgZO2jsuq6AVaWVAAAkTpko-og954.png

图3-2 控件配置(读写LW寄存器地址)


2、新建一个简单工程,开启modbus master协议,放置一个数值输入控件,绑定保持寄存器地址0x0000,放置一个数值输入控件,绑定保持寄存器地址0x0001。放置一个数值输入控件绑定保持寄存器地址0x0002。再放置一个字设置按钮控件绑定LW地址0x1111。如图3-3所示。(注意事项同上)

wKgZPGjsurWAfTlTAAAiHw3w0og247.png

图3-3 控件配置(读写modbus保持寄存器地址)


3、新建一个简单工程,开启FX2N(三菱)协议,放置一个数值输入控件,绑定D寄存器地址0,放置一个数值输入控件,绑定D寄存器地址1。放置一个数值输入控件绑定D寄存器地址2。再放置一个字设置按钮控件绑定LW地址0x1111。如图3-4所示。(注意事项同上)

wKgZO2jsuruAZMm8AAAgJmFfh_U164.png

图3-4 控件配置(读写三菱协议D寄存器地址)

四、Lua脚本预览

wKgZPGjsusGAKX00AABKf7UnFpU771.png

图4-1读写LW寄存器地址


wKgZPGjsuseAMyKoAABJDZKkesE291.png


图4-2读写modbus保持寄存器地址


wKgZO2jsusyAZ946AABPmJ3x-RA967.png


图4-3读写三菱协议D寄存器地址

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

    关注

    3

    文章

    4406

    浏览量

    66838
  • HMI
    HMI
    +关注

    关注

    9

    文章

    687

    浏览量

    51536
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    串口屏物联型开发资料: LUA教程3

    串口屏物联型开发资料:LUA教程3-系统参数设置
    发表于 05-09 16:53

    请问FPGA如何串行接收16或32位数据

    这个问题困扰我好多天了 串口通信只能一次接收8位数据,而如果接收16或32数据,那么得通过串口接收2个或4个8
    发表于 05-27 23:25

    c6748 spi驱动设置数据长度是8,接收寄存器却能收到16位数据

    有用c6748dsp驱动fpc1011传感器的么?spi接口,为什么我设置数据长度是8,接收寄存器却能收到16位数据啊,各种问题求大神帮
    发表于 10-11 12:51

    LUA脚本的绘图API函数的使用方法及使用函数的注意事项

    物联型串口屏通过 LUA 脚本配合工程可以完成大部分的内部逻辑处理,可以做到让 MCU 只参与数据处理,不参与屏的逻辑处理。本文将介绍大 LUA 脚本 API
    发表于 10-17 08:00 9次下载
    <b class='flag-5'>LUA</b>脚本的绘图API<b class='flag-5'>函数</b>的使用方法及使用<b class='flag-5'>函数</b>的注意事项

    LUA如何实现回调函数的触发使用以及编写程序的注意事项

    物联型串口屏通过 LUA 脚本配合工程可以完成大部分的内部逻辑处理,可以做到让 MCU 只参与数据处理,不参与屏的逻辑处理。本文将介绍大 LUA 脚本 API
    发表于 10-17 08:00 2次下载
    <b class='flag-5'>LUA</b>如何实现回调<b class='flag-5'>函数</b>的触发使用以及编写程序的注意事项

    讲堂VisualHMI-LUA教程-on_run回调函数使用指南

    一、适合范围本文档适用于VisualHMI平台,Lua脚本语言为V5.3版本,配合工程可以完成大部分的内部逻辑处理。二、概述on_run(screen)周期回调函数,用该回调函数,会根
    的头像 发表于 07-23 15:25 917次阅读
    大<b class='flag-5'>彩</b><b class='flag-5'>讲堂</b>:<b class='flag-5'>VisualHMI-LUA</b>教程-on_run回调<b class='flag-5'>函数</b>使用指南

    讲堂VisualHMI软件如何自定义键盘

    一、适合范围适合全系列大协议串口屏产品。二、教程实现2.1准备UI素材准备好相应的美工UI,如图2-1所示。.图2-1美工UI图2.2建立工程根据串口屏的实际型号,在VisualHMI软件工程
    的头像 发表于 07-23 15:43 3524次阅读
    大<b class='flag-5'>彩</b><b class='flag-5'>讲堂</b>:<b class='flag-5'>VisualHMI</b>软件如何自定义键盘

    讲堂VisualHMI-LUA教程-on_press回调函数使用指南

    一、适合范围本文档适用于VisualHMI平台,Lua脚本语言为V5.3版本,配合工程可以完成大部分的内部逻辑处理。二、概述on_press(state,x,y)触摸回调函数,当带触摸的串口屏,点击
    的头像 发表于 07-23 16:32 922次阅读
    大<b class='flag-5'>彩</b><b class='flag-5'>讲堂</b>:<b class='flag-5'>VisualHMI-LUA</b>教程-on_press回调<b class='flag-5'>函数</b>使用指南

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

    回调函数使用指南
    的头像 发表于 08-31 16:25 623次阅读
    大<b class='flag-5'>彩</b><b class='flag-5'>讲堂</b>:<b class='flag-5'>VisualHMI-LUA</b>教程-on_update回调<b class='flag-5'>函数</b>使用指南

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

    on_screen_change回调函数使用指南
    的头像 发表于 08-31 16:32 570次阅读
    大<b class='flag-5'>彩</b><b class='flag-5'>讲堂</b>:<b class='flag-5'>VisualHMI-LUA</b>教程-on_screen_change回调<b class='flag-5'>函数</b>使用指南

    讲堂VisualHMI-LUA教程-定时器的使用指南

    定时器的使用
    的头像 发表于 08-31 16:59 849次阅读
    大<b class='flag-5'>彩</b><b class='flag-5'>讲堂</b>:<b class='flag-5'>VisualHMI-LUA</b>教程-定时器的使用指南

    讲堂VisualHMI-LUA教程-set_bit/get_bit函数应用

    set_bit/get_bit函数应用
    的头像 发表于 08-31 17:05 595次阅读
    大<b class='flag-5'>彩</b><b class='flag-5'>讲堂</b>:<b class='flag-5'>VisualHMI-LUA</b>教程-set_bit/get_bit<b class='flag-5'>函数</b>应用

    讲堂VisualHMI-LUA教程-获取设置单精度浮点数函数的应用

    一、适合范围本文档适用于VisualHMI平台,Lua脚本语言为V5.3版本,配合工程可以完成大部分的内部逻辑处理。二、概述get_float/set_float函数主要用于VisualHMI
    的头像 发表于 10-16 00:00 1236次阅读
    大<b class='flag-5'>彩</b><b class='flag-5'>讲堂</b>:<b class='flag-5'>VisualHMI-LUA</b>教程-<b class='flag-5'>获取</b><b class='flag-5'>设置</b>单精度浮点数<b class='flag-5'>函数</b>的应用

    讲堂VisualHMI-LUA教程-获取设置32位数据函数的应用

    一、适合范围本文档适用于VisualHMI平台,Lua脚本语言为V5.3版本,配合工程可以完成大部分的内部逻辑处理。二、概述2.1.get_uint32(vtype,addr)读取无符号整形寄存器
    的头像 发表于 10-15 17:46 997次阅读
    大<b class='flag-5'>彩</b><b class='flag-5'>讲堂</b>:<b class='flag-5'>VisualHMI-LUA</b>教程-<b class='flag-5'>获取</b>与<b class='flag-5'>设置</b>32<b class='flag-5'>位数据</b><b class='flag-5'>函数</b>的应用

    讲堂VisualHMI-LUA教程-连续写多个寄存器函数的应用

    一、适合范围本文档适用于VisualHMI平台,Lua脚本语言为V5.3版本,配合工程可以完成大部分的内部逻辑处理。二、概述set_uint16_ex(vtype,addr,value1
    的头像 发表于 10-17 00:00 1102次阅读
    大<b class='flag-5'>彩</b><b class='flag-5'>讲堂</b>:<b class='flag-5'>VisualHMI-LUA</b>教程-连续写多个寄存器<b class='flag-5'>函数</b>的应用