Sysmemset, jeu de mémoire

Liste

Cette page fait partie de la Manuel de programmation CEI 61131-3. Aller à l'index.

La fonction remplit la zone mémoire définie par le paramètre Buf avec les données définies dans le paramètre Ch. Le paramètre Size définit la taille de la zone à remplir. La fonction renvoie l'adresse de la zone mémoire à remplir.

Cercle d'informations

Fonction

CODESYS : eCDSXUnified12Lib

LogicLab : eLLabXUnified12Lib

Description

Buf (@BYTE) Adresse de la zone mémoire dans laquelle transférer les données.
Ch (INT) Données à transférer.
Size (UDINT) Taille de la zone mémoire à occuper

La fonction retourne une variable (@BYTE) avec l'adresse de la zone mémoire où il a transféré les données. En cas d'erreur, il est retourné eNULL.

Image de la fonction Sysmemset

Exemples

Comment utiliser les exemples.
En activant la variable de debuf CSet la fonction Sysmemset réinitialiser le tampon Message, lorsque l'exécution est terminée Result il sera défini avec l'adresse du tampon.

LogicLab (Ptp116)
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]
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]
Cet article a-t-il été utile?