- Beiträge
- 15.404
- Reaktionspunkte
- 4.039
-> Hier kostenlos registrieren
Ich hab das schon 100 Mal gemacht, aber jedes Mal probiere ich erst ewig rum.
Ich habe einen Multiinstanz-FB (Also z.Bsp. einen FB42, der in einem anderen FB als STAT definiert ist), der hat als IN
DB-Nummer
Anfangsbyte Daten
Länge Daten
Im FB will ich einen neuen Any bauen, z.Bsp. für den SFC14.
Das ist soweit alles klar.
Worüber ich jedesmal stolper, muß ich nun das AR2 aufaddieren oder nicht?
Das hier funktioniert nicht:
Das hier funktioniert:
ADDR_Temp ist als Any im Temp des FB42 definiert
Wenn ich das mache funktioniert es nicht.
Die Frage an sich ist, bei welchem Zugriff, auf welche Daten muß ich das AR2 zum AR 1 dazu addieren.
Ich geh immer davon aus, dass es bei den Temp-Var nicht nötig ist, liege ich da richtig?
Ich habe einen Multiinstanz-FB (Also z.Bsp. einen FB42, der in einem anderen FB als STAT definiert ist), der hat als IN
DB-Nummer
Anfangsbyte Daten
Länge Daten
Im FB will ich einen neuen Any bauen, z.Bsp. für den SFC14.
Das ist soweit alles klar.
Worüber ich jedesmal stolper, muß ich nun das AR2 aufaddieren oder nicht?
Das hier funktioniert nicht:
Code:
LAR1 P##ADDR_Temp
TAR2
+AR1 //Anfangsadresse des ANY-Pointers in AR1 laden
L B#(16, 2) //Syntax-ID und Typ: Byte laden
T W [AR1,P#0.0]
L #wAdr_Len //Transferlaenge
T W [AR1,P#2.0]
L #wAdr_DB //Quelle-DB
T W [AR1,P#4.0]
L P#DBX 0.0 //Anfangs-DW im Quell-DB
L #wAdr_Byte
SLD 3
+D
T LD [AR1,P#6.0]
Das hier funktioniert:
Code:
LAR1 P##ADDR_Temp
// TAR2
// +AR1 //Anfangsadresse des ANY-Pointers in AR1 laden
L B#(16, 2) //Syntax-ID und Typ: Byte laden
T W [AR1,P#0.0]
L #wAdr_Len //Transferlaenge
T W [AR1,P#2.0]
L #wAdr_DB //Quelle-DB
T W [AR1,P#4.0]
L P#DBX 0.0 //Anfangs-DW im Quell-DB
L #wAdr_Byte
SLD 3
+D
T LD [AR1,P#6.0]
ADDR_Temp ist als Any im Temp des FB42 definiert
Wenn ich das mache funktioniert es nicht.
Die Frage an sich ist, bei welchem Zugriff, auf welche Daten muß ich das AR2 zum AR 1 dazu addieren.
Ich geh immer davon aus, dass es bei den Temp-Var nicht nötig ist, liege ich da richtig?