DATA: NOP
0; //Evaluación de los datos (primera selección; respuesta positiva o negativa)
L
#MVLK_Resp.ResponseId;
L
B#16#40; //¿respuesta positiva de MoviLink?
==I
;
SPB
POSR; //saltar a la respuesta positiva
L
#MVLK_Resp.ResponseId;
L
B#16#C0; //¿respuesta negativa de MoviLink?
==I
;
SPB
NEGR; //saltar a la respuesta negativa
SET
; //Respuesta Movilink no permitida
S
#fDone;
R
#fBusy;
R
#fStaticBusy;
R
#fDPV1WRITEDone;
L
3; //Fallo Movilink
T
#bError;
L
DW#16#502; //MLER_NO_RESPONSE
T
#dwData;
L
0;
T
#TimeoutCounter; //Resetear el Timeoutcounter
BEA
; //Finalizar la función
TOUT: NOP
0; //Tiempo de desbordamiento
L
2; //Fallo Movilink
T
#bError;
L
0;
T
#dwData;
T
#TimeoutCounter; //Resetear el Timeoutcounter
SET
; //La función ha finalizado:
S
#fDone; //=> Activar Done,..resetear Busy
R
#fActivate;
R
#fBusy;
R
#fStaticBusy;
R
#fDPV1WRITEDone;
BEA
;
NETWORK
TITLE =Evaluación de los datos de parámetros
POSR: NOP
0;
U
#fStaticWRITEReq;
SPB
WRR; //saltar a WRITERequestResponse
// //READRequest ha sido efectuado
L
#MVLK_Resp.Attachment[2]; //Datos recibidos se escriben en parámetros de salida
SLD
24;
L
#MVLK_Resp.Attachment[3];
SLD
16;
+D
;
L
#MVLK_Resp.Attachment[4];
SLD
8;
+D
;
L
#MVLK_Resp.Attachment[5];
+D
;
T
#dwData;
L
0; //Sin fallo
T
#bError;
SET
; //La función ha finalizado:
S
#fDone; //=> Activar Done, resetear fActiveate...
R
#fActivate;
R
#fBusy;
R
#fStaticBusy;
R
#fDPV1WRITEDone;
L
0;
T
#TimeoutCounter; //Resetear el Timeoutcounter
BEA
;
WRR:
NOP
0;
// //WRITERequest ha sido efectuado
L
0; //Parámetro de salida se llena de CEROS
T
#dwData;
L
0; //Sin fallo
T
#bError;
SET
; //Borra bits de fallo
S
#fDone;
R
#fActivate;
R
#fBusy;
R
#fStaticBusy;
R
#fDPV1WRITEDone;
L
0;
T
#TimeoutCounter; //Resetear el Timeoutcounter
BEA
;
Handboek – Veldbusinterface DFS11B PROFIBUS DP-V1 met PROFIsafe
Funciones de PROFIBUS DP-V1
Planificación del proyecto de un maestro C1
I
9
0 0
107