Pointerzugriff auf IN-Variable

Beckx-net

Level-1
Beiträge
132
Reaktionspunkte
18
Zuviel Werbung?
-> Hier kostenlos registrieren
Guten Abend,
vielleicht weiß einer von euch rat.
Ich möchte mit einer Schleife Boolsche Eingangsvariablen von einem FB-Baustein zählen, die 'True' sind.
Ich möchte dies gern mit einem Pointer realisieren, nun habe ich das Problem, dass ich IN-Variablen nicht über die Pointeradresse direkt abfragen kann. Vielleicht kennt einer ja eine Möglichkeit, ohne das ich meine Eingänge in den Temp-Bereich kopiere?

Hier ist ein provisorische Code für max 8 Eingänge.
Code:
 LAR1  P##B_0 // Pointer auf die erste Eingangsvariable

      L     0
      T     #zaehler // Zaehler für Positive Eingangsvariablen

      L     5
M001: T     MW    30

      U     ? [AR1,P#0.0] // Hier möchte ich die Eingangsvariablen abfragen 

      SPB   inc
      SPA   end

inc:  L     #zaehler
      L     1
      +I    
      T     #zaehler

end:  L     P#0.1

      +AR1  
      L     MW    30
      LOOP  M001
Gruß Beckx-net
 
Hallo Beckx-net,

das abfragen der BOOL Variable erfolgt einfach mit
Code:
U [AR1,P#0.0]
Voraussetzung:
Code:
TAR2        //Multiinstanz
UD DW#16#00FF_FFFF    //Ausmaskieren unwichtiger Informationen
LAR1  P##B_0 //Pointer auf die erste Eingangsvariable
+AR1        //Adressen AR1 & AR2 addieren

L W [AR1,P#0.0]         //1.Wort im Pointers = DB-Nr
T #DB_NR

AUF DB [#DB_NR]        //DB öffnen

L D [AR1,P#2.0]     //Bereichskennung. Byte u. Bitadresse
LAR1            //in AR1 laden

Gruss Daniel
 
Danke schön, habe nicht gewusst, dass man In/Out Variablen mit einfach
U [AR1,P#0.0] abfragen kann.

Problem gelöst Danke
 
Zurück
Oben