签到有奖
消息提醒
运维工程师专区
官方商城
扫码分享好友 任选多种周边
if (b[0]==a[0] and n) then
m0[0]=1
else
m0[0]=0
end if
SetData(m0[0], "Local HMI", LB, 0, 1)
if (b[1]==a[1] and n) then
m0[1]=1
m0[1]=0
SetData(m0[1], "Local HMI", LB, 1, 1)
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
帖子链接:https://www.ad.siemens.com.cn/club/bbs/post.aspx?a_id=1694363&b_id=64&s_id=0&num=8
你这是什么语言脚本?VBS脚本不支持a[b]这种数组寻址方式,C脚本不支持 and 操作符。
那么,这是你自己开发的脚本,出了问题只能你自己解决了。
这是SCL语句吧,
m0[0]=1;
m0[0]=0;
end if;
SetData(m0[0], "Local HMI", LB, 0, 1);
m0[1]=1;
m0[1]=0;
SetData(m0[1], "Local HMI", LB, 1, 1);
两个If语句没有什么关系,关键的是两if结束不管结果如何都调用了SetData(**)函数,结果以最后一次调用的为准了,逻辑没有设计好吧?你是不是想SetData函数在一种情况下被调用,而不是两种情况都被调用。
威纶通的宏功能,IF里在嵌套ELSEIF试一下。
肯定不是本程序的原因。上下两部分程序都没有关系的。
威纶的宏指令写法。
第一段和第二段没有联系。
SetData(**)函数是置位
SetData(m0[0], "Local HMI", LB, 0, 1);不管m0[0]=0或者1,不影响LB0,1.
SetData(m0[1], "Local HMI", LB, 1, 1);不管m0[1]=0或者1,不影响LB1,1.
你查下有没有使用LW0的数据了?
我想知道这里哪里跟16位32位扯上关系?这又哪来的LW?
分享
扫码分享好友 任选多种好礼
收藏
有帮助
欢迎您访问支持中心!
丰富的视频,全方位的文档,大量的网友交流精华……
为了更好的完善这些内容,我们诚邀您在浏览结束后,花20秒左右的时间,完成一个用户在线调查!
感谢您的支持!
密码至少8位,包含大、小写字母,数字和符号至少三种。
允许邮箱和手机接收来自支持中心网站的信息
我已同意《支持中心网站注册协议和隐私政策》
微信登录扫码一键登录
验证码登录
密码登录
二维码失效点击重试
打开微信扫一扫,快速登录/注册
未注册手机验证后自动登录,注册即代表同意《支持中心网站注册协议和隐私政策》
三日内免验证登录
短信登录
登录