发布于 2012-12-26 23:24:47
3楼
巴乔兄:化了点时间,我把你的S5程序FX232转换到S7的 STL Source程序FC232,给你参考一下,这样你可以把它编译成S7的FC,就容易阅读了。另外S5程序的FX226没有源代码,在STL Source里面用NOP 0替代了。等有了FX226,我再整理完善一些。
FUNCTION FC 232 : VOID
NAME: ZEITUEBW
VAR_INPUT
AUS1 :bool; // AUS1
END1 :bool; // END1
AUS2 :bool; // AUS2
END2 :bool; // END2
ZWRT :int; // ZWRT
F_NR :word; // F-NR
END_VAR
VAR_TEMP
conv_akku1 :dword;
conv_akku2 :dword;
conv_stw :word;
END_VAR
BEGIN
NETWORK
L 0;
L #ZWRT;
JC M001;
L 1;
L W#16#232;
CALL SFC 46;
// *** Warning in Line 15947 Note different STOP commands.
M001:OPN DB 472;
L DBW 6;
T MW 251;
INC 1;
T DBW 6;
T conv_akku1;
L STW;
T conv_stw;
L MB 252;
SLW 4;
LAR1;
L conv_stw;
T STW;
L conv_akku1;
L DBW [ AR1, P#0.0 ];
T MW 254;
A DBX 5.0;
JC M002;
A #AUS1;
AN #END1;
O;
A #AUS2;
AN #END2;
JC M003;
L #ZWRT;
T conv_akku1;
TAK;
T conv_akku2;
L STW;
T conv_stw;
L MB 252;
SLW 4;
LAR1;
L conv_stw;
T STW;
L conv_akku2;
L conv_akku1;
T DBW [ AR1, P#0.0 ];
BEU;
M003:L MW 254;
L DBW 8;
-I;
T MW 254;
T conv_akku1;
TAK;
T conv_akku2;
L STW;
T conv_stw;
L MB 252;
SLW 4;
LAR1;
L conv_stw;
T STW;
L conv_akku2;
L conv_akku1;
T DBW [ AR1, P#0.0 ];
L 0;
>=I;
JC M004;
L 0;
T MW 254;
L #F_NR;
T MW 246;
NOP 0; //注:这里调用FX226
M004:BEU;
M002:L #ZWRT;
T conv_akku1;
TAK;
T conv_akku2;
L STW;
T conv_stw;
L MB 252;
SLW 4;
LAR1;
L conv_stw;
T STW;
L conv_akku2;
L conv_akku1;
T DBW [ AR1, P#0.0 ];
L #F_NR;
T MW 246;
NOP 0; //注:这里调用FX226
END_FUNCTION
佛对我说:“你的痛苦来自于你的欲望,没有欲望也就没有痛苦!”