Siemens SIMATIC S5-135U Instrucciones De Programacion página 310

Ocultar thumbs Ver también para SIMATIC S5-135U:
Tabla de contenido
Acceso a registros
y
memoria por dirección en el AKKU
1
Registro 15: SAZ
=
Contador de direcciones STEP
En el registro 15, durante el procesamiento del programa STEP 5, se encuentra la dirección
absoluta de la instrucción que se va a ser elaborada posteriormente.
Ejemplo:
Todas las palabras de datos de un módulo de datos van a ser escritas con una
constante.
El programa presentado abajo rellena todas las palabras de datos del DB 50 con una constante
KH
=
A5A5. Con la modificación de las instrucciones STEP 5 escritas en negrita se puede
proceder a rellenar otros módulos de datos (DB o DX) con valores arbitrarios. Si el módulo de
datos no existe o no tiene palabras de datos, se produce un salto a la meta NIVO.
La dirección de comienzo (DBA)
y
la longitud (DBL) del módulo de datos son exploradas por
medio de la función especial OB 181 "Analizar módulo de datos (DBIDX)".
El programa utiliza los 4 acumuladores. En la figura se observa la ocupación de los
acumuladores durante el procesamiento de programa hasta la marca SCHL. En el interior del
bucle no se modifica el contenido de los acumuladores.
El AKKU 1 contiene primeramente la dirección de la Última palabra de datos (DBA
+
DBL
-
1)
y
es disminuido en uno en cada pasada por el bucle.
El AKKU
2
contiene la dirección de la primera palabra de datos (DBA). El bucle es intemmpido
en cuanto el contenido del AKKU
1
sea menor que el contenido del AKKU 2.
Para la descripción de las palabras de datos se utiliza la orden TIR 10, la cual almacena el
contenido de AKKU 3-L (la constante) en la dirección declarada en el AKKU 1 -L.
:L
KHA5A5
:L
KY1,50
:ENT
:SPA OB 181
:SPB
=
NIVO
:TAK
:ENT
:+
F
:!= F
:SPB =NIVO
SCHL :ADD BF-1
:TIR 10
:<F
:SPB =SCHL
Constante con la que se debieran rellenar
todas las palabras de datos
Tipo y número del módulo de datos
OB de funciones especiales "Análisis de módulos de datos"
Interrupción en caso de que el DB 50 no exista
AKKU 1
:=
Direc. última palabra de datos +1
AKKU 2:= Direc. primera palabra de datos
AKKU 3:= Constante
Interrupción en caso de que el DB 50 contenga
cero palabras de datos
Rellenar todas las palabras de datos,
comenzando por la última palabra de datos con
las constantes contenidas en el AKKU 3-L
Continuación del programa
...
WEIT :
...
una vez que todas las palabras de datos
han sido escritas
:BEA
NlVO :
...
en caso de que no exista el DB 50 o que
contenga cero palabras de datos.
:BE
Tabla de contenido
loading

Tabla de contenido