7
Instructions
Le module ST prend en charge les types d'instruction suivants :
•
Instructions de sélection (IF, CASE)
•
Instructions de répétition (FOR, WHILE, REPEAT)
7.1
Commandes de sélection
Une instruction de sélection exécute une instruction ou un ensemble d'instructions en fonction d'une
condition spécifiée.
Instruction IF
L'instruction IF spécifie qu'un ensemble d'instructions n'est exécuté que si l'expression booléenne asso-
ciée livre la valeur TRUE (vraie). Si la condition est fausse, aucune instruction ne peut être exécutée ou
le groupe d'instructions suivant le mot-clé ELSE (ou le mot-clé ELSIF si sa condition booléenne associée
est vraie) doit être exécuté.
Mots-clés :
IF, THEN, ELSIF, ELSE, END_IF
Exemple :
VAR
i : UINT;
END_VAR
IF reset_flag THEN
bool_out01 := FALSE;
bool_out02 := FALSE;
i := 1;
END_IF;
(* après remise à zéro, les sorties bool_out01 et bool_out02 sont réinitialisées et i
est réglé à 1 *)
IF i>0 AND i<=100 THEN
bool_out01 := TRUE;
bool_out02 := FALSE;
ELSIF i>100 AND i<=200 THEN
bool_out01 := FALSE;
bool_out02 := FALSE;
ELSE
i := 1;
bool_out01 := FALSE;
bool_out02 := FALSE;
END_IF;
(* de 1 à 100, la sortie bool_out01 est initialisée et bool_out02 est remis à zéro *)
(* de 101 à 200, la sortie bool_out01 est réinitialisée et bool_out02 réglé *)
(* pour 201 i est réglé à 1 et les sorties bool_out01 et bool_out02 sont réinitialisées
; tout recommence *)
i := i + 1;
(* i est incrémenté de 1 *)
7 Instructions
29