Control de programa
10.12
CC
Llamada condicionada
Formato
CC <identificación del bloque lógico>
Descripción de la operación
CC <identificación del bloque lógico> (Llamada condicionada) llama a un bloque lógico del
tipo FC o SFC sin parámetros cuando el RLO es 1. La operación CC es prácticamente igual
que la operación CALL, con la diferencia de que aquí no se pueden transferir parámetros. La
operación almacena en la pila BSTACK la dirección de retorno (selector y dirección relativa),
los selectores de los dos bloques de datos actuales y el bit MA; desactiva la dependencia con
respecto al MCR; crea el área de datos locales del bloque a llamar y empieza a ejecutar el
bloque lógico que se ha llamado. La identificación del bloque lógico puede indicarse tanto de
forma absoluta como simbólica.
Palabra de estado
se escribe:
Ejemplo 1
AWL
Explicación
U
E 2.0
//Consultar el estado de señal en la entrada E 2.0.
CC
FC6
//Llamar a la función FC6, si E 2.0 es 1.
U
M3.0
//Se ejecuta: tras regresar de la función llamada, si E
inmediatamente después de la instrucción U E 2.0,
Ejemplo 2
AWL
Explicación
U
E 2.0
//Consultar el estado de señal en la entrada E 2.0.
CC
SFC43
//Llamar a la función de sistema SFC43 (sin parámetros), si E 2.0 es1.
Nota
Si se utiliza la operación CALL para llamar a un bloque de función (FB) o a un bloque de
función de sistema (SFB), en la instrucción hay que especificar un bloque de datos de
instancia (n.° de DB). Los bloques de datos no se pueden asignar en el operando de la
instrucción.
Dependiendo de cuál sea el segmento con el que se esté trabajando, durante la compilación
del lenguaje de programación Esquema de contactos al lenguaje de programación Lista de
instrucciones "KOP/AWL: Programar bloques" genera en parte la operación UC y en parte la
operación CC. Por ello, se recomienda utilizar por regla general la instrucción CALL, con el fin
de que no se produzcan errores en los programas que el usuario haya creado.
10-14
RB
A1
A0
-
-
-
OV
OS
OR
-
0
0
Lista de instrucciones (AWL) para S7-300 y S7-400
STA
RLO
/ER
1
1
0
2.0
= 1, ó
si E
2.0
=
0.
A5E00706962-01