SYS1 Configuración de las Interrupciones

Configura la entrada de interrupción según el valor de una constante de tipo carácter.

Establece como entrada de interrupción la entrada especificada por la primera clave, y cambia las condiciones de entrada al contenido especificado por la segunda clave. La primera y la segunda clave están separadas por una coma.

Clave

INT2,UP

INT2

Entrada de interrupción

INT0–INT7: X0–X7

UP

Flanco de interrupción

UP: Flanco de subida

DOWN: Flanco de bajada

BOTH: Flanco de subida y de bajada

Para el FP-X, de INT0–INT13.

Observaciones

  • La ejecución de esta instrucción no sobrescribe el contenido de la ROM. Por lo tanto, cuando se quita alimentación al sistema y se vuelve a encender, se cargan de nuevo los valores especificados para los registros del sistema con el software de programación.

  • Se recomienda ejecutar esta instrucción en el flanco de subida o de bajada (modo diferencial).

  • Si se ha especificado UP o DOWN, se modifica el contenido de los registros del sistema según las especificaciones, por lo que se pueden generar errores de verificación. Si se ha especificado BOTH, el contenido de los registros del sistema no cambia.

  • Separar por una coma "," las dos claves y no utilizar espacios.

Banderas de error

sys_bIsOperationErrorHold (pasa a TRUE y permanece TRUE)
  • si el carácter especificado no se corresponde con una clave.

  • si las dos claves no están separadas por una coma.

  • si la clave se ha especificado en letras minúsculas.

sys_bIsOperationErrorNonHold (pasa a TRUE para un ciclo de scan)
  • si el carácter especificado no se corresponde con una clave.

  • si las dos claves no están separadas por una coma.

  • si la clave se ha especificado en letras minúsculas.

Ejemplo

Cabecera de la POU

Todas las variables de entrada y de salida utilizadas para la programación de esta función han sido declaradas en la Cabecera de la POU. Se utiliza la misma cabecera de la POU para todos los lenguajes de programación.

	VAR
		bSetEdge: BOOL:=FALSE;
		DT_value: DT:=DT#2010-06-30-11:15:00;
		bEno: BOOL:=FALSE;
	END_VAR

Cuerpo de la POU

Cuando InterruptX1 pasa a on, se modifica la condición de la entrada de interrupción X1 a "Flanco de subida".

Cuerpo LD

BODY
    WORKSPACE
        NETWORK_LIST_TYPE := NWTYPELD ;
        ACTIVE_NETWORK := 0 ;
    END_WORKSPACE
    NET_WORK
        NETWORK_TYPE := NWTYPELD ;
        NETWORK_LABEL :=  ;
        NETWORK_TITLE :=  ;
        NETWORK_HEIGHT := 5 ;
        NETWORK_BODY
B(B_F,E_SET_RTC_DT!,Instance,20,1,28,5,,?DEN?DIN?AENO);
B(B_VARIN,,DT_value,18,3,20,5,);
B(B_CONTACT,,bSetEdge,7,2,9,4,R);
B(B_COIL,,bEno,37,2,39,4,);
L(1,3,7,3);
L(9,3,20,3);
L(28,3,37,3);
L(1,0,1,5);
        END_NETWORK_BODY
    END_NET_WORK
END_BODY

Cuerpo en ST

if (DF(InterruptX1)) then
    SYS1('INT1, UP');
end_if;
NOTA

El compilador justifica a la derecha automáticamente el valor introducido en s*.

Modificado el: 2024-03-07Comentarios sobre esta páginaLínea directa de Panasonic