发布于 2010-10-12 10:31:08
1楼
FUNCTION "CPU_LED_STAT" : VOID
TITLE =CPU Fault Indicator
AUTHOR : Zcy
FAMILY : TEST
VERSION : 1.0
VAR_TEMP
SSL_HEADER : STRUCT
LENTHDR : WORD ;
N_DR : WORD ;
END_STRUCT ;
T1 : WORD ;
T2 : WORD ;
END_VAR
BEGIN
NETWORK
TITLE = Read in CPU Status
CALL "RDSYSST" (
REQ := TRUE,
SZL_ID := W#16#19,
INDEX := W#16#0,
RET_VAL := "CPU_Status".RETVAL,
BUSY := "CPU_Status".BUSY,
SZL_HEADER := #SSL_HEADER,
DR := P#DB3.DBX0.0 BYTE 20);
NETWORK
TITLE = CPU on fault
A DB3.DBX 2.0;
A( ;
AN DB3.DBX 3.0;
AN DB3.DBX 3.1;
O ;
A DB3.DBX 3.0;
AN DB3.DBX 3.1;
A "Flash_Fast";
O ;
AN DB3.DBX 3.0;
A DB3.DBX 3.1;
A "Flash_Slow";
) ;
= "CPU_Status".SF;
NETWORK
TITLE = CPU is in run mode
A DB3.DBX 6.0;
A( ;
AN DB3.DBX 7.0;
AN DB3.DBX 7.1;
O ;
A DB3.DBX 7.0;
AN DB3.DBX 7.1;
A "Flash_Fast";
O ;
AN DB3.DBX 7.0;
A DB3.DBX 7.1;
A "Flash_Slow";
) ;
= "CPU_Status".RUN;
NETWORK
TITLE = CPU in force mode
A DB3.DBX 14.0;
A( ;
AN DB3.DBX 15.0;
AN DB3.DBX 15.1;
O ;
A DB3.DBX 15.0;
AN DB3.DBX 15.1;
A "Flash_Fast";
O ;
AN DB3.DBX 15.0;
A DB3.DBX 15.1;
A "Flash_Slow";
) ;
= "CPU_Status".FRCE;
NETWORK
TITLE = CPU bus fault
A DB3.DBX 18.0;
A( ;
AN DB3.DBX 19.0;
AN DB3.DBX 19.1;
O ;
A DB3.DBX 19.0;
AN DB3.DBX 19.1;
A "Flash_Fast";
O ;
AN DB3.DBX 19.0;
A DB3.DBX 19.1;
A "Flash_Slow";
) ;
= "CPU_Status".BF;
NETWORK
TITLE = End of FC - 3.
END_FUNCTION