Passa al contenuto principale

Sysmemset, memory set

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.

Descrizione​

Immagine funzione Sysmemset

ParametroTipoDescrizione
Buf@BYTEIndirizzo area di memoria in cui trasferire il dato.
ChINTDato da trasferire.
SizeUDINTDimensione area di memoria da occupare
OutPVOIDLa funzione ritorna una variabile (PVOID) con l'indirizzo dell'area di memoria in cui ha trasferito il dato. In caso di errore viene ritornato eNULL.

Esempi​

Come utilizzare gli esempi.
Attivando da debuf la variabile CSet la funzione Sysmemset azzera il buffer Message, terminata l'esecuzione Result sarà settato con l'indirizzo del buffer.

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

// *****************************************************************************
// PROGRAM "ST_Sysmemset"
// *****************************************************************************
// By setting the "CSet" command, the memory is zeroed.
// -----------------------------------------------------------------------------

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

// [End of file]

CODESYS (Ptp161)

PROGRAM ST_Sysmemset
VAR
CSet : 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 (CSet) THEN
CSet:=FALSE; //Set command
Result:=Sysmemset(ADR(Message), 0, SIZEOF(Message));
END_IF;

// [End of file]