Nene Freunde, der Code des FB's ist schon von mir.
Wo schon oben geschrieben, ist das, was hier im Screenshot ist nur ein kleiner Teil, den ich von einem anderen Netzwerk in das NW1 hineinkopiert habe, weil ja auch hier der Fehler ist- das ist keine Leiche sondern ein Teil eines Netzwerkes.
Der Code generiert aus einer- wie Ronin messerscharf geschlossen hat- Rezepturnummer I_RCP_SEL (0-50) einen Pointer wo denn diese Rezeptwerte in der Instanz liegen.
OK- dann funzt das also so nicht.
Also was ich möchte ist:
Ich habe IN_OUT Variabeln.
REZ0_Wert1
REZ0_Wert2
REZ0_Wert3
.
.
REZ0_Wert40
REZ1_Wert1
REZ1_Wert2
REZ1_Wert3
.
.
REZ1_Wert40
....
REZ50_Wert1
REZ50_Wert2
REZ50_Wert3
.
.
REZ50_Wert40
Also rund 2000 Parameter als 51 Rezepte mit ~40 Werten.
Diese sollen nun nach verschiedenen Benutzerfunktionen hin und herkopiert werden. Teilweise muss man Werte auch noch umrechnen, somit funktioniert ein BLK_MOV mal nicht so einfach (also über Umweg schon).
Wie ist denn der "gängige" Weg wenn ich innerhalb einer Instanz Daten (in Schleifen) von einer Adresse zu einer anderen kopieren möchte, ohne das AR2 zu verwenden?
Mir fällt nur ein sowas wie:
Code:
L P##Adresse1
...
Rechnung
....
T #TEMP_DINT1
L P##Adresse2
...
Rechnung
....
T #TEMP_DINT2
Schleife beginn
L #TEMP_DINT1
TAR1
L W [AR1, P#0.0]
L #TEMP_DINT2
TAR1
TAK
T W [AR1, P#0.0]
L #TEMP_DINT1
L L#16 //2 Bytes dazu
+D
T #TEMP_DINT1
L #TEMP_DINT2
L L#16 //2 Bytes dazu
+D
T #TEMP_DINT2
Schleife Ende
Wenn ich den FB nicht multiinstanzfähig mache, dann funktioniert es aber auch so, auf den ersten Blick- ist das "stillos?".