yygy374278 发表于 2014-11-6 15:01:07

宏指令求助

macro_command main()
short b,c

GetData(b,"Local HMI", LW,9011, 1)
GetData(c,"Local HMI", RW,1, 1)
if b==c then
SetData(b,"MITSUBISHI FX0n/FX2", M,0,1)
end if
end macro_command

本人刚接触宏指令请教
有什么办法解决M0一直置位的问题呢?
要求是9011和RW1为1是输出,不为1时关闭

yiwei125518 发表于 2014-11-24 20:05:53

macro_command main()
short b,c
bool on=1,off=0
GetData(b,"Local HMI", LW,9011, 1)
GetData(c,"Local HMI", RW,1, 1)
if b==1 or c==1 then
SetData(on,"MITSUBISHI FX0n/FX2", M,0,1)
else
SetData(off,"MITSUBISHI FX0n/FX2", M,0,1)
end if
end macro_command
LW9011和RW1 任何一个数字为1时 M0“1”
如果需要LW9011和RW1 都为1时 M0“1”请 if b==1 or c==1 then改成if b==1 and c==1 then

kingkong 发表于 2014-12-2 17:38:48

回复 2# yiwei125518
中间去掉else部分会怎么样,M0应该不会置位
if b==1 and c==1 then
SetData(on,"MITSUBISHI FX0n/FX2",M,0,1)
end if
页: [1]
查看完整版本: 宏指令求助