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

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

3天内不再提示

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

广州大彩串口屏 2025-08-31 17:05 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

一、适合范围

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


二、概述

set_bit(vtype,addr, value)

设置位寄存器:如Modbus的线圈、Fx2N的X、Y、S、M寄存器


vtype:数据类型

addr:变量地址

value:写入的值


get_bit(vtype,addr)

读取位寄存器:如Modbus的线圈、Fx2N的X、Y、S、M寄存器,返回数值


vtype:数据类型

addr:变量地址


三、教程实现

功能实现

1.Modbus线圈应用

放置3个位状态指示灯分别绑定modbus线圈地址0x0000/0x0001/0x0002,如图3-1。通过脚本实现初始化对0x0000线圈地址置1,通过on_updata回调函数将0x01线圈地址同步更新到0x0线圈地址上,实现位状态相同。通过定时器将0x02线圈地址实现01循环变化。

wKgZO2i0D_WABIDzAAB4rZ6xjTE122.png

图3-1 modbus线圈地址配置


Lua脚本预览

脚本运用函数说明

对地址0x0000线圈寄存器写入位值为1时函数格式为set_bit(VT_0x,0x0000,1)

对地址0x0000线圈寄存器读取的函数格式为get_bit(VT_0x,0x0000)

对地址0x0000离散输入寄存器读取的函数格式为get_bit(VT_1x,0x0000)

wKgZPGi0EAyAYsrGAAF-lUdM8NE880.png

modbus线圈地址lua脚本预览


2.FX2N位寄存器应用

放置8个位状态指示灯分别绑定X/Y/S/M位状态寄存器如图3-2所示,脚本初始化将位寄存器地址全部置1。搭配定时器将位寄存器实现01循环变化。

wKgZO2i0ECeAMo9LAAB1_Zg83Tk411.png

图3-2 FX2N位状态寄存器配置


Lua脚本预览

脚本运用函数说明

对地址0x0000输入位X寄存器只读取函数格式为get_bit(VT_X,0x0000)

对地址0x0000输出位Y寄存器只写入位值为1的函数格式为set_bit(VT_Y,0x0000,1)

对地址0x0000状态位S寄存器可读写位值为1的函数格式为set_bit(VT_S,0x0000,1)和get_bit(VT_S,0x0000)

对地址0x0000辅助位M寄存器可读写位值为1的函数格式为set_bit(VT_M,0x0000,1)和get_bit(VT_M,0x0000)

wKgZPGi0EDmASH1cAAFVbb87ouI131.png

FX2N位状态寄存器lua脚本预览

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

    关注

    3

    文章

    4406

    浏览量

    66838
  • HMI
    HMI
    +关注

    关注

    9

    文章

    687

    浏览量

    51535
  • 串口屏技术
    +关注

    关注

    0

    文章

    19

    浏览量

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

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

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

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

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

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

    32bit MCU 与 16bit MCU 的 区别

    以 32-bit 英飞凌 TC377 为例右下图可见,虽然是32-bit MCU,但是每个地址对应的是一个byte【8-bit】左上图是通过 Trace32 查看单片机memory, 可见,32个
    发表于 10-25 16:36 11次下载
    32<b class='flag-5'>bit</b> MCU 与 16<b class='flag-5'>bit</b> MCU 的 区别

    过设置单个bit来实现事件组的功能

    事件组就是24bit的一个EventBits_t变量,set单个bit位表示任务A是否发生,为1发生,为0则没有发生,clear这个bit位置0,用wait该
    的头像 发表于 09-15 09:09 773次阅读
    过设置单个<b class='flag-5'>bit</b>来实现事件组的功能

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

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

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

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

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

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

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

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