Programación avanzada
3--6--2
Control de estado de bits
3--6--3
DIFFERENTIATE UP y DIFFERENTIATE DOWN
0000
0001
3--6--4
KEEP
64
entre ambas. Si 0000 es ON, se ejecutará la instrucción 1, y si el estado de
0002 es OFF saltará a la ILC sin ejecutarse las instrucciones intermedias,
mientras que si 0002 es ON, se ejecutarán también las instrucciones 2, 3 y
4.
Existen cinco instrucciones que se pueden utilizar para controlar el estado
de bits individuales. Estas instrucciones son OUTPUT, OUTPUT NOT, DIF-
FERENTIATE UP, DIFFERENTIATE DOWN, y KEEP. Todas estas instruc-
ciones aparecen al final de las líneas de instrucción y necesitan como ope-
rando la dirección de un bit. A continuación las describimos por su importan-
cia en la mayoría de los programas. Aunque se utilizan para poner a ON o a
OFF bits de salida (es decir para enviar o no señales de salida a dispositivos
externos), se utilizan también para controlar el estado de bits de trabajo y
otros bits de memoria.
Las instrucciones DIFFERENTIATE UP y DIFFERENTIATE DOWN se utili-
zan para poner un bit a ON durante un ciclo de scan, en el flanco de subida
la primera y en el flanco de bajada la segunda.
DIFU(10) 0200
DIFD(11) 0201
En este ejemplo, el bit 0200 se pondrá a ON durante un ciclo de scan cuan-
do el bit 0000 cambie a ON. La siguiente vez que se ejecute DIFU(10) 0200,
el bit 0200 se pondrá a OFF independientemente del estado del bit 0000.
Con la instrucción DIFFERENTIATE DOWN, el bit 0201 se pondrá a ON du-
rante un ciclo de scan al ponerse en OFF el bit 0001.
En un programa se pueden utilizar hasta 16 instrucciones DIFFERENTIATE
UP y DIFFERENTIATE DOWN.
La instrucción KEEP se utiliza para mantener el estado del bit operando ba-
sado en dos condiciones de ejecución. Para ello la instrucción KEEP está
conectada a dos líneas de instrucción. Cuando la condición de ejecución de
la primera línea (set) es ON, el bit operando de la instrucción KEEP se pone
a ON. Cuando la condición de ejecución de la segunda línea (reset) es ON,
el bit operando de la instrucción KEEP se pone a OFF. La línea de reset tie-
ne prioridad sobre la de set. El bit operando de la instrucción KEEP manten-
drá su estado ON u OFF incluso si está incluido en una sección IL--ILC de un
programa.
En el siguiente ejemplo, DR 0000 se pondrá a ON cuando el bit 0002 esté en
ON y el bit 0003 a OFF. DR 0000 permanecerá en ON hasta que uno de los
bits 0004 ó 0005 se ponga a ON. Con KEEP, igual que con todas las instruc-
Sección 3--6
Dirección Instrucción
Operandos
000
LD
001
DIFU(10)
Dirección Instrucción
Operandos
000
LD
001
DIFD(11)
0000
0200
0001
0201