R_TRIG

Instrucciones  Índex 

Detecta un cambio entre el estado anterior del acumulador y el reciente de la instrucción anterior. Cuando hay transición el acumulador sale en 1, caso contrario en 0.

Detecta transición 0 a 1.

La 1ª vez que se ejecuta el acumulador sale en cero, pues se limita a memorizar el estado.

    LD 0             ;Estado anterior Acc = desconectado

    LD i0.0          ;Nuevo estado Acc = i0.0

    F_TRIG           ;Detecto el cambio 0 -> 1

    SET q0.6         ;Dejo salida activada su hubo transición

 

    LD 0             ;Estado anterior Acc = desconectado

    LD i0.1          ;Nuevo estado Acc = i0.1

    R_TRIG           ;Detecto el cambio 1 -> 0

    RESET q0.6       ;Dejo salida desactivada su hubo transición

1° ejecución: sin cambio (memoriza el estado)

|                      +--------+           |
+-----------||---------+ R_TRIG +-----( )---+
|           0          +--------+      0    |

2° ejecución: huvo un cambio desde la vez anterior (0 -> 1)

|                      +--------+           |
+-----------||---------+ R_TRIG +-----( )---+
|           1          +--------+      1    |

3° ejecución: no huvo cambio desde la vez anterior

|                      +--------+           |
+-----------||---------+ R_TRIG +-----( )---+
|           1          +--------+      0    |

4° ejecución: huvo cambio desde la vez anterior (1 -> 0), pero no es el tipo que puede detectar

|                      +--------+           |
+-----------||---------+ R_TRIG +-----( )---+
|           0          +--------+      0    |