Questa keyword permette di definire una variabile di tipo STRU_COERRMSG (STRUCT_P).
Questa variabile viene utilizzata dall'istruzione co_rerr() per la gestione dei messaggi CanOpen.
E' composta dalle seguenti informazioni:
Campo |
Tipo |
Descrizione |
---|---|---|
errCode |
U16 |
emergency error code () |
errReg |
U8 |
error register |
mse[5] |
U8 |
manufacturer specific error field byte 1,2,3,4,5 |
Esempi
Esempio di definizione:
; definizione della variabile analisiCan di tipo STRU_COERRMSG STRU_COERRMSG analisiCan |
Esempio di utilizzo:
; utilizzo dei dati contenuti nella struttura ; definizione della variabile analisiCan di tipo STRU_COERRMSG STRU_COERRMSG analisiCan ; definisco una struttura "MIA_STRUCT" di tipo STRUCT_P STRUCT_P MIA_STRUCT U16 codice_emg U8 reg_errore U8 errore_spec[5] END_STRUCT ; definisco la variabile can_err di tipo MIA_STRUCT MIA_STRUCT can_err ; definisco la variabile reso e la variabile can_wks I32 reso I32 can_wks ; leggo le informazioni sull'eventuale allarme della stazione can can_wks = 1 reso = co_rerr(can_wks, analisiCan) ; trasferisco i contenuto dei campi della struttura analisiCan ; nella struttura can_err move_byte(analisiCan, can_err, SIZEOF(can_err)) ; eseguo delle operazioni sui dati letti if (can_err.codice_emg = 0x1000) sr(1) = "ERRORE GENERICO" endif |
Qui di seguito sono riportate le specifiche CiA Draft Standard: |