FFL (FIFO laden)
Die FFL-Anweisung lädt 8-Bit-, 16-Bit-, 32-Bit- oder 64-Bit-Daten in ein vom Benutzer erzeugtes Array namens FIFO-Stapel.
Details zum Betrieb: FFL-Anweisung – Änderungen von kein Ausführungsmodus bis Ausführungsmodus.
- Wenn Ausführung von FALSE auf TRUE wechselt:
- Fehlerbedingung wird überprüft.
- Der Inhalt von Src wird in den FIFO-Stapel in der verfügbaren Position geladen, und die Position erhöht sich um 1, wenn die Position kleiner oder gleich Null ist und weniger als die Länge beträgt.
- Full ist auf TRUE eingestellt, wenn die Länge der Position entspricht. Full ist FALSE, wenn die Position geringer als oder gleich Null und kleiner als die Länge ist.
- Done ist eingestellt, wenn die Anweisung erfolgreich ausgeführt wird.
- Wenn Ausführung von TRUE auf FALSE wechselt:
- Error, Done und ErrorID sind auf FALSE eingestellt.
- Empty ist auf TRUE eingestellt, wenn die Position Null entspricht.
- Full ist auf TRUE eingestellt, wenn die Länge der Position entspricht. Full ist FALSE, wenn die Position geringer als oder gleich Null und kleiner als die Länge ist.
- FFL-Fehlerbedingungen werden nicht überprüft.
- Wenn Ausführung von FALSE auf TRUE wechselt:
- Es wird kein Ladevorgang ausgeführt.
- Empty ist auf TRUE eingestellt, wenn die Position Null entspricht.
- Full ist auf FALSE eingestellt, wenn die Position geringer als oder gleich Null und kleiner als die Länge ist. Full ist auf TRUE eingestellt, wenn die Länge der Position entspricht.
- FFL-Fehlerbedingungen werden nicht überprüft.
- Wenn Ausführung von FALSE auf FALSE wechselt:
- Die Bits Error, Done und ErrorID sind auf FALSE eingestellt.
- Die Bits Full und Empty behalten Werte von vorherigen Ausführungszuständen bei.
- Empty ist auf TRUE eingestellt, wenn die Position Null entspricht.
- Full ist auf TRUE eingestellt, wenn die Länge der Position entspricht. Full ist FALSE, wenn die Position geringer als oder gleich Null und kleiner als die Länge ist.
- FFL-Fehlerbedingungen werden nicht überprüft.
- FFL-Anweisung - Ausführungsmodus bis kein Ausführungsmodus:
- Error, ErrorID, Done, Empty und Full behalten den Ausführungsmoduszustand bei.
- Zum Erstellen eines einzelnen Elements für den FIFO-Parameter:
- Nicht-Array:
- Variablenbasierte Adresse wie z. B. Fifo1 ist für FIFO zulässig.
- Länge sollte als 1 konfiguriert sein.
- Eindimensionales Array:
- Variablenbasierte Adresse wie z. B. Fifo1 oder Fifo1[0] ist für FIFO zulässig.
- Länge sollte als 1 konfiguriert sein.
Unterstützte Sprachen: Funktionsblockdiagramm, Kontaktplan und Strukturierter Text.
Diese Anweisung gilt für
Micro820
L20E-, Micro850
L50E- und Micro870
L70E-Controller.FFL

Parameter | Parametertyp | Datentyp | Beschreibung |
|---|---|---|---|
Execute | Eingang | BOOL | Anweisungsblock aktivieren.
|
Src | Eingang | ANY_ELEMENTARY | Der Src-Operand ist die Adresse des Werts, der zum Füllen der aktuell verfügbaren Position im FIFO-Stapel verwendet wird. Elementare Datentypen, die für Scr unterstützt werden:
|
FIFO | Eingang | ANY_ELEMENTARY | Die Startadresse des Stapels. FIFO muss für die Anweisungen FFL und FFU gleich konfiguriert sein. Elementare Datentypen, die für FIFO unterstützt werden: DWORD, REAL, TIME, DATE, LWORD, ULINT, LINT, LREAL, BOOL, SINT, USINT, BYTE, INT, UINT, WORD, DINT, UDINT.
|
FIFOCon | Eingang | FF_LF_CON | FIFO-Konfiguration und -Steuerung. Für FFL- und FFU-Anweisungen muss dieselbe Konfiguration konfiguriert werden. Verwenden Sie den Datentyp FF_LF_CON, um Position und Länge zu konfigurieren. |
Done | Ausgang | BOOL | Gibt an, wenn der FFU-Vorgang abgeschlossen ist.
|
Empty | Ausgang | BOOL | Gibt an, dass der FIFO-Stapel leer ist.
|
Full | Ausgang | BOOL | Gibt an, dass der FIFO-Stapel voll ist.
|
Error | Ausgang | BOOL | Zeigt das Vorhandensein eine Fehlerbedingung an.
|
ErrorID | Ausgang | USINT | Ein eindeutiger numerischer Wert, der den Fehler angibt. Die Fehler sind in FFL-Fehlercodes definiert. |
Parameter | Datentyp | Beschreibung |
|---|---|---|
Length | UINT | Anzahl der Elemente, die für den FIFO-Vorgang verwendet werden. Maximal 1024. |
Position | USINT | Bestimmt die nächste verfügbare Position im FIFO für den Src-Eintrag oder für das Entfernen. Die Position ist der Abstand des Arrays. Beispiel 1:
Beispiel 2:
|
Fehlercode | Fehlerbeschreibung |
|---|---|
0 | Kein Fehler. |
1 | FFL-Src-Datentyp wird nicht unterstützt. |
2 | FFU-Dest-Datentyp wird nicht unterstützt. |
3 | FIFO-Datentyp wird nicht unterstützt. |
4 | Src- und Dest-Datentyp stimmen nicht mit dem FIFO-Datentyp überein. Maßnahme: Datentyp des FFL Src-Parameters und des FFU Dest-Parameters müssen mit dem FIFO Array-Datentyp übereinstimmen. |
5 | FIFO: Array-Dimension wird nicht unterstützt. Maßnahme: FIFO unterstützt nur eindimensionale Arrays. |
6 | FIFOCon-Steuerlementlänge überschreitet FIFO-Arraygröße. Maßnahme: FIFOCon-Steuerlementlänge darf FIFO-Arraygröße nicht überschreiten. |
7 | FIFOCon-Länge überschreitet die maximale Länge. |
8 | FIFOCon-Länge ist 0. |
9 | FIFOCon-Position überschreitet die FIFOCon-Länge. |
10 | FFL-Steuerelementlänge ist gleich der Position. |
11 | FFU-Steuerelementposition ist 0. |
12 | FFL- oder FIFO-Array-Dimension wird nicht unterstützt. Maßnahme: FFL und FFU unterstützen nur eindimensionale Arrays. |
13 | FFL- oder FFU-DestOffset überschreitet Dest-Array-Größe. |
FFL-Beispiele
Beispiel für ein FFL-Funktionsblockdiagramm

Beispiel für einen FFL-Kontaktplan

Beispiel für strukturierten FFL-Text

Ergebnisse

Rückmeldung geben