Ich möchte gerne mittels einer Variable ein Bit löschen bzw. setzen: Das sieht dann in etwa so aus:
1 | #define _I (1 << PB4) | (1 << PB5)
|
2 | |
3 | case 0: |
4 | LEDS = _I | marker; // I (00110000) -> ID |
5 | if(get_key_short(ENC_TASTER)) |
6 | {
|
7 | val = 4; |
8 | nSelect = 1; |
9 | }
|
Die Variable marker füttere ich mit:
1 | marker = (1 << PB7); |
Jetzt würde ich gerne das Bit PB7 auf die gleiche Weise wieder löschen. Der Logik nach müßte das so aussehen:
1 | marker = ~(1 << PB7); |
Das funkt aber nicht. Wie kann ich das lösen?