TOG

Flip-flop do tipo toggle: a cada transição de subida da entrada CLK o valor corrente da saída Q é invertido. É um bloco de função (mantém estado entre scans; requer instância).

Biblioteca: HI_STD · Namespace: HILS · Tipo: bloco de função

Bloco de função

               TOG
         +-------------+
BOOL ----|CLK         Q|---- BOOL
         |             |
BOOL ----|RST          |
         +-------------+

A saída Q inverte o estado corrente quando ocorre uma transição de subida da entrada CLK. A entrada RST força a saída Q ao estado inativo (FALSE).

O diagrama de tempo abaixo ilustra o comportamento:

            +---+       +---+    +---+     +---+
CLK         |   |       |   |    |   |     |   |
    --------+   +-------+   +----+   +-----+   +------
            +-----------+        +------+
 Q          |           |        |      |
    --------+           +--------+      +-------------
                                        +----+
 RST                                    |    |
    ------------------------------------+    +--------

Parâmetros

Nome

Direção

Tipo

Padrão

Faixa / Unidade

Descrição

CLK

IN

BOOL

FALSE

—

Entrada de clock: a transição de subida inverte Q.

RST

IN

BOOL

FALSE

—

Reset da saída: força Q para FALSE.

Q

OUT

BOOL

FALSE

—

Saída do flip-flop, invertida a cada subida de CLK.

Observações

  • O bloco reage à transição de subida de CLK, não ao nível — mantenha CLK em TRUE por mais de um scan não gera novas inversões.

Ver também

R_TRIG

Exemplo

Clique aqui para baixar a tabela de variáveis

Código ST

VAR
    my_TOG  : HILS.TOG; (* Instancia do bloco TOG *)
    inp_CLK : BOOL;     (* Entrada *)
    out_Q   : BOOL;     (* Saida *)
END_VAR

(* Exemplo de ativação da função dentro da POU *)
(* ... *)
inp_CLK := TRUE;
my_TOG(CLK := inp_CLK);    (* Ativação da instancia do bloco TOG *)
out_Q   := my_TOG.Q;       (* Obtem parametro de saida Q do bloco TOG *)

(* ... *)