Beschreibung
Invertiert ein Bit in der angegebenen Variablen:
-
Hat das Bit in der Variablen den Wert 1 (TRUE), wird es auf 0 (FALSE) gesetzt.
-
Hat das Bit in der Variablen den Wert 0 (FALSE), wird es auf 1 (TRUE) gesetzt.
Die Systemfunktion überträgt nach der Änderung des angegebenen Bits die gesamte Variable wieder an die Steuerung. Es wird nicht geprüft, ob sich zwischenzeitlich andere Bits in der Variablen geändert haben. Bediener und Steuerung dürfen auf die angegebene Variable nur lesend zugreifen, bis die Variable wieder an die Steuerung übertragen wurde.
|
Hinweis Verwenden Sie diese Systemfunktion nicht, wenn die Steuerung BOOL-Variablen unterstützt. Verwenden Sie statt dessen die Systemfunktion "InvertiereBit". |
Verwendung in der Funktionsliste
InvertiereBitInVariable (Variable, Bit)
Verwendung in benutzerdefinierten Funktionen
InvertBitInTag Tag, Bit
Verwendbar, sofern das projektierte Gerät benutzerdefinierte Funktionen unterstützt. Weitere Informationen finden Sie unter "Geräteabhängigkeit".
Parameter
Variable
Die Variable, in der das angegebene Bit gesetzt wird.
Bit
Die Nummer des Bits, das gesetzt wird.
Wenn Sie diese Systemfunktion in einer benutzerdefinierten Funktion verwenden, werden die Bits in einer Variablen von rechts nach links gezählt. Die Zählung beginnt mit 0.
Beispiel
Der folgende Programmcode invertiert ein Bit an der angegebenen Position bitposition in der Variable bStatusWord und gibt das Ergebnis zusammen mit dem ursprünglichen Wert bSaved aus.
|
'Programming language: VB Dim myTag Dim myOutputField Dim bValue, bSaved, bitposition, strResult Set myTag = SmartTags("bStatusWord") Set myOutputField=HMIRuntime.Screens("MyScreen").ScreenItems("objTextField") 'Get current value bValue=myTag.Value 'Save current value bSaved=bValue 'Invert Bit in position bitposition=2 InvertBit myTag, bitposition bValue=myTag.Value 'Output result old and new value: strResult="Old Value: "&bSaved &Chr(13)&"New Value: "&bValue myOutputField.Text=strResult |