MEMMOVE
Mit der Funktion MEMMOVE können Werte der SPS-Variablen von überlappenden Speicherbereichen kopiert werden.
FUNCTION MEMMOVE : UDINT
VAR_INPUT
destAddr : UDINT;
srcAddr : UDINT;
n : UDINT;
END_VAR
destAddr: Anfangsadresse des Ziel-Speicherbereichs.
srcAddr: Anfangsadresse des Quell-Speicherbereichs.
n: Anzahl der zu kopierenden Bytes.
Die Funktion kopiert n-Bytes ab dem Speicherbereich mit der Anfangsadresse srcAddr in den Speicherbereich mit der Anfangsadresse destAddr.
Rückgabeparameter | Bedeutung |
---|---|
0 | Falsche Parameterwerte. destAddr == 0 oder srcAddr==0 oder n == 0 |
> 0 | Bei Erfolg, die Anzahl der kopierten Bytes ( n ). |
Beispiel für einen Aufruf in FUP:
VAR
Buffer1 : ARRAY[0..3] OF BYTE;
Buffer2 : ARRAY[0..3] OF BYTE;
MoveResult : UDINT;
END_VAR
Im Beispiel werden 4 Byte vom Buffer2 nach Buffer1 verschoben.
Voraussetzungen
Entwicklungsumgebung | Zielplattform | Einzubindende SPS Bibliotheken |
---|---|---|
TwinCAT v2.8.0 Build > 737 | PC or CX (x86) | TcSystem.Lib |
TwinCAT v2.10.0 Build >= 1301 | CX (ARM) | TcSystem.Lib |