La funzione riempie l'area di memoria definita dal parametro Buf con il dato definito nel parametro Ch. Il parametro Size definisce la dimensione dell'area da riempire. La funzione ritorna l'indirizzo dell'area di memoria da riempire.

Function
CODESYS: eCDSS8CoreMng
LogicLab: eLLabS8CoreMng, eLLabXUnified12Lib

Buf (@BYTE) Indirizzo area di memoria in cui trasferire il dato.

Ch (INT) Dato da trasferire.

Size (UDINT) Dimensione area di memoria da occupare

La funzione ritorna una variabile (@BYTE) con l'indirizzo dell'area di memoria in cui ha trasferito il dato. 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.
La funzione Sysmemset azzera il buffer Message, terminata l'esecuzione Result sarà settato con l'indirizzo del buffer.

LogicLab (Ptp116)
PROGRAM ST_Sysmemset
VAR
    Set : BOOL; (* Set command *)
    Result : UDINT; (* Function result *)
    Message: STRING[ 32 ]; (* Memory buffer *)
END_VAR

// *****************************************************************************
// PROGRAM "ST_Sysmemset"
// *****************************************************************************
// By setting the "Set" command the memory zeroed.
// -----------------------------------------------------------------------------

    IF (Set) THEN
        Set:=FALSE; //Set command
        Result:=Sysmemset(ADR(Message), 0, SIZEOF(Message));
    END_IF;

// [End of file]
CODESYS (Ptp163)

Ti è stato utile questo articolo ?

Ultimo aggiornamento: 19 Settembre 2019