[TABLE="class: title, width: 100%"]
[TR]
[TD]PUT: Daten in eine remote CPU schreiben[/TD]
[TD="align: right"]
[/TD]
[/TR]
[/TABLE]
Beschreibung
Mit der Anweisung "PUT" können Sie Daten in eine remote CPU schreiben.
Bei einer positiven Flanke am Steuereingang REQ wird die Anweisung gestartet:
- Dabei werden die Zeiger auf die zu schreibenden Bereiche (ADDR_i) und die Daten (SD_i) an die Partner-CPU gesendet. Die Partner-CPU kann sich im Betriebszustand RUN oder STOP befinden.
- Die zu sendenden Daten werden aus den projektierten Sendebereichen (SD_i) kopiert. Die Partner-CPU legt die gesendeten Daten unter den mitgeführten Adressen ab und sendet eine Ausführungsquittung zurück.
- Falls keine Fehler auftraten, wird dies beim nächsten Anweisungs-Aufruf am Zustandsparameter DONE mit "1" angezeigt. Eine erneute Aktivierung eines Schreibvorgangs ist erst nach dem Abschluss des letzten möglich.
Wenn beim Schreiben der Daten Zugriffsprobleme auftraten, oder die Prüfung der Ausführungsquittung einen Fehler ergab, werden Fehler und Warnungen über ERROR und STATUS ausgegeben.
Voraussetzungen zur Verwendung der Anweisung
- In den Eigenschaften der Partner-CPU wurde unter "Schutz" die Funktion "Zugriff über PUT/GET-Kommunikation durch entfernten Partner erlauben" aktiviert.
- Die Bausteine, auf die Sie mit der Anweisung "PUT" zugreifen, wurden mit der Zugriffsart "standard" erstellt.
- Sie müssen darauf achten, dass die über die Parameter ADDR_i und SD_i definierten Bereiche in der Anzahl, in der Länge und im Datentyp zueinanderpassen.
- Der zu schreibende Bereich (Parameter ADDR_i) muss so groß sein, wie der Sendebereich (Parameter SD_i).
Parameter
Die folgende Tabelle zeigt die Parameter der Anweisung "PUT":
[TABLE="class: table_default"]
[TR]
[TH] Parameter[/TH]
[TH] Deklaration[/TH]
[TH] Datentyp[/TH]
[TH] Speicherbereich[/TH]
[TH] Beschreibung[/TH]
[/TR]
[TR]
[TD] REQ[/TD]
[TD] Input[/TD]
[TD] BOOL[/TD]
[TD] E, A, M, D, L oder Konstante[/TD]
[TD] Steuerparameter request, aktiviert den Datenaustausch bei steigender Flanke.[/TD]
[/TR]
[TR]
[TD] ID[/TD]
[TD] Input[/TD]
[TD] WORD[/TD]
[TD] E, A, M, D, L oder Konstante[/TD]
[TD] Adressierungsparameter zur Angabe der Verbindung zu der Partner-CPU.[/TD]
[/TR]
[TR]
[TD] DONE[/TD]
[TD] Output[/TD]
[TD] BOOL[/TD]
[TD] E, A, M, D, L[/TD]
[TD] Zustandsparameter DONE:
- 0: Auftrag wurde noch nicht gestartet oder wird noch ausgeführt
- 1: Auftrag wurde fehlerfrei ausgeführt.
[/TD]
[/TR]
[TR]
[TD] ERROR[/TD]
[TD] Output[/TD]
[TD] BOOL[/TD]
[TD] E, A, M, D, L[/TD]
[TD] Zustandsparameter ERROR und STATUS, Fehleranzeige:
- ERROR=0
STATUS hat den Wert:
- 0000H: weder Warnung noch Fehler
- <> 0000H: Warnung, STATUS liefert detaillierte Auskunft.
- ERROR=1
Es liegt ein Fehler vor. STATUS liefert detaillierte Auskunft über die Art des Fehlers.
[/TD]
[/TR]
[TR]
[TD] STATUS[/TD]
[TD] Output[/TD]
[TD] WORD[/TD]
[TD] E, A, M, D, L[/TD]
[/TR]
[TR]
[TD] ADDR_1[/TD]
[TD] InOut[/TD]
[TD] REMOTE[/TD]
[TD] E, A, M, D[/TD]
[TD] Zeiger auf diejenigen Bereiche in der Partner-CPU, in die geschrieben werden soll.
Wenn der REMOTE-Zeiger auf einen DB zugreift, ist der DB immer zu spezifizieren.
Beispiel: P#DB10.DBX5.0 Byte 10.
Bei der Übertragung von Datenstrukturen (z. B. Struct) muss an den Parametern ADDR_i der Datentyp CHAR verwendet werden.[/TD]
[/TR]
[TR]
[TD] ADDR_2[/TD]
[TD] InOut[/TD]
[TD] REMOTE[/TD]
[/TR]
[TR]
[TD] ADDR_3[/TD]
[TD] InOut[/TD]
[TD] REMOTE[/TD]
[/TR]
[TR]
[TD] ADDR_4[/TD]
[TD] InOut[/TD]
[TD] REMOTE[/TD]
[/TR]
[TR]
[TD] SD_1[/TD]
[TD] InOut[/TD]
[TD] VARIANT[/TD]
[TD] E, A, M, D, L[/TD]
[TD] Zeiger auf diejenigen Bereiche in der eigenen CPU, die die zu versendenden Daten enthalten.
Zulässig sind nur die Datentypen BOOL, BYTE, CHAR, WORD, INT, DWORD, DINT, REAL.
Bei der Übertragung von Datenstrukturen (z. B. Struct) muss an den Parametern SD_i der Datentyp CHAR verwendet werden.[/TD]
[/TR]
[TR]
[TD] SD_2[/TD]
[TD] InOut[/TD]
[TD] VARIANT[/TD]
[/TR]
[TR]
[TD] SD_3[/TD]
[TD] InOut[/TD]
[TD] VARIANT[/TD]
[/TR]
[TR]
[TD] SD_4[/TD]
[TD] InOut[/TD]
[TD] VARIANT[/TD]
[/TR]
[/TABLE]
Weitere Informationen zu den gültigen Datentypen finden Sie unter "
Übersicht über die gültigen Datentypen".
Parameter ERROR und STATUS
Die folgende Tabelle enthält alle für die Anweisung "PUT" spezifischen Fehlerinformationen, die über die Parameter ERROR und STATUS ausgegeben werden können.