Hallo Zusammen!
Nochmals vielen Dank für die Hilfe zu meiner letzten Frage. Ich komme langsam weiter...
Nun möchte ich zwei Variablen vom Typ Merkerbyte (MB) bitweise vergleichen, z.B. ein bitweises UND anwenden um ein MB zu maskieren, mich interessieren z.B. die drei niedrigsten Bit von MB10. Ich hätte gerne einfach
MB11 := MB10 AND 7; // "Codesys-like"
CASE MB11 OF
1: ;
2: ;
3: ;
ELSE;
CASE_END ;
geschrieben.
Der Ausdruck "MB11 := MB10 AND 7; " liefert aber eine Fehlermeldung, die darauf schließen lässt, dass der Operator AND als Ergebnis ausschließlich einen Wert vom Typ BOOL liefert und ausschließlich Parameter vom Typ BOOL akzeptiert.
Den Umweg über den BV-Baustein habe ich gefunden, aber das muss doch schlanker darstellbar sein?
Beste Grüße
Jösel