Adr_Of_Var

Renvoyer l’adresse d’entrée ou de sortie

Cette fonction renvoie l’adresse d’une variable à l’entrée ou la sortie d’une instruction système non surchargée.

Paramètres

Entrée

Unnamed input (ANY)

Cette broche doit être connectée à l’entrée/la sortie d’une fonction de base pour laquelle le type de données INT, WORD est autorisé.

Livre l’adresse de départ de 16 bits des variables d’entrée/de sortie

Sortie

Unnamed output (ANY_IN_UNITS_OF_WORDS)

Variable d’entrée/de sortie pour laquelle l’adresse de départ de 16 bits est nécessaire

Remarques

  • L’adresse de départ de 16 bits est générée en entrée/sortie Adr à partir des variables d’entrée/sortie Var. Cette entrée/sortie doit être directement connectée à l’entrée ou la sortie de 16 bits d’une instruction système non surchargée.

  • Pour les éditeurs LD et FBD uniquement : Utilisez Instruction d’entrée ou Instruction de sortie à partir du volet Instructions pour insérer l’instruction requise dans la fenêtre de programmation.

Exemple

DUT

Un type de données structurées est affecté dans DUT. Dans ce DUT, seules les variables non booléennes sont déclarées.

En-tête du POU

Toutes les variables d’entrée et de sortie utilisées pour programmer cette fonction ont été déclarées dans l’en-tête du POU.Le même en-tête de POU est utilisé pour tous les langages de programmation.

	VAR
		start: BOOL:=FALSE;
		DutNonBoolean: @'Dut_NonBoolean';
	END_VAR

La variable DutNonBoolean du type de données affecté dans le DUT ci-dessus est déclarée. Les valeurs n’ont pas été affectées aux éléments de la variable DutNonBoolean dans l’en-tête ou le corps du POU car les valeurs de la variable DutNonBoolean sont écrasées après exécution de la fonction F12_ICRD.

La fonction F12_ICRD est exécutée lorsque la variable start est sur TRUE. La fonction lit les valeurs sur la carte CI à partir de l’adresse 100 et écrit les informations dans la variable DutNonBoolean. La carte CI doit être formatée correctement via le menu En ligne > Gestionnaire de cartes mémoire CI... et si nécessaire, les valeurs à partir de l’adresse 100 doivent être disponibles sur la carte CI.

Corps en LD

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

Autres exemples de projets (répertoire "Samples" dans le répertoire d’installation de FPWIN Pro) :

  • Read, write IC card

  • Read, write shared memory

Modifié le : 2023-03-10Commentaires sur cette pageAssistance téléphonique