Merker "Senden beendet" auswerten
Diese Funktion liefert den Wert des Merkers "Senden beendet". Der Merker "Senden beendet" wird auf TRUE gesetzt, wenn von der festgelegten Kommunikationsschnittstelle der SPS die angegebene Anzahl von Bytes gesendet wurde. Weitere Daten können gesendet oder empfangen werden. Jeder Sendebefehl setzt den Merker "Senden beendet" auf FALSE; es ist dann kein Datenempfang mehr möglich. Eine Auswertung des Merkers "Senden beendet" empfiehlt sich dann, wenn keine Antwort erwartet wird, z.B. bei Broadcast-Meldungen.
Eingang
Legt die Kommunikationsschnittstellen fest (je nach SPS-Typ):
COM-Schnittstelle z.B. SYS_COM0_PORT
Ethernet-Schnittstelle z.B. SYS_ETHERNET_USER_CONNECTION_1
MCU/SCU z.B. 16#xx01 (xx = Steckplatznummer) in COM01
Ausgang
TRUE, wenn das Endezeichen empfangen wurde. Das Endezeichen wird in den Systemregistern festgelegt:
Im POE-Kopf werden alle Ein- und Ausgangsvariablen deklariert, die für die Programmierung dieser Funktion verwendet werden. Für alle Programmiersprachen wird der gleiche POE-Kopf verwendet.
VAR
iPort: INT:=0;
bTransmissionIsDone: BOOL:=FALSE;
END_VAR
BODY
WORKSPACE
NETWORK_LIST_TYPE := NWTYPELD ;
ACTIVE_NETWORK := 0 ;
END_WORKSPACE
NET_WORK
NETWORK_TYPE := NWTYPELD ;
NETWORK_LABEL := ;
NETWORK_TITLE := ;
NETWORK_HEIGHT := 5 ;
NETWORK_BODY
B(B_F,IsTransmissionDone!,,6,1,16,4,,?DPort?CIsDone);
B(B_VARIN,,iPort,4,2,6,4,);
B(B_VAROUT,,bTransmissionIsDone,16,2,18,4,);
L(1,0,1,5);
END_NETWORK_BODY
END_NET_WORK
END_BODY
bTransmissionIsDone:=IsTransmissionDone(Port := iPort);