Ausgangsbit indirekt in scl ansprechen

Bensen83

Level-1
Beiträge
777
Reaktionspunkte
3
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo, ich möchte gerne indirekt Bits auf einer Profibusperipherie ansprechen. Leider bekomme ich eine Fehlermeldung Bezeichner nicht vorhanden.

Also folgendes funktionier: Variable := PEW[adresse];

und Variable_BOOL := PEX[adresse].0; funktioniert nicht, auch nur mit PE klappt es nicht, wer kann mir helfen? wie greift man auf einzelnen bits zu?
 
Du kannst im Peripheriebereich kein Bit lesen/schreiben, in SCL genau so wenig, wie in AWL/KOP/FUP.

D.h. du musst wenigstens ein Byte lesen, und auf dieses Byte dann z.B. mit Hilfe einer Temp-Var auf einzelne Bits zugreifen.

Mfg
Manuel
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hi,

Beispiel (mittels AT):
Code:
FUNCTION FC2 : VOID

VAR_TEMP
  Test : WORD;
  atTest AT Test : ARRAY[0..15] OF BOOL;
  tAdr : INT;
  tBool : BOOL;
END_VAR

BEGIN

  // ...
  // ...
  // ...
  
  Test := PEW[tAdr];
  tBool := atTest[8]; //PEX n.0
  
END_FUNCTION

Gruss Daniel
 
Zurück
Oben