Files
HundM_awl/SCL-Export/=A01+UH07-KF00/Leerpuffer to Raus-Lager ermitteln.scl

46 lines
1.3 KiB
Plaintext

FUNCTION "Leerpuffer to Raus-Lager ermitteln" : Void
{ S7_Optimized_Access := 'FALSE' }
// Mechanische AWL->SCL-Konvertierung (awl2scl.py). Kontrollfluss per GOTO,
// wo im Original mit Sprungmarken gearbeitet wurde. Vor Uebernahme in TIA
// Portal pruefen/kompilieren (siehe SCL-Export/README.md).
VAR_INPUT
M199_7 : Bool; // war "M199.7"
MW220 : Word; // war "MW220"
END_VAR
VAR_OUTPUT
Puffer : Int; // Puffer ermitteln
END_VAR
VAR_IN_OUT
MB199 : Byte; // war "MB199"
END_VAR
VAR_TEMP
Puffer_ShopGroup : Int;
Position : Int;
Schleife : Int; // Loopzähler
Puffer_Zähler : Int;
Puffer_DW : Int;
AR1Zeiger : DWord; // Statt AR1 (ging nur bis DB-Länge <= 8191 Bytes)
AR1Start : DInt; // Startwert mit Offset 0
END_VAR
BEGIN
REGION Aktiver Puffer zum Ausfahren
#Puffer := 0;
END_REGION
REGION Aktiven Puffer zum Auslagern suchen ?
"DatenOut"(SSDB := 502, SSDW := 0, PARA := 16#F100, SEARCHDATEN := P#M220.0, RE_VAL := #MB199, OUTDATEN := P#M220.0, Position := #Position); // DL Puffer Leerpuffer ausfahren | 1.Eintrag lesen
IF NOT (#M199_7) THEN RETURN; END_IF;
#Puffer := #MW220;
END_REGION
REGION Ende
RETURN;
END_REGION
END_FUNCTION