引用gsxiaojian 的回复内容:你可以先去了解下IEC61131-3的相关指令,你这里所要用的附值可以直接用X:=Y之类的,如果真想用MOV的话那么你就需要先了解下相关的指令了,比如MOV你可以写成MOVE。
解释一下为什么想用ST编程:我有一个程序很长很不容易看,以前学过C编程,觉得看程序容易多了。 用MOV只是举个例子。
现在的问题是简单的容易编,但复杂点的逻辑就难了,关键是两点:1.能调用的函数太少了。2.功能块和主程序的参数数值容易传递,但地址不好传递。
下边是我这两天编的一个简单ST功能块,运行也没问题。复杂的一直没搞定。
nqz:=(zscs&gmzd)and(nqz&(NOT nqwh));
if modeb = true then //modeb tendb 是输入变量BOOL型
mode :=16#FFFF; //mode tend 是内部变量 WORD型
else
mode :=16#0000;
end_if;
if tendb = true then
tend :=16#FFFF;
else
tend :=16#0000;
end_if;
nqwh:=(nqz&(not gmzd))and(zscs&(not mode))or(nqwh&(not tend));