Liefert die Adresse einer Ein-/Ausgangsvariable
Diese Funktion liefert die Adresse einer Variablen am Ein-/Ausgang einer FP-Funktion.
Eingang
Dieser Pin muss am Ein-/Ausgang einer FP-Funktion angeschlossen sein, an dem der Typ INT, WORD zulässig ist.
Liefert 16-Bit-Anfangsadresse der Ein-/Ausgangsvariablen
Ausgang
Ausgangsvariable, von der die 16-Bit-Endadresse benötigt wird
Von der Variablen am Ein-/Ausgang Var wird am Ein-/Ausgang AdrLast die 16-Bit-Endadresse erzeugt. Dieser Ein- oder Ausgang muss unmittelbar an einem 16-Bit-Ein- oder -Ausgang einer FP-Funktion angeschlossen sein.
Nur für KOP- und FBS-Editoren: Wählen Sie im Fenster “Befehle” die Option “Eingangsbefehl” oder “Ausgangsbefehl”, um den erforderlichen Befehl in das Programmierfenster einzufügen.
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
start: BOOL:=FALSE;
data_field: ARRAY [0..5] OF INT:=[6(111)];
END_VAR
Wenn die Variable start auf TRUE gesetzt wird, wird die Funktion ausgeführt. Sie kopiert den Wert 100 in alle Elemente des Datenfelds. D.h. alle sechs Elemente von data_field enthalten den Wert 100.
BODY
WORKSPACE
NETWORK_LIST_TYPE := NWTYPELD ;
ACTIVE_NETWORK := 0 ;
END_WORKSPACE
NET_WORK
NETWORK_TYPE := NWTYPELD ;
NETWORK_LABEL := ;
NETWORK_TITLE := ;
NETWORK_HEIGHT := 8 ;
NETWORK_BODY
B(B_COMMENT,,Initialization of all data fields with the values,2,0,22,1,);
B(B_F,F11_COPY!,Instance,5,2,12,7,,?DEN?Ds?AENO?Cd1_Start?Cd2_End);
B(B_VARIN,,start,3,3,5,5,);
B(B_VARIN,,100,3,4,5,6,);
B(B_F,AdrLast_Of_Var_O!,Instance,14,6,24,8,,?D?C);
B(B_VAROUT,,data_field,24,6,26,8,);
B(B_F,Adr_Of_Var_O!,Instance,14,4,22,6,,?D?C);
B(B_VAROUT,,data_field,22,4,24,6,);
L(12,5,14,5);
L(12,6,12,7);
L(12,7,14,7);
L(1,0,1,8);
END_NETWORK_BODY
END_NET_WORK
END_BODY
Siehe auch Beispiel von Beispiel: