Adr_Of_Var

Liefert die Adresse einer Ein-/Ausgangsvariable

Diese Funktion liefert die Adresse einer Variablen am Ein-/Ausgang eines nicht-überladenen Systembefehls.

Parameter

Eingang

Unnamed input (ANY)

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

Unnamed output (ANY_IN_UNITS_OF_WORDS)

Ein-/Ausgangsvariable, von der die 16-Bit-Anfangsadresse benötigt wird

Anmerkungen

  • Von der Variablen am Ein-/Ausgang Var wird am Ein-/Ausgang Adr die 16-Bit-Anfangsadresse erzeugt. Dieser Ein-/Ausgang muss unmittelbar an einem 16-Bit-Ein- oder -Ausgang eines nicht-überladenen Systembefehls 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.

Beispiel

SDT

Unter SDT wird ein strukturierter Datentyp angelegt, in dem beliebige nicht boolesche Variablen der Struktur deklariert werden.

POE-Kopf

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;
		DutNonBoolean: @'Dut_NonBoolean';
	END_VAR

Hier wurde die Variable DutNonBoolean vom Typ des oben angelegten SDT deklariert. Die Belegung der Elemente der Variablen DutNonBoolean mit Werten wurde im POE-Kopf bzw. Rumpf nicht vorgenommen, da die Werte der Variablen DutNonBoolean nach Ausführung der Funktion F12_ICRD überschrieben werden.

Wenn die Variable start auf TRUE gesetzt wird, wird die Funktion F12_ICRD ausgeführt. Sie liest Werte auf der IC-Karte ab der Adresse 100 und schreibt die Information in die Variable DutNonBoolean. Beachten Sie, dass vorher die IC-Karte über das Menü Online > IC-Karten-Manager... entsprechend formatiert sein muss und ggf. Werte ab der Adresse 100 auf der IC-Karte vorhanden sein sollten.

KOP-Rumpf

BODY
    WORKSPACE
        NETWORK_LIST_TYPE := NWTYPELD ;
        ACTIVE_NETWORK := 0 ;
    END_WORKSPACE
    NET_WORK
        NETWORK_TYPE := NWTYPELD ;
        NETWORK_LABEL :=  ;
        NETWORK_TITLE :=  ;
        NETWORK_HEIGHT := 12 ;
        NETWORK_BODY
B(B_COMMENT,,It reads the values on the IC card from address 100 and writes theø^information to the variable DutNonBoolean,2,0,27,2,);
B(B_F,P12_ICRD!,Instance,9,2,17,7,,?DEN?Ds1_Start?Ds2_Number?AENO?Cd_Start);
B(B_VARIN,,start,7,3,9,5,);
B(B_VARIN,,100,7,4,9,6,);
B(B_VAROUT,,DutNonBoolean,26,4,28,6,);
B(B_F,Adr_Of_Var_O!,Instance,18,4,26,6,,?D?C);
B(B_F,Size_Of_Var!,Instance,10,10,17,12,,?D?C);
B(B_VARIN,,DutNonBoolean,8,10,10,12,);
B(B_F,INT_TO_DINT!,Instance,17,10,25,12,,?D?C);
L(17,5,18,5);
L(1,0,1,12);
L(7,6,9,6);
L(7,6,7,9);
L(7,9,26,9);
L(26,9,26,11);
L(25,11,26,11);
        END_NETWORK_BODY
    END_NET_WORK
END_BODY

Weitere Beispiel-Projekte befinden sich im Installationsverzeichnis von Control FPWIN Pro unter "Samples":

  • Read, write IC card

  • Read, write shared memory

Letzte Änderung: 2023-08-10Feedback zu dieser SeitePanasonic Hotline