Step 5 Bit-Auswertung Datenwort aus Formaloperand

urlicht

Level-2
Beiträge
104
Reaktionspunkte
4
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo liebe Senior-Programmierer,

ich habe folgendes Problem:

In einem Funktionsbaustein unter Step 5 möchte ich bestimmte Bits eines Formaloperanden vom Typ W (Wort) auswerten.

Beispiel:

Name: FB_XYZABC
Bez: DB E/A/D/B/T/Z: E
Bez: BAW E/A/D/B/T/Z: E BI/BY/W/D: W
:
:B =DB
:L =BAW
:
:

Aus diesem Datenwort möchte ich eine Operation ausführen, wenn das Bit 0 (niederweritigstes Bit) des Datenwortes "0" ist.

Ohne Formaloperanden ginge das ja mit
:U D12.0
:=A0.0

Wie wäre das aber mit einem Formalopreanden auszuwerten. Ich habe in einem alten Skript die Operation P als Bit-Test auf den Wert "1" eines Bits aus einem Datenwort gefunden, aber kein Beispiel für die Anwendung.
Ich hoffe, Euch fällt etwas ein.

Grüße an die Gemeinde.
 
Du müßtest hier mit maskieren arbeiten - aslo eine Wort-UND-Verknüpfung mit einem Binär- oder Hexwert. Ist das Ergebnis dieser Verknüpfung hinterher ungleich 0 dann ist das fragliche Bit gesetzt.
Also in etwa so :
Code:
B    =DB
L    =BAW
L KH 0001
UW
L KH 0000
<>F
=Bit_gesetzt
Ich bin mir nur hinsichtlich der S5-Syntax nicht 100%ig sicher (schon zu lange nicht mehr gemacht).

Gruß
Larry
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo Larry,

manchmal ist man halt blind. Klar, das habe ich auch schon so gemacht. Ist nur schon eine Weile her. Step 5 wird halt immer seltener. Deshalb die Anrede "Seniorprogrammierer".
Trotzdem hätte ich gern gewusst, ob die Bitauswertung mit "P" funktioniert und wie das aussehen muss.

Einstweilen herzlichen Dank für die Antwort.
 
Die Operationen "P" (Prüfe Bit auf Signalzustand 1) oder "PN" (Prüfe Bit auf Signalzustand 0) funktionieren nicht bei Formaloperanden.
Sie funktionieren nur bei:
- T (Zeiten)
- Z (Zählern)
- D (Daten)
- BS (betriebssystemdaten)
 
Danke für die Antwort, GUNSAMS.

Also scheint es keine Möglichkeit in Step 5 zu geben, eine Bestimmte Stelle aus einem Bitmuster per Formaloperand direkt auszuzwerten den Zustand als VKE zu verarbeiten?
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Danke für die Antwort, GUNSAMS.

Also scheint es keine Möglichkeit in Step 5 zu geben, eine Bestimmte Stelle aus einem Bitmuster per Formaloperand direkt auszuzwerten den Zustand als VKE zu verarbeiten?

Bei Step5 wurde man noch nicht gesteinigt, wenn Schmiermerker verwendet wurden...

Thomas
 
Zurück
Oben