Funciones DP-V1
6
Apéndice
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; //vaya a respuesta positiva
L
#MVLK_Resp.ResponseId;
L
B#16#C0; //Respuesta negativa de MoviLink
==I
;
SPB
NEGR; //vaya a respuesta negativa
SET
; //Respuesta Movilink no permitida
S
#fDone;
R
#fBusy;
R
#fStaticBusy;
R
#fDPV1WriteDone;
L
3; //FalloMovilink
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; //FalloMovilink
T
#bError;
L
0;
T
#dwData;
T
#TimeoutCounter; //Resetear el Timeoutcounter
SET
; //La función está finalizada:
S
#fDone; //=> Activar Done,..resetear Busy
R
#fActivate;
R
#fBusy;
R
#fStaticBusy;
R
#fDPV1WriteDone;
BEA
;
NETWORK
TITLE =Evaluation of the parameter data
POSR: NOP
0;
U
#fStaticWriteReq;
SPB
WRR; //vaya 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 está finalizada:
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
;
50
Manual – Interface de bus de campo PROFIBUS DP-V1 UFP11A