Description
Cette fonction positionne un bit dans la variable indiquée sur 0 (FALSE).
A l'issue de la modification du bit indiqué, la fonction système transfère l'intégralité de la variable sur l'automate. Le système ne vérifie pas si d'autres bits ont changé entre-temps dans la variable. L'opérateur et l'automate ne doivent avoir accès qu'en lecture à la variable indiquée tant qu'elle n'a pas été retransmise à l'automate.
|
Remarque N'utilisez pas cette fonction système lorsque l'automate prend en charge des variables de type BOOL. Utilisez alors la fonction système "RAZBit". |
Utilisation dans la liste de fonctions
RAZBitDansVariable (Variable, Bit)
Utilisation dans les fonctions définies par l'utilisateur
ResetBitInTag Tag, Bit
Utilisable dans la mesure où le pupitre configuré prend en charge les fonctions définies par l'utilisateur. Pour plus d'informations, référez-vous à la "Dépendance du pupitre".
Paramètre
Variable
La variable dans laquelle le système met un bit sur 0 (FALSE).
Bit
Le numéro du bit positionné sur 0 (FALSE).
Si vous utilisez cette fonction système dans une fonction définie par l'utilisateur, le système compte, de droite à gauche, les bits dans les variables indiquées, indépendamment de l'automate utilisé. Il commence à compter à partir de 0.
Exemple
Le code du programme suivant met un bit sur la position donnée bitposition de la variable bStatusWord à 0 et fournit le résultat conjointement à la valeur d'origine bSaved.
|
'Programming language: VB Dim myTag Dim myOutputField Dim bValue, bSaved, bitposition, strResult Set myTag = SmartTags("bStatusWord") Set myOutputField=HMIRuntime.Screens("MyScreen").ScreenItems("objTextField") 'Save current value bValue=myTag.Value bSaved=bValue 'Reset Bit bitposition=2 ResetBitInTag myTag, bitposition bValue=myTag.Value 'Output result old and new value: strResult="Old Value: "&bSaved &Chr(13)&"New Value: "&bValue myOutputField.Text=strResult |
|
//Programming language: C { BYTE bSaved; BYTE bitposition = 2; bSaved = GetTagByte("bStatusWord"); //Reset bit in bitposition ResetBitInTag ("bStatusWord", bitposition); //print current and saved value printf ("Current value: %d\r\n, Saved value: %d\r\n",GetTagByte("bStatusWord"), bSaved); ... } |