You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
877 lines
18 KiB
877 lines
18 KiB
4 months ago
|
FUNCTION_BLOCK IJ_LSyncControl
|
||
|
VAR_EXTERNAL
|
||
|
|
||
|
END_VAR
|
||
|
|
||
|
VAR_INPUT
|
||
|
REAL_IN0 :REAL;
|
||
|
REAL_IN1 :REAL;
|
||
|
REAL_IN2 :REAL;
|
||
|
BOOL_IN0 :BOOL;
|
||
|
BOOL_IN1 :BOOL;
|
||
|
BOOL_IN2 :BOOL;
|
||
|
BOOL_IN3 :BOOL;
|
||
|
INT_IN0 :INT;
|
||
|
INT_IN1 :INT;
|
||
|
INT_IN2 :INT;
|
||
|
CM :BOOL;
|
||
|
RM :INT;
|
||
|
END_VAR
|
||
|
|
||
|
VAR_OUTPUT
|
||
|
REAL_OUT0 :REAL;
|
||
|
REAL_OUT1 :REAL;
|
||
|
REAL_OUT2 :REAL;
|
||
|
BOOL_OUT0 :BOOL;
|
||
|
BOOL_OUT1 :BOOL;
|
||
|
BOOL_OUT2 :BOOL;
|
||
|
BOOL_OUT3 :BOOL;
|
||
|
INT_OUT0 :INT;
|
||
|
INT_OUT1 :INT;
|
||
|
INT_OUT2 :INT;
|
||
|
END_VAR
|
||
|
|
||
|
VAR
|
||
|
REAL_TEMP0 :REAL;
|
||
|
REAL_TEMP1 :REAL;
|
||
|
REAL_TEMP2 :REAL;
|
||
|
BOOL_TEMP0 :BOOL;
|
||
|
BOOL_TEMP1 :BOOL;
|
||
|
BOOL_TEMP2 :BOOL;
|
||
|
BOOL_TEMP3 :BOOL;
|
||
|
INT_TEMP0 :INT;
|
||
|
INT_TEMP1 :INT;
|
||
|
INT_TEMP2 :INT;
|
||
|
VER :REAL;
|
||
|
END_VAR
|
||
|
|
||
|
(*Automatically declared*)
|
||
|
VAR_EXTERNAL
|
||
|
END_VAR
|
||
|
(** {* **)
|
||
|
(** **)
|
||
|
(** ʱ �䣺20200410 **)
|
||
|
(** �� ����1.0 **)
|
||
|
(** �� �ߣ�Ҧ�� **)
|
||
|
(** �� �ƣ����ö��Ʊ��ض�ʱ/Ⱥ�鶨ʱ���������ơ����Ƶ��ء����ص�������ͬ�����ܿ� **)
|
||
|
(** ������Ҫ�豸������ʱ����Ҫ��������ʱ�������·����飺 BOOL0Ϊ���ض�ʱ�������� BOOL3Ϊ������������ **)
|
||
|
(** ������Ҫ�豸Ⱥ�鶨ʱ����Ҫ��������ʱ�������ŷ����飺 BOOL0ΪȺ�鶨ʱ�������� BOOL3Ϊ������������ **)
|
||
|
(** ˵ ���� **)
|
||
|
(** IN0Ϊ���ض�ʱ/Ⱥ�鶨ʱȺ�ز��� IN3Ϊ�������Ʋ�����IN1Ϊ���ص��ز�����IN2Ϊ���Ƶ��ز��� **)
|
||
|
(** CM Ϊ����ģʽ 0����ģʽ 1����ģʽ **)
|
||
|
(** RM Ϊ����ģʽ 0����ģʽ 1����ģʽ 2Ӧ��ģʽ **)
|
||
|
(** **)
|
||
|
(** CM=0 ���ص��ز���--�����Ƶ��ز��� **)
|
||
|
(** CM=1,RM<>2 ����Ⱥ�ز���--�����Ƶ��ز���/���ص��ز��� �����Ƶ��ز�����--�����ص��ز��� **)
|
||
|
(** CM=1,RM =2 Ԥ����Ӧ������������λ���ű�����Ⱥ������ �����Ƶ��ز�����--�����ص��ز��� **)
|
||
|
(** **)
|
||
|
(** ֧��BOOL,REAL,INT�������ͱ��� **)
|
||
|
(** �� ע�� **)
|
||
|
(** �����飺�� **)
|
||
|
(** **)
|
||
|
(** *} **)
|
||
|
(** VER:=1.0; **)
|
||
|
(* assign - Stmt *)
|
||
|
LD 1.0
|
||
|
ST VER
|
||
|
|
||
|
(** {**********����ģʽʱ�����ͬ��������ģʽʱ������->���Ƶ���ͬ��*************} **)
|
||
|
(** if CM =0 then **)
|
||
|
(* if - Cond *)
|
||
|
LD CM
|
||
|
EQ 0
|
||
|
JMPCN ODK_SKIP_000000000000001_000000000000001
|
||
|
|
||
|
(* then - Stmts *)
|
||
|
|
||
|
(** if BOOL_IN0<>BOOL_TEMP0 and BOOL_IN3=BOOL_TEMP3 then {*����/Ⱥ�鶨ʱ����--������/���ؿ���*} **)
|
||
|
(* if - Cond *)
|
||
|
LD BOOL_IN0
|
||
|
NE BOOL_TEMP0
|
||
|
AND ( BOOL_IN3
|
||
|
EQ BOOL_TEMP3
|
||
|
)
|
||
|
JMPCN ODK_SKIP_000000000000002_000000000000001
|
||
|
|
||
|
(* then - Stmts *)
|
||
|
|
||
|
(** BOOL_OUT0:=BOOL_IN0; {*����Ⱥ��*} **)
|
||
|
(* assign - Stmt *)
|
||
|
LD BOOL_IN0
|
||
|
ST BOOL_OUT0
|
||
|
|
||
|
(** BOOL_OUT1:=BOOL_IN0; {*���ص���*} **)
|
||
|
(* assign - Stmt *)
|
||
|
LD BOOL_IN0
|
||
|
ST BOOL_OUT1
|
||
|
|
||
|
(** BOOL_OUT2:=BOOL_IN0; {*���Ƶ���*} **)
|
||
|
(* assign - Stmt *)
|
||
|
LD BOOL_IN0
|
||
|
ST BOOL_OUT2
|
||
|
|
||
|
JMP ODK_END_IF_000000000000002
|
||
|
|
||
|
(** end_if; **)
|
||
|
(* if - End *)
|
||
|
ODK_SKIP_000000000000002_000000000000001:
|
||
|
ODK_END_IF_000000000000002:
|
||
|
|
||
|
(** if BOOL_IN3<>BOOL_TEMP3 and BOOL_IN0=BOOL_TEMP0 then {*��������--������/���ؿ���*} **)
|
||
|
(* if - Cond *)
|
||
|
LD BOOL_IN3
|
||
|
NE BOOL_TEMP3
|
||
|
AND ( BOOL_IN0
|
||
|
EQ BOOL_TEMP0
|
||
|
)
|
||
|
JMPCN ODK_SKIP_000000000000003_000000000000001
|
||
|
|
||
|
(* then - Stmts *)
|
||
|
|
||
|
(** BOOL_OUT3:=BOOL_IN3; {*����Ⱥ��*} **)
|
||
|
(* assign - Stmt *)
|
||
|
LD BOOL_IN3
|
||
|
ST BOOL_OUT3
|
||
|
|
||
|
(** BOOL_OUT1:=BOOL_IN3; {*���ص���*} **)
|
||
|
(* assign - Stmt *)
|
||
|
LD BOOL_IN3
|
||
|
ST BOOL_OUT1
|
||
|
|
||
|
(** BOOL_OUT2:=BOOL_IN3; {*���Ƶ���*} **)
|
||
|
(* assign - Stmt *)
|
||
|
LD BOOL_IN3
|
||
|
ST BOOL_OUT2
|
||
|
|
||
|
JMP ODK_END_IF_000000000000003
|
||
|
|
||
|
(** end_if; **)
|
||
|
(* if - End *)
|
||
|
ODK_SKIP_000000000000003_000000000000001:
|
||
|
ODK_END_IF_000000000000003:
|
||
|
|
||
|
(** if BOOL_IN0=BOOL_TEMP0 and BOOL_IN3=BOOL_TEMP3 then **)
|
||
|
(* if - Cond *)
|
||
|
LD BOOL_IN0
|
||
|
EQ BOOL_TEMP0
|
||
|
AND ( BOOL_IN3
|
||
|
EQ BOOL_TEMP3
|
||
|
)
|
||
|
JMPCN ODK_SKIP_000000000000004_000000000000001
|
||
|
|
||
|
(* then - Stmts *)
|
||
|
|
||
|
(** BOOL_OUT1:=BOOL_IN1; **)
|
||
|
(* assign - Stmt *)
|
||
|
LD BOOL_IN1
|
||
|
ST BOOL_OUT1
|
||
|
|
||
|
(** BOOL_OUT2:=BOOL_IN1; **)
|
||
|
(* assign - Stmt *)
|
||
|
LD BOOL_IN1
|
||
|
ST BOOL_OUT2
|
||
|
|
||
|
JMP ODK_END_IF_000000000000004
|
||
|
|
||
|
(** end_if; **)
|
||
|
(* if - End *)
|
||
|
ODK_SKIP_000000000000004_000000000000001:
|
||
|
ODK_END_IF_000000000000004:
|
||
|
|
||
|
JMP ODK_END_IF_000000000000001
|
||
|
|
||
|
(** end_if; **)
|
||
|
(* if - End *)
|
||
|
ODK_SKIP_000000000000001_000000000000001:
|
||
|
ODK_END_IF_000000000000001:
|
||
|
|
||
|
(** **)
|
||
|
(** if CM =1 then **)
|
||
|
(* if - Cond *)
|
||
|
LD CM
|
||
|
EQ 1
|
||
|
JMPCN ODK_SKIP_000000000000005_000000000000001
|
||
|
|
||
|
(* then - Stmts *)
|
||
|
|
||
|
(** if RM=2 then **)
|
||
|
(* if - Cond *)
|
||
|
LD RM
|
||
|
EQ 2
|
||
|
JMPCN ODK_SKIP_000000000000006_000000000000001
|
||
|
|
||
|
(* then - Stmts *)
|
||
|
|
||
|
(** {*���Ƶ��ء�--�����ص���*} **)
|
||
|
(** if BOOL_IN1<>BOOL_TEMP1 then {*���Ƶ��ء�-- ���ص���*} **)
|
||
|
(* if - Cond *)
|
||
|
LD BOOL_IN1
|
||
|
NE BOOL_TEMP1
|
||
|
JMPCN ODK_SKIP_000000000000007_000000000000001
|
||
|
|
||
|
(* then - Stmts *)
|
||
|
|
||
|
(** BOOL_OUT1:=BOOL_IN1; **)
|
||
|
(* assign - Stmt *)
|
||
|
LD BOOL_IN1
|
||
|
ST BOOL_OUT1
|
||
|
|
||
|
(** BOOL_OUT2:=BOOL_IN1; **)
|
||
|
(* assign - Stmt *)
|
||
|
LD BOOL_IN1
|
||
|
ST BOOL_OUT2
|
||
|
|
||
|
JMP ODK_END_IF_000000000000007
|
||
|
|
||
|
(** elsif BOOL_IN2<>BOOL_TEMP2 then {*���Ƶ��� --�����ص���*} **)
|
||
|
(* elseif - Cond *)
|
||
|
ODK_SKIP_000000000000007_000000000000001:
|
||
|
LD BOOL_IN2
|
||
|
NE BOOL_TEMP2
|
||
|
JMPCN ODK_SKIP_000000000000007_000000000000002
|
||
|
|
||
|
(* elsif - Stmts *)
|
||
|
|
||
|
(** BOOL_OUT1:=BOOL_IN2; **)
|
||
|
(* assign - Stmt *)
|
||
|
LD BOOL_IN2
|
||
|
ST BOOL_OUT1
|
||
|
|
||
|
(** BOOL_OUT2:=BOOL_IN2; **)
|
||
|
(* assign - Stmt *)
|
||
|
LD BOOL_IN2
|
||
|
ST BOOL_OUT2
|
||
|
|
||
|
JMP ODK_END_IF_000000000000007
|
||
|
|
||
|
(** end_if; **)
|
||
|
(* if - End *)
|
||
|
ODK_SKIP_000000000000007_000000000000002:
|
||
|
ODK_END_IF_000000000000007:
|
||
|
|
||
|
JMP ODK_END_IF_000000000000006
|
||
|
|
||
|
(** else **)
|
||
|
(* else *)
|
||
|
ODK_SKIP_000000000000006_000000000000001:
|
||
|
|
||
|
(* else - Stmts *)
|
||
|
|
||
|
(** if BOOL_IN0<>BOOL_TEMP0 then {*����/Ⱥ�鶨ʱ����--������/���ؿ���*} **)
|
||
|
(* if - Cond *)
|
||
|
LD BOOL_IN0
|
||
|
NE BOOL_TEMP0
|
||
|
JMPCN ODK_SKIP_000000000000008_000000000000001
|
||
|
|
||
|
(* then - Stmts *)
|
||
|
|
||
|
(** BOOL_OUT0:=BOOL_IN0; {*����/Ⱥ�鶨ʱ����*} **)
|
||
|
(* assign - Stmt *)
|
||
|
LD BOOL_IN0
|
||
|
ST BOOL_OUT0
|
||
|
|
||
|
(** BOOL_OUT1:=BOOL_IN0; {*���ص���*} **)
|
||
|
(* assign - Stmt *)
|
||
|
LD BOOL_IN0
|
||
|
ST BOOL_OUT1
|
||
|
|
||
|
(** BOOL_OUT2:=BOOL_IN0; {*���Ƶ���*} **)
|
||
|
(* assign - Stmt *)
|
||
|
LD BOOL_IN0
|
||
|
ST BOOL_OUT2
|
||
|
|
||
|
JMP ODK_END_IF_000000000000008
|
||
|
|
||
|
(** end_if; **)
|
||
|
(* if - End *)
|
||
|
ODK_SKIP_000000000000008_000000000000001:
|
||
|
ODK_END_IF_000000000000008:
|
||
|
|
||
|
(** if BOOL_IN3<>BOOL_TEMP3 then {*��������--������/���ؿ���*} **)
|
||
|
(* if - Cond *)
|
||
|
LD BOOL_IN3
|
||
|
NE BOOL_TEMP3
|
||
|
JMPCN ODK_SKIP_000000000000009_000000000000001
|
||
|
|
||
|
(* then - Stmts *)
|
||
|
|
||
|
(** BOOL_OUT3:=BOOL_IN3; {*��������*} **)
|
||
|
(* assign - Stmt *)
|
||
|
LD BOOL_IN3
|
||
|
ST BOOL_OUT3
|
||
|
|
||
|
(** BOOL_OUT1:=BOOL_IN3; {*���ص���*} **)
|
||
|
(* assign - Stmt *)
|
||
|
LD BOOL_IN3
|
||
|
ST BOOL_OUT1
|
||
|
|
||
|
(** BOOL_OUT2:=BOOL_IN3; {*���Ƶ���*} **)
|
||
|
(* assign - Stmt *)
|
||
|
LD BOOL_IN3
|
||
|
ST BOOL_OUT2
|
||
|
|
||
|
JMP ODK_END_IF_000000000000009
|
||
|
|
||
|
(** end_if; **)
|
||
|
(* if - End *)
|
||
|
ODK_SKIP_000000000000009_000000000000001:
|
||
|
ODK_END_IF_000000000000009:
|
||
|
|
||
|
(** {*���Ƶ��ء�--�����ص���*} **)
|
||
|
(** if BOOL_IN1<>BOOL_TEMP1 then {*���Ƶ��ء�-- ���ص���*} **)
|
||
|
(* if - Cond *)
|
||
|
LD BOOL_IN1
|
||
|
NE BOOL_TEMP1
|
||
|
JMPCN ODK_SKIP_00000000000000A_000000000000001
|
||
|
|
||
|
(* then - Stmts *)
|
||
|
|
||
|
(** BOOL_OUT1:=BOOL_IN1; **)
|
||
|
(* assign - Stmt *)
|
||
|
LD BOOL_IN1
|
||
|
ST BOOL_OUT1
|
||
|
|
||
|
(** BOOL_OUT2:=BOOL_IN1; **)
|
||
|
(* assign - Stmt *)
|
||
|
LD BOOL_IN1
|
||
|
ST BOOL_OUT2
|
||
|
|
||
|
JMP ODK_END_IF_00000000000000A
|
||
|
|
||
|
(** elsif BOOL_IN2<>BOOL_TEMP2 then {*���Ƶ��� --�����ص���*} **)
|
||
|
(* elseif - Cond *)
|
||
|
ODK_SKIP_00000000000000A_000000000000001:
|
||
|
LD BOOL_IN2
|
||
|
NE BOOL_TEMP2
|
||
|
JMPCN ODK_SKIP_00000000000000A_000000000000002
|
||
|
|
||
|
(* elsif - Stmts *)
|
||
|
|
||
|
(** BOOL_OUT1:=BOOL_IN2; **)
|
||
|
(* assign - Stmt *)
|
||
|
LD BOOL_IN2
|
||
|
ST BOOL_OUT1
|
||
|
|
||
|
(** BOOL_OUT2:=BOOL_IN2; **)
|
||
|
(* assign - Stmt *)
|
||
|
LD BOOL_IN2
|
||
|
ST BOOL_OUT2
|
||
|
|
||
|
JMP ODK_END_IF_00000000000000A
|
||
|
|
||
|
(** end_if; **)
|
||
|
(* if - End *)
|
||
|
ODK_SKIP_00000000000000A_000000000000002:
|
||
|
ODK_END_IF_00000000000000A:
|
||
|
|
||
|
(** end_if; **)
|
||
|
(* if - End *)
|
||
|
ODK_END_IF_000000000000006:
|
||
|
|
||
|
JMP ODK_END_IF_000000000000005
|
||
|
|
||
|
(** end_if; **)
|
||
|
(* if - End *)
|
||
|
ODK_SKIP_000000000000005_000000000000001:
|
||
|
ODK_END_IF_000000000000005:
|
||
|
|
||
|
(** **)
|
||
|
(** BOOL_TEMP0:=BOOL_IN0; **)
|
||
|
(* assign - Stmt *)
|
||
|
LD BOOL_IN0
|
||
|
ST BOOL_TEMP0
|
||
|
|
||
|
(** BOOL_TEMP1:=BOOL_IN1; **)
|
||
|
(* assign - Stmt *)
|
||
|
LD BOOL_IN1
|
||
|
ST BOOL_TEMP1
|
||
|
|
||
|
(** BOOL_TEMP2:=BOOL_IN2; **)
|
||
|
(* assign - Stmt *)
|
||
|
LD BOOL_IN2
|
||
|
ST BOOL_TEMP2
|
||
|
|
||
|
(** BOOL_TEMP3:=BOOL_IN3; **)
|
||
|
(* assign - Stmt *)
|
||
|
LD BOOL_IN3
|
||
|
ST BOOL_TEMP3
|
||
|
|
||
|
(** **)
|
||
|
(** {**********����ģʽʱ�����ͬ��������ģʽʱ������->���Ƶ���ͬ��*************} **)
|
||
|
(** if CM =0 then {*����ʱ��ֵ����ģʽ���أ�����CPUʱ��ֵΪ��ʱ����*} **)
|
||
|
(* if - Cond *)
|
||
|
LD CM
|
||
|
EQ 0
|
||
|
JMPCN ODK_SKIP_00000000000000B_000000000000001
|
||
|
|
||
|
(* then - Stmts *)
|
||
|
|
||
|
(** if REAL_IN0<>REAL_TEMP0 then {*����CPUȺ������--������/���ؿ���*} **)
|
||
|
(* if - Cond *)
|
||
|
LD REAL_IN0
|
||
|
NE REAL_TEMP0
|
||
|
JMPCN ODK_SKIP_00000000000000C_000000000000001
|
||
|
|
||
|
(* then - Stmts *)
|
||
|
|
||
|
(** REAL_OUT0:=REAL_IN0; {*����Ⱥ��*} **)
|
||
|
(* assign - Stmt *)
|
||
|
LD REAL_IN0
|
||
|
ST REAL_OUT0
|
||
|
|
||
|
(** REAL_OUT1:=REAL_IN0; {*���ص���*} **)
|
||
|
(* assign - Stmt *)
|
||
|
LD REAL_IN0
|
||
|
ST REAL_OUT1
|
||
|
|
||
|
(** REAL_OUT2:=REAL_IN0; {*���Ƶ���*} **)
|
||
|
(* assign - Stmt *)
|
||
|
LD REAL_IN0
|
||
|
ST REAL_OUT2
|
||
|
|
||
|
JMP ODK_END_IF_00000000000000C
|
||
|
|
||
|
(** else {*���Ƶ���ʧЧ*} **)
|
||
|
(* else *)
|
||
|
ODK_SKIP_00000000000000C_000000000000001:
|
||
|
|
||
|
(* else - Stmts *)
|
||
|
|
||
|
(** REAL_OUT1:=REAL_IN1; **)
|
||
|
(* assign - Stmt *)
|
||
|
LD REAL_IN1
|
||
|
ST REAL_OUT1
|
||
|
|
||
|
(** REAL_OUT2:=REAL_IN1; **)
|
||
|
(* assign - Stmt *)
|
||
|
LD REAL_IN1
|
||
|
ST REAL_OUT2
|
||
|
|
||
|
(** end_if; **)
|
||
|
(* if - End *)
|
||
|
ODK_END_IF_00000000000000C:
|
||
|
|
||
|
JMP ODK_END_IF_00000000000000B
|
||
|
|
||
|
(** end_if; **)
|
||
|
(* if - End *)
|
||
|
ODK_SKIP_00000000000000B_000000000000001:
|
||
|
ODK_END_IF_00000000000000B:
|
||
|
|
||
|
(** **)
|
||
|
(** if CM =1 then **)
|
||
|
(* if - Cond *)
|
||
|
LD CM
|
||
|
EQ 1
|
||
|
JMPCN ODK_SKIP_00000000000000D_000000000000001
|
||
|
|
||
|
(* then - Stmts *)
|
||
|
|
||
|
(** if RM=2 then **)
|
||
|
(* if - Cond *)
|
||
|
LD RM
|
||
|
EQ 2
|
||
|
JMPCN ODK_SKIP_00000000000000E_000000000000001
|
||
|
|
||
|
(* then - Stmts *)
|
||
|
|
||
|
(** {*���Ƶ��ء�--�����ص���*} **)
|
||
|
(** if REAL_IN1<>REAL_TEMP1 then {*���Ƶ��ء�-- ���ص���*} **)
|
||
|
(* if - Cond *)
|
||
|
LD REAL_IN1
|
||
|
NE REAL_TEMP1
|
||
|
JMPCN ODK_SKIP_00000000000000F_000000000000001
|
||
|
|
||
|
(* then - Stmts *)
|
||
|
|
||
|
(** REAL_OUT1:=REAL_IN1; **)
|
||
|
(* assign - Stmt *)
|
||
|
LD REAL_IN1
|
||
|
ST REAL_OUT1
|
||
|
|
||
|
(** REAL_OUT2:=REAL_IN1; **)
|
||
|
(* assign - Stmt *)
|
||
|
LD REAL_IN1
|
||
|
ST REAL_OUT2
|
||
|
|
||
|
JMP ODK_END_IF_00000000000000F
|
||
|
|
||
|
(** elsif REAL_IN2<>REAL_TEMP2 then {*���Ƶ��� --�����ص���*} **)
|
||
|
(* elseif - Cond *)
|
||
|
ODK_SKIP_00000000000000F_000000000000001:
|
||
|
LD REAL_IN2
|
||
|
NE REAL_TEMP2
|
||
|
JMPCN ODK_SKIP_00000000000000F_000000000000002
|
||
|
|
||
|
(* elsif - Stmts *)
|
||
|
|
||
|
(** REAL_OUT1:=REAL_IN2; **)
|
||
|
(* assign - Stmt *)
|
||
|
LD REAL_IN2
|
||
|
ST REAL_OUT1
|
||
|
|
||
|
(** REAL_OUT2:=REAL_IN2; **)
|
||
|
(* assign - Stmt *)
|
||
|
LD REAL_IN2
|
||
|
ST REAL_OUT2
|
||
|
|
||
|
JMP ODK_END_IF_00000000000000F
|
||
|
|
||
|
(** end_if; **)
|
||
|
(* if - End *)
|
||
|
ODK_SKIP_00000000000000F_000000000000002:
|
||
|
ODK_END_IF_00000000000000F:
|
||
|
|
||
|
JMP ODK_END_IF_00000000000000E
|
||
|
|
||
|
(** else **)
|
||
|
(* else *)
|
||
|
ODK_SKIP_00000000000000E_000000000000001:
|
||
|
|
||
|
(* else - Stmts *)
|
||
|
|
||
|
(** if REAL_IN0<>REAL_TEMP0 then {*����CPUȺ������--������/���ؿ���*} **)
|
||
|
(* if - Cond *)
|
||
|
LD REAL_IN0
|
||
|
NE REAL_TEMP0
|
||
|
JMPCN ODK_SKIP_00000000000000G_000000000000001
|
||
|
|
||
|
(* then - Stmts *)
|
||
|
|
||
|
(** REAL_OUT0:=REAL_IN0; {*����Ⱥ��*} **)
|
||
|
(* assign - Stmt *)
|
||
|
LD REAL_IN0
|
||
|
ST REAL_OUT0
|
||
|
|
||
|
(** REAL_OUT1:=REAL_IN0; {*���ص���*} **)
|
||
|
(* assign - Stmt *)
|
||
|
LD REAL_IN0
|
||
|
ST REAL_OUT1
|
||
|
|
||
|
(** REAL_OUT2:=REAL_IN0; {*���Ƶ���*} **)
|
||
|
(* assign - Stmt *)
|
||
|
LD REAL_IN0
|
||
|
ST REAL_OUT2
|
||
|
|
||
|
JMP ODK_END_IF_00000000000000G
|
||
|
|
||
|
(** end_if; **)
|
||
|
(* if - End *)
|
||
|
ODK_SKIP_00000000000000G_000000000000001:
|
||
|
ODK_END_IF_00000000000000G:
|
||
|
|
||
|
(** {*���Ƶ��ء�--�����ص���*} **)
|
||
|
(** if REAL_IN1<>REAL_TEMP1 then {*���Ƶ��ء�-- ���ص���*} **)
|
||
|
(* if - Cond *)
|
||
|
LD REAL_IN1
|
||
|
NE REAL_TEMP1
|
||
|
JMPCN ODK_SKIP_00000000000000H_000000000000001
|
||
|
|
||
|
(* then - Stmts *)
|
||
|
|
||
|
(** REAL_OUT1:=REAL_IN1; **)
|
||
|
(* assign - Stmt *)
|
||
|
LD REAL_IN1
|
||
|
ST REAL_OUT1
|
||
|
|
||
|
(** REAL_OUT2:=REAL_IN1; **)
|
||
|
(* assign - Stmt *)
|
||
|
LD REAL_IN1
|
||
|
ST REAL_OUT2
|
||
|
|
||
|
JMP ODK_END_IF_00000000000000H
|
||
|
|
||
|
(** elsif REAL_IN2<>REAL_TEMP2 then {*���Ƶ��� --�����ص���*} **)
|
||
|
(* elseif - Cond *)
|
||
|
ODK_SKIP_00000000000000H_000000000000001:
|
||
|
LD REAL_IN2
|
||
|
NE REAL_TEMP2
|
||
|
JMPCN ODK_SKIP_00000000000000H_000000000000002
|
||
|
|
||
|
(* elsif - Stmts *)
|
||
|
|
||
|
(** REAL_OUT1:=REAL_IN2; **)
|
||
|
(* assign - Stmt *)
|
||
|
LD REAL_IN2
|
||
|
ST REAL_OUT1
|
||
|
|
||
|
(** REAL_OUT2:=REAL_IN2; **)
|
||
|
(* assign - Stmt *)
|
||
|
LD REAL_IN2
|
||
|
ST REAL_OUT2
|
||
|
|
||
|
JMP ODK_END_IF_00000000000000H
|
||
|
|
||
|
(** end_if; **)
|
||
|
(* if - End *)
|
||
|
ODK_SKIP_00000000000000H_000000000000002:
|
||
|
ODK_END_IF_00000000000000H:
|
||
|
|
||
|
(** end_if; **)
|
||
|
(* if - End *)
|
||
|
ODK_END_IF_00000000000000E:
|
||
|
|
||
|
JMP ODK_END_IF_00000000000000D
|
||
|
|
||
|
(** end_if; **)
|
||
|
(* if - End *)
|
||
|
ODK_SKIP_00000000000000D_000000000000001:
|
||
|
ODK_END_IF_00000000000000D:
|
||
|
|
||
|
(** **)
|
||
|
(** REAL_TEMP0:=REAL_IN0; **)
|
||
|
(* assign - Stmt *)
|
||
|
LD REAL_IN0
|
||
|
ST REAL_TEMP0
|
||
|
|
||
|
(** REAL_TEMP1:=REAL_IN1; **)
|
||
|
(* assign - Stmt *)
|
||
|
LD REAL_IN1
|
||
|
ST REAL_TEMP1
|
||
|
|
||
|
(** REAL_TEMP2:=REAL_IN2; **)
|
||
|
(* assign - Stmt *)
|
||
|
LD REAL_IN2
|
||
|
ST REAL_TEMP2
|
||
|
|
||
|
(** **)
|
||
|
(** {**********����ģʽʱ�����ͬ��������ģʽʱ������->���Ƶ���ͬ��*************} **)
|
||
|
(** if CM =0 then {*����ʱ��ֵ����ģʽ���أ�����CPUʱ��ֵΪ��ʱ����*} **)
|
||
|
(* if - Cond *)
|
||
|
LD CM
|
||
|
EQ 0
|
||
|
JMPCN ODK_SKIP_00000000000000I_000000000000001
|
||
|
|
||
|
(* then - Stmts *)
|
||
|
|
||
|
(** if INT_IN0<>INT_TEMP0 then {*����CPUȺ������--������/���ؿ���*} **)
|
||
|
(* if - Cond *)
|
||
|
LD INT_IN0
|
||
|
NE INT_TEMP0
|
||
|
JMPCN ODK_SKIP_00000000000000J_000000000000001
|
||
|
|
||
|
(* then - Stmts *)
|
||
|
|
||
|
(** INT_OUT0:=INT_IN0; {*����Ⱥ��*} **)
|
||
|
(* assign - Stmt *)
|
||
|
LD INT_IN0
|
||
|
ST INT_OUT0
|
||
|
|
||
|
(** INT_OUT1:=INT_IN0; {*���ص���*} **)
|
||
|
(* assign - Stmt *)
|
||
|
LD INT_IN0
|
||
|
ST INT_OUT1
|
||
|
|
||
|
(** INT_OUT2:=INT_IN0; {*���Ƶ���*} **)
|
||
|
(* assign - Stmt *)
|
||
|
LD INT_IN0
|
||
|
ST INT_OUT2
|
||
|
|
||
|
JMP ODK_END_IF_00000000000000J
|
||
|
|
||
|
(** else {*���Ƶ���ʧЧ*} **)
|
||
|
(* else *)
|
||
|
ODK_SKIP_00000000000000J_000000000000001:
|
||
|
|
||
|
(* else - Stmts *)
|
||
|
|
||
|
(** INT_OUT1:=INT_IN1; **)
|
||
|
(* assign - Stmt *)
|
||
|
LD INT_IN1
|
||
|
ST INT_OUT1
|
||
|
|
||
|
(** INT_OUT2:=INT_IN1; **)
|
||
|
(* assign - Stmt *)
|
||
|
LD INT_IN1
|
||
|
ST INT_OUT2
|
||
|
|
||
|
(** end_if; **)
|
||
|
(* if - End *)
|
||
|
ODK_END_IF_00000000000000J:
|
||
|
|
||
|
JMP ODK_END_IF_00000000000000I
|
||
|
|
||
|
(** end_if; **)
|
||
|
(* if - End *)
|
||
|
ODK_SKIP_00000000000000I_000000000000001:
|
||
|
ODK_END_IF_00000000000000I:
|
||
|
|
||
|
(** **)
|
||
|
(** if CM =1 then **)
|
||
|
(* if - Cond *)
|
||
|
LD CM
|
||
|
EQ 1
|
||
|
JMPCN ODK_SKIP_00000000000000K_000000000000001
|
||
|
|
||
|
(* then - Stmts *)
|
||
|
|
||
|
(** if RM=2 then **)
|
||
|
(* if - Cond *)
|
||
|
LD RM
|
||
|
EQ 2
|
||
|
JMPCN ODK_SKIP_00000000000000L_000000000000001
|
||
|
|
||
|
(* then - Stmts *)
|
||
|
|
||
|
(** {*���Ƶ��ء�--�����ص���*} **)
|
||
|
(** if INT_IN1<>INT_TEMP1 then {*���Ƶ��ء�-- ���ص���*} **)
|
||
|
(* if - Cond *)
|
||
|
LD INT_IN1
|
||
|
NE INT_TEMP1
|
||
|
JMPCN ODK_SKIP_00000000000000M_000000000000001
|
||
|
|
||
|
(* then - Stmts *)
|
||
|
|
||
|
(** INT_OUT1:=INT_IN1; **)
|
||
|
(* assign - Stmt *)
|
||
|
LD INT_IN1
|
||
|
ST INT_OUT1
|
||
|
|
||
|
(** INT_OUT2:=INT_IN1; **)
|
||
|
(* assign - Stmt *)
|
||
|
LD INT_IN1
|
||
|
ST INT_OUT2
|
||
|
|
||
|
JMP ODK_END_IF_00000000000000M
|
||
|
|
||
|
(** elsif INT_IN2<>INT_TEMP2 then {*���Ƶ��� --�����ص���*} **)
|
||
|
(* elseif - Cond *)
|
||
|
ODK_SKIP_00000000000000M_000000000000001:
|
||
|
LD INT_IN2
|
||
|
NE INT_TEMP2
|
||
|
JMPCN ODK_SKIP_00000000000000M_000000000000002
|
||
|
|
||
|
(* elsif - Stmts *)
|
||
|
|
||
|
(** INT_OUT1:=INT_IN2; **)
|
||
|
(* assign - Stmt *)
|
||
|
LD INT_IN2
|
||
|
ST INT_OUT1
|
||
|
|
||
|
(** INT_OUT2:=INT_IN2; **)
|
||
|
(* assign - Stmt *)
|
||
|
LD INT_IN2
|
||
|
ST INT_OUT2
|
||
|
|
||
|
JMP ODK_END_IF_00000000000000M
|
||
|
|
||
|
(** end_if; **)
|
||
|
(* if - End *)
|
||
|
ODK_SKIP_00000000000000M_000000000000002:
|
||
|
ODK_END_IF_00000000000000M:
|
||
|
|
||
|
JMP ODK_END_IF_00000000000000L
|
||
|
|
||
|
(** else **)
|
||
|
(* else *)
|
||
|
ODK_SKIP_00000000000000L_000000000000001:
|
||
|
|
||
|
(* else - Stmts *)
|
||
|
|
||
|
(** if INT_IN0<>INT_TEMP0 then {*����CPUȺ������--������/���ؿ���*} **)
|
||
|
(* if - Cond *)
|
||
|
LD INT_IN0
|
||
|
NE INT_TEMP0
|
||
|
JMPCN ODK_SKIP_00000000000000N_000000000000001
|
||
|
|
||
|
(* then - Stmts *)
|
||
|
|
||
|
(** INT_OUT0:=INT_IN0; {*����Ⱥ��*} **)
|
||
|
(* assign - Stmt *)
|
||
|
LD INT_IN0
|
||
|
ST INT_OUT0
|
||
|
|
||
|
(** INT_OUT1:=INT_IN0; {*���ص���*} **)
|
||
|
(* assign - Stmt *)
|
||
|
LD INT_IN0
|
||
|
ST INT_OUT1
|
||
|
|
||
|
(** INT_OUT2:=INT_IN0; {*���Ƶ���*} **)
|
||
|
(* assign - Stmt *)
|
||
|
LD INT_IN0
|
||
|
ST INT_OUT2
|
||
|
|
||
|
JMP ODK_END_IF_00000000000000N
|
||
|
|
||
|
(** end_if; **)
|
||
|
(* if - End *)
|
||
|
ODK_SKIP_00000000000000N_000000000000001:
|
||
|
ODK_END_IF_00000000000000N:
|
||
|
|
||
|
(** {*���Ƶ��ء�--�����ص���*} **)
|
||
|
(** if INT_IN1<>INT_TEMP1 then {*���Ƶ��ء�-- ���ص���*} **)
|
||
|
(* if - Cond *)
|
||
|
LD INT_IN1
|
||
|
NE INT_TEMP1
|
||
|
JMPCN ODK_SKIP_00000000000000O_000000000000001
|
||
|
|
||
|
(* then - Stmts *)
|
||
|
|
||
|
(** INT_OUT1:=INT_IN1; **)
|
||
|
(* assign - Stmt *)
|
||
|
LD INT_IN1
|
||
|
ST INT_OUT1
|
||
|
|
||
|
(** INT_OUT2:=INT_IN1; **)
|
||
|
(* assign - Stmt *)
|
||
|
LD INT_IN1
|
||
|
ST INT_OUT2
|
||
|
|
||
|
JMP ODK_END_IF_00000000000000O
|
||
|
|
||
|
(** elsif INT_IN2<>INT_TEMP2 then {*���Ƶ��� --�����ص���*} **)
|
||
|
(* elseif - Cond *)
|
||
|
ODK_SKIP_00000000000000O_000000000000001:
|
||
|
LD INT_IN2
|
||
|
NE INT_TEMP2
|
||
|
JMPCN ODK_SKIP_00000000000000O_000000000000002
|
||
|
|
||
|
(* elsif - Stmts *)
|
||
|
|
||
|
(** INT_OUT1:=INT_IN2; **)
|
||
|
(* assign - Stmt *)
|
||
|
LD INT_IN2
|
||
|
ST INT_OUT1
|
||
|
|
||
|
(** INT_OUT2:=INT_IN2; **)
|
||
|
(* assign - Stmt *)
|
||
|
LD INT_IN2
|
||
|
ST INT_OUT2
|
||
|
|
||
|
JMP ODK_END_IF_00000000000000O
|
||
|
|
||
|
(** end_if; **)
|
||
|
(* if - End *)
|
||
|
ODK_SKIP_00000000000000O_000000000000002:
|
||
|
ODK_END_IF_00000000000000O:
|
||
|
|
||
|
(** end_if; **)
|
||
|
(* if - End *)
|
||
|
ODK_END_IF_00000000000000L:
|
||
|
|
||
|
JMP ODK_END_IF_00000000000000K
|
||
|
|
||
|
(** end_if; **)
|
||
|
(* if - End *)
|
||
|
ODK_SKIP_00000000000000K_000000000000001:
|
||
|
ODK_END_IF_00000000000000K:
|
||
|
|
||
|
(** **)
|
||
|
(** INT_TEMP0:=INT_IN0; **)
|
||
|
(* assign - Stmt *)
|
||
|
LD INT_IN0
|
||
|
ST INT_TEMP0
|
||
|
|
||
|
(** INT_TEMP1:=INT_IN1; **)
|
||
|
(* assign - Stmt *)
|
||
|
LD INT_IN1
|
||
|
ST INT_TEMP1
|
||
|
|
||
|
(** INT_TEMP2:=INT_IN2; **)
|
||
|
(* assign - Stmt *)
|
||
|
LD INT_IN2
|
||
|
ST INT_TEMP2
|
||
|
|
||
|
(** **)
|
||
|
|
||
|
END_FUNCTION_BLOCK
|