SP1 SCL是个大大的倒退。已经不支持自定义类型数组的间接访问了。
例如:
index1:=1;
index2:=2;
for i:=index1 to index2 do
if a[i].Uplimit>10000 then
a[i].uplimit:=10000
end_if;
end_for;
在这段程序里a是自定义类型的数组变量,定义为IN_OUT。存放在DB块里面。
这段程序在V13和以前的版本没有任何问题,而在V13_SP1里面却碰到了问题,PLC报错,访问不到db块。
重装系统后仍然如此。
我怀疑是SP1的编译器有重大BUG.或者已经不支持复杂类型数组的间接访问了,这对结构化编程是大大的倒退。
强烈建议西门子好好查查。