Sysmemset, conjunto de memória

Lista

Esta página faz parte do Manual de Programação IEC 61131-3. Acesse o índice.

A função preenche a área de memória definida pelo parâmetro Buf com os dados definidos no parâmetro Ch. O parâmetro Size define o tamanho da área a ser preenchida. A função retorna o endereço da área de memória a ser preenchida.

Círculo de Informação

Função

CoDeSys: eCDSXUnified12Lib

Laboratório de lógica: eLLabXUnified12Lib

descrição

Buf (@BYTE) Endereço da área de memória na qual transferir os dados.
Ch (INT) Dados a serem transferidos.
Size (UDINT) Tamanho da área de memória a ser ocupada

A função retorna uma variável (@BYTE) com o endereço da área de memória onde transferiu os dados. Em caso de erro é devolvido eNULL.

Imagem da função do conjunto de sistemas

Exemplos

Como usar os exemplos.
Ativando a variável do debuf CSet a função Sysmemset redefinir o buffer Message, quando a execução é finalizada Result ele será definido com o endereço do buffer.

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]
Esse artigo foi útil?