Hallo zwerg77,
hab das bei mir mit WinCC 6.2 im Graphics Editor mit dem Dynamic Wizard "Bit setzen/rücksetzen" gemacht. Variable als vorzeichenlosen 32bit Wert erstellt. Taster im Editor eingefügt-> Doppelklick auf Dynamic Wizard "Bit setzen/rücksetzen" ->Linke Maustaste drücken setzt das 24te Bit und loslassen setzt es zurück
Hier das Skribt für Taste drücken:
{
// WINCC:TAGNAME_SECTION_START
// syntax: #define TagNameInAction "DMTagName"
// next TagID : 1
#define TAG_0 "MD110"
// WINCC:TAGNAME_SECTION_END
// WINCC
ICNAME_SECTION_START
// syntax: #define PicNameInAction "PictureName"
// next PicID : 1
// WINCC
ICNAME_SECTION_END
DWORD dwHelp1,dwHelp2;
dwHelp1=GetTagDWordWait(TAG_0);
dwHelp2=dwHelp1|16777216;
SetTagDWordWait(TAG_0,dwHelp2);
}
und hier für loslassen:
{
// WINCC:TAGNAME_SECTION_START
// syntax: #define TagNameInAction "DMTagName"
// next TagID : 1
#define TAG_0 "MD110"
// WINCC:TAGNAME_SECTION_END
// WINCC
ICNAME_SECTION_START
// syntax: #define PicNameInAction "PictureName"
// next PicID : 1
// WINCC
ICNAME_SECTION_END
DWORD dwHelp1,dwHelp2;
dwHelp1=GetTagDWordWait(TAG_0);
dwHelp2=dwHelp1&(0xFFFFFFFF^16777216);
SetTagDWordWait(TAG_0, dwHelp2);
}