Questa funzione copia l'area di memoria definita in Src nell'area di memoria definita in Dest per la dimensione definita in Size. Le due aree di memoria possono anche sovrapporsi.

Function
CODESYS: Non disponibile
LogicLab: eLLabXUnified12Lib

Dest (@BYTE) Indirizzo dell'area di memoria di destinazione.

Src (@BYTE) Indirizzo dell'area di memoria di origine.

Size (UDINT) Dimensione area di memoria da trasferire.

La funzione ritorna una variabile (@BYTE) con l'indirizzo dell'area di memoria di destinazione. In caso di errore viene ritornato NULL.

Errori

In caso di errore la funzione ritorna NULL, eseguendo immediatamente dopo la funzione SysGetLastError, è possibile rilevare il codice di errore. Fare riferimento alla tabella seguente per la descrizione.

Esempi

Come utilizzare gli esempi.
Settando da debug la variabile Move, la memoria Source sarà traferita in Destination.

LogicLab (Ptp116)
PROGRAM ST_Sysmemmove
VAR
    Move : BOOL; (* Move command *)
    i : UDINT; (* Auxiliary variable *)
    Source : ARRAY[ 0..15 ] OF BYTE; (* Source memory *)
    Destination : STRING[ 32 ]; (* Destination memory *)
END_VAR

// *****************************************************************************
// PROGRAM "ST_Sysmemmove"
// *****************************************************************************
// By setting the "Move" command the memory is moved
// -----------------------------------------------------------------------------

    IF (Move) THEN
        Move:=FALSE; //Move command
        i:=Sysmemmove(ADR(Destination), ADR(Source), SIZEOF(Source));
    END_IF;

// [End of file]

Ti è stato utile questo articolo ?

Ultimo aggiornamento: 19 Settembre 2019