Pointer an FB Übergabe

HauWii

Level-1
Beiträge
4
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo zusammen,

ich habe noch ein weiteres Problem mit meiner S7 Programmierung. Ich möchte einen FB bauen, der als IN Parameter bekommt Startbit(Pointer), Sprungweite(Pointer), DB_Nr(DB), Anzahl(DINT).

Jetzt übergabe ich dem FB Startbit = P#1.4, Sprungweite P#2.0, DB_Nr = DB900, Anzahl = L#50.

In der Funktion soll nun an der Adresse DB900.DBX1.4 das erste Bit gelesen werden und dann in einer Schleife die nächsten 49 Bits die dann immer um die Sprungweite weiter liegen also DB900.DBX3.4, DB900.DBX5.4 etc....

Mein Ansatz innerhalb des FB's war bislang der

AUF DB_Nr //DB Aufschlagen

L P##Startbit // Startbitpointer laden
LAR1 // Ins Adressregister 1

U DBX[AR1, P#0.0]


und in der Schleife dann
L P##Sprungweite
+AR1

U DBx[AR1, P#0.0]


Das funktioniert aber nicht. Ich habe dann mal testweise die Werte von Akku1, Akku2 und AR1 nach dem LAden von P##Startbit mit dem internen Laden von L P#1.4 verglichen und da sind Werte von Akku1 und Akku2 vertauscht. Was mache ich da falsch?

Danke für eure Hilfe...
 
Zurück
Oben