Beschreibung der einzelnen DP-Funktionen und Daten sowie Fehlercodes
4.3.14 Beim CP 5614 als DP-Slave Daten empfangen
Integration in das Prozessabbild des CP 5613/CP 5614
Die Empfangsdaten des Slave-Moduls werden im Eingabeabbild mit dem Slave-
Index 127 abgelegt. Damit kann das Anwenderprogramm durch Lesen des Einga-
bedatenbereichs mit dem Slave-Index 127 die Daten lesen, die der übergeordnete
Master als Ausgänge zum Slave-Modul gesendet hat.
Beispiel für konsistentes Lesen
Es sei p ein Zeiger auf das Prozessabbild, den Ihr Anwenderprogramm beim
„DP_get_pointer"-Aufruf erhalten hat. Dann werden 200 Byte Empfangsdaten des
Slave-Moduls wie folgt in einen lokalen Puffer „buf" kopiert:
/* Sperren des Datenbereichs gegen Aktualisierung */
p->ctr.D_lock_in_slave_adr = 127;
/* Daten wegkopieren */
memcpy(buf, &p->pi.slave_in[127].data[0], 200);
/* Sperre wieder aufheben */
p->ctr.D_lock_in_slave_adr = DPR_DP_UNLOCK;
Die kopierten Daten sind die Empfangsdaten des Slave-Moduls, die der überge-
ordnete Master als Ausgänge gesendet hat.
Lesen ohne Konsistenz
Beim Lesen ohne Konsistenz lassen Sie das Sperren und Freigeben des Datenbe-
reichs einfach weg.
Allgemeine Hinweise
Hinweis
Die Daten sind nur gültig, wenn das Slave-Modul des CP 5614 im Zustand READY
und der Master, der den Slave steuert, im Zustand OPERATE ist.
Programmierschnittstelle DP-Base für CP 5613/CP 5614
C79000-G8900-C139-04
191