发表于:2011/10/15 22:43:19
#0楼
VAR
instance_name : IEC_BMDI;
END_VAR
B:=0;
P0:=81+P;
IF P0<81 OR P0>97 THEN
P0:=81;
END_IF;
WHILE P0<=97 AND B=0 DO
instance_name (SEL_IN := 4, (* UINT *)
OFF_IN :=P0 , (* UINT *)
LENGTH :=1 , (* UINT *)
SEL_OUT :=4 , (* UINT *)
OFF_OUT :=1 (* UINT *));
B:=X;
IF B<1 OR B>19999 THEN
B:=0;
END_IF;
P0:=P0+1;
END_WHILE;
Q:=B;
P1:=P0-81;
OK:=0;
IF Q>0 AND Q<19999 THEN
OK:=1;
END_IF;
instance_name : IEC_BMDI;
END_VAR
B:=0;
P0:=81+P;
IF P0<81 OR P0>97 THEN
P0:=81;
END_IF;
WHILE P0<=97 AND B=0 DO
instance_name (SEL_IN := 4, (* UINT *)
OFF_IN :=P0 , (* UINT *)
LENGTH :=1 , (* UINT *)
SEL_OUT :=4 , (* UINT *)
OFF_OUT :=1 (* UINT *));
B:=X;
IF B<1 OR B>19999 THEN
B:=0;
END_IF;
P0:=P0+1;
END_WHILE;
Q:=B;
P1:=P0-81;
OK:=0;
IF Q>0 AND Q<19999 THEN
OK:=1;
END_IF;