SET_BIT

Atribui o valor fornecido ao bit de uma variável do tipo BYTE, WORD, DWORD ou LWORD (ANY_BIT).

Nota

O identificador do bit inicia em 0, sendo este o bit menos significtivo da variável especificada.

Bloco

                SET_BIT
            +---------------+
ANY_BIT ----|INP            |---- ANY_BIT
            |               |
    INT ----|BIT_POS        |
            |               |
   BOOL ----|BIT_VAL        |
            +---------------+

Parâmetro

Nome

Classe

Tipo

Dim.

V. Ini.

Descrição

INP

Entrada

ANY_BIT

Variável a ser atribuida com o valor no bit especificado

BIT_POS

Entrada

INT

0

Posição do bit a ser atribuido

BIT_VAL

Entrada

BOOL

FALSE

Valor a ser atribuido o bit especificado da variavel INP

Retorno

Tipo Dado

Descrição

ANY_BIT

Valor resultante da operação.

Exemplo

Declaração de Variáveis

Nome

Tipo

Valor Inicial

Descrição

v_inp

DWORD

16#0001_0000

valor do tipo any_bit

Clique aqui para baixar a tabela de variáveis

Código ST

(* Exemplo de ativação da função dentro da POU *)
(* ... *)
// No primeiro ciclo de scan, o valor da variável v_inp neste ponto é 16#0001_0000
v_inp := HILS.SET_BIT(
          v_inp, // INP [] = Variável a ser atribuida com o valor no bit especificado
          15,    // BIT_POS [INT] = Posição do bit a ser atribuido
          TRUE   // BIT_VAL [BOOL] = Valor a ser atribuido o bit especificado da variavel INP
          );
// O novo valor retornado pela função anterior será 16#0001_8000

v_inp := HILS.SET_BIT(
          v_inp, // INP [] = Variável a ser atribuida com o valor no bit especificado
          16,    // BIT_POS [INT] = Posição do bit a ser atribuido
          FALSE  // BIT_VAL [BOOL] = Valor a ser atribuido o bit especificado da variavel INP
          );
// O novo valor ao final da execução anterior será 16#0000_8000
(* ... *)