hong0618
早上好,各位
级别: 探索解密
精华主题: 0
发帖数量: 110 个
工控威望: 198 点
下载积分: 1298 分
在线时间: 76(小时)
注册时间: 2018-05-28
最后登录: 2024-12-14
查看hong0618的 主题 / 回贴
楼主  发表于: 2024-07-10 14:08

macro_command main()
short a
GetData(a, "Local HMI", RW, 100, 1)
SetData(a, "MODBUS TCP/IP", 4x, 1, 60)

end macro_command


错误 c31:参数资料类型不正确
注意 w2:变数未初始化:a
-1 error(s) 1 warning(s)

读取1个数据,写入连续的60个地址。
请指教,谢谢
小姐姐骚啊
你不早点说
别催了,打完这局就开工。
级别: 探索解密
精华主题: 0
发帖数量: 78 个
工控威望: 186 点
下载积分: 608 分
在线时间: 343(小时)
注册时间: 2022-10-15
最后登录: 2024-12-12
查看你不早点说的 主题 / 回贴
1楼  发表于: 2024-07-10 14:26
short b[60]
FILL(b[0],a,60)
hong0618
早上好,各位
级别: 探索解密
精华主题: 0
发帖数量: 110 个
工控威望: 198 点
下载积分: 1298 分
在线时间: 76(小时)
注册时间: 2018-05-28
最后登录: 2024-12-14
查看hong0618的 主题 / 回贴
2楼  发表于: 2024-07-10 14:43
macro_command main()
short a
short b[60]
FILL(b[0],a,60)
GetData(a, "Local HMI", RW, 100, 1)
SetData(b[60], "MODBUS TCP/IP", 4x, 1, 60)

end macro_command

是这样吗?但是报错的更多。

屏用的TK8072IP
小姐姐骚啊
hong0618
早上好,各位
级别: 探索解密
精华主题: 0
发帖数量: 110 个
工控威望: 198 点
下载积分: 1298 分
在线时间: 76(小时)
注册时间: 2018-05-28
最后登录: 2024-12-14
查看hong0618的 主题 / 回贴
3楼  发表于: 2024-07-10 15:24
macro_command main()
short a
GetData(a, "Local HMI", RW, 100, 1)
SetData(a, "MODBUS TCP/IP", 4x, 1, 1)

end macro_command

这样可以。
我想咨询的是,是不是要写60个setdata .不能1个setdata搞定吗?
小姐姐骚啊
hong0618
早上好,各位
级别: 探索解密
精华主题: 0
发帖数量: 110 个
工控威望: 198 点
下载积分: 1298 分
在线时间: 76(小时)
注册时间: 2018-05-28
最后登录: 2024-12-14
查看hong0618的 主题 / 回贴
4楼  发表于: 2024-07-10 17:32
macro_command main()

short a
short b[10]
FILL (b[0],a,10)
GetData(a, "Local HMI", LW, 100, 1)
SetData(b[0], "Local HMI", LW, 300, 10)

end macro_command

编译通过了。感谢1楼
模拟了一下a的数值只传给了309.    300-308都是***。不知是什么原因
小姐姐骚啊
hong0618
早上好,各位
级别: 探索解密
精华主题: 0
发帖数量: 110 个
工控威望: 198 点
下载积分: 1298 分
在线时间: 76(小时)
注册时间: 2018-05-28
最后登录: 2024-12-14
查看hong0618的 主题 / 回贴
5楼  发表于: 2024-07-10 18:11
搞定,开心
小姐姐骚啊
moder7364
缘起我在人群中看见你,缘散我看见你在人群中。
级别: 网络英雄
精华主题: 0
发帖数量: 189 个
工控威望: 8052 点
下载积分: 35763 分
在线时间: 1068(小时)
注册时间: 2013-08-31
最后登录: 2024-12-19
查看moder7364的 主题 / 回贴
6楼  发表于: 2024-08-06 13:21
macro_command main()
short a,i=1
GetData(a, "Local HMI", RW, 100, 1)

for i= 1 to 60
SetData(a, "MODBUS TCP/IP", 4x, i, 1)
next i

end macro_command
xiaoganglu
级别: 探索解密
精华主题: 0
发帖数量: 14 个
工控威望: 108 点
下载积分: 545 分
在线时间: 18(小时)
注册时间: 2010-10-11
最后登录: 2024-12-02
查看xiaoganglu的 主题 / 回贴
7楼  发表于: 27天前
引用
引用第4楼hong0618于2024-07-10 17:32发表的  :
macro_command main()

short a
short b[10]
FILL (b[0],a,10)
.......


写反了

macro_command main()

short a
short b[10]
GetData(a, "Local HMI", LW, 100, 1)
FILL (b[0],a,10)
SetData(b[0], "Local HMI", LW, 300, 10)

end macro_command