FFL (chargement FIFO)
L’instruction FFL charge des données 8 bits, 16 bits, 32 bits ou 64 bits dans un tableau unidimensionnel créé par l'utilisateur appelé une pile FIFO.
Détails de l'opération : L'instruction FFL passe du mode sans exécution au mode d'exécution.
- Lorsque l'exécution passe de FAUX à VRAI :
- Les conditions d'erreur sont vérifiées.
- Les contenus de Src sont chargés dans la pile FIFO dans la position disponible et la Position augmente par incréments de un si la Position est inférieure ou égale à zéro, et inférieure à la Longueur.
- Complet est défini sur VRAI si la Longueur est égale à la Position. Complet est FAUX si la Position est inférieure ou égale à zéro, et inférieure à la Longueur.
- Done est défini lorsque l'instruction s'exécute correctement.
- Lorsque l'exécution passe de VRAI à FAUX :
- Error, Done et ErrorID sont définis sur FALSE.
- Vide est défini sur VRAI si la Position est égale à zéro.
- Complet est défini sur VRAI si la Longueur est égale à la Position. Complet est FAUX si la Position est inférieure ou égale à zéro, et inférieure à la Longueur.
- Les conditions d'erreur FFL ne sont pas vérifiées.
- Lorsque l'exécution passe de VRAI à VRAI :
- Aucune opération de chargement n'est effectuée.
- Vide est défini sur VRAI si la Position est égale à zéro.
- Complet est défini sur FAUX si la Position est inférieure ou égale à zéro, et inférieure à la Longueur. Complet est défini sur VRAI si la Longueur est égale à la Position.
- Les conditions d'erreur FFL ne sont pas vérifiées.
- Lorsque l'exécution passe de FAUX à FAUX :
- Les bits Error, Done et ErrorID sont définis sur FALSE.
- Les bits Complet et Vide conservent les valeurs du précédent état d'exécution.
- Vide est défini sur VRAI si la Position est égale à zéro.
- Complet est défini sur VRAI si la Longueur est égale à la Position. Complet est FAUX si la Position est inférieure ou égale à zéro, et inférieure à la Longueur.
- Les conditions d'erreur FLL ne sont pas vérifiées.
- Instruction FFL - Mode d'exécution à mode sans exécution :
- Error, Done et ErrorID, Empty et Full conservent l'état du mode d'exécution.
- Pour créer un seul élément pour le paramètre FIFO :
- Non-tableau :
- Une adresse basée sur la variable (comme Fifo1) est autorisée pour FIFO.
- La longueur doit être définie sur 1.
- Tableau unidimensionnel :
- Une adresse basée sur la variable (comme Fifo1 ou Fifo1[0]) est autorisée pour FIFO.
- La longueur doit être définie sur 1.
Langages pris en charge : Diagramme de bloc de fonctions, diagramme de schéma à relais et texte structuré.
Cette instruction s'applique aux contrôleurs
Micro820
L20E, Micro850
L50E et Micro870
L70E.FFL

Paramètre | Type de paramètre | Type de données | Description |
|---|---|---|---|
Execute | Entrée | BOOL | Activation du bloc d'instruction.
|
Src | Entrée | ANY_ELEMENTARY | L'opérande Src est l'adresse de la valeur utilisée pour renseigner la position actuellement disponible dans la pile FIFO. Les types de données élémentaires pris en charge pour Scr sont les suivants :
|
FIFO | Entrée | ANY_ELEMENTARY | L'adresse de début de la pile. FIFO doit être configuré de la même façon pour les instructions FFL et FFU. Les types de données élémentaires pris en charge pour FIFO sont les suivants : DWORD, REAL, TIME, DATE, LWORD, ULINT, LINT, LREAL, BOOL, SINT, USINT, BYTE, INT, UINT, WORD, DINT, UDINT.
|
FIFOCon | Entrée | FF_LF_CON | Configuration et contrôle FIFO. La même configuration doit être définie pour les instructions FFL et FFU. Utilisez le type de données FF_LF_CON pour configurer la Position et la Longueur. |
Done | Sortie | BOOL | Indique quand l'opération FFU est terminée.
|
Empty | Sortie | BOOL | Indique quand la pile FIFO est vide.
|
Full | Sortie | BOOL | Indique quand la pile FIFO est complète.
|
Error | Sortie | BOOL | Indique l'existence d'une condition d'erreur.
|
ErrorID | Sortie | USINT | Valeur numérique unique permettant d'identifier l'erreur. Les erreurs sont définies dans les codes d'erreur FFL. |
Paramètre | Type de données | Description |
|---|---|---|
Length | UINT | Nombre d'éléments utilisés pour l'opération FIFO. La limite maximale est 1024. |
Position | USINT | Détermine le prochain emplacement disponible dans le FIFO pour l'entrée ou la suppression Src. La position est le décalage du tableau. Exemple 1 :
Exemple 2 :
|
Code d'erreur | Description de l'erreur |
|---|---|
0 | Aucune erreur. |
1 | Le type de données Src FFL n'est pas pris en charge. |
2 | Le type de données Dest FFU n'est pas pris en charge. |
3 | Le type de donnée FIFO n'est pas pris en charge. |
4 | Les types de données Src et Dest ne correspondent pas au type de données FIFO. Action corrective : Le type de données des paramètres FFL Src et FFU Dest doivent correspondre au type de données du tableau FIFO. |
5 | FIFO : La dimension du tableau n'est pas prise en charge. Action corrective : FIFO prend uniquement en charge les tableaux unidimensionnels. |
6 | La longueur de contrôle FIFOCon ne peut pas dépasser la taille du tableau FIFO. Action corrective : La longueur de contrôle FIFOCon ne peut dépasser la taille du tableau FIFO. |
7 | La longueur FIFOCon dépasse la longueur maximale. |
8 | La longueur FIFOCon est zéro. |
9 | La position FIFOCon dépasse la longueur FIFOCon. |
10 | La longueur de contrôle FFL et la position sont égales. |
11 | La position de contrôle FFU est zéro. |
12 | La dimension du tableau FFL ou FFU n'est pas prise en charge. Action corrective : FFL et FFU prennent uniquement en charge les tableaux unidimensionnels. |
13 | FFL ou FFU DestOffset dépasse la taille du tableau Dest. |
Exemples FFL
Exemple de diagramme de bloc de fonctions FFL

Exemple de schéma à relais FFL

Exemple de texte structuré FFL

Résultats

Fournir une réponse