Was ist das für ein Operator?
-
Hallo!
Was sind das für Operatoren?
&=
|=Ich habe nur gefunden, das dies Zuweisungsoperatoren sind.
Grüße
René
-
Abkürzungen:
i &= 5; // ist equivalent zu i = i & 5; //bzw. i |= 5; // ist equivalent zu i = i | 5;
& und | sind Bitoperatoren (bitwise AND, bitwise OR)
Danaben gibt es noch ^ (XOR) und ~(NOT)
-
Danke schon mal,
was genau passiert dann hier?
Das Programm wartet auf ein Ackknowledge beim I²C.char WAIT_ACK() { char ack; // Wait for ACK or NACK P1 &= SCL_L;Delay(1); P1 |= SCL_H;Delay(1); if(P1 & SDA_H) // If Signal is HIGH,then NACK, else if LOW,then ACK ack = NACK; else ack = ACK; P1 &= SCL_L;Delay(1); return ack; }
Danke
René
-
nehme an SCL_H, SCL_L sind bitmasken
char WAIT_ACK() { char ack; // Wait for ACK or NACK P1 &= SCL_L;Delay(1); // alles ausser SCL_L -Bit löschen , warten P1 |= SCL_H;Delay(1); // SCL_H -Bit setzen , warten if(P1 & SDA_H) // wenn SDA_H bit gsetzt ack = NACK ack = NACK; else // sonst ack = ACK ack = ACK; P1 &= SCL_L;Delay(1); // alles ausser SCL_L -Bit löschen , warten return ack; // ack zurückgeben }
-
danke!