Forum: Mikrocontroller und Digitale Elektronik zugreifen auf einzelne Bits eines unsigned char


von Klaus (Gast)


Lesenswert?

Hallo zusammen meine Frage befindet sich schon im Betreff. Kann mir 
jemand dazu eine Antwort geben? Am besten wie man es in C lösen kann.

von gast (Gast)


Lesenswert?

compiler ???

CC5X:      Variable.1  -> erstes Bit

von Dirk D. (dirkd)


Lesenswert?

1
unsigned char variable = 0x00;
2
3
variable |= 0x04; (Bit 2 setzen)
4
5
variable &= ~0x04; (Bit 2 löschen)
6
7
variable ^= 0x04; (Bit 2 togglen 0->1 1->0)

oder besser lesbar
1
variable |= (1<<2); (Bit 2 setzen)
2
3
variable &= ~(1<<2); (Bit 2 löschen)
4
5
variable ^= (1<<2); (Bit 2 togglen 0->1 1->0)

noch Fragen?

von Klaus (Gast)


Lesenswert?

nein. Danke!!!!!!!!!!

von Dirk D. (dirkd)


Lesenswert?

bzw

#define BIT0 (1<<0)
#define BIT1 (1<<1)
#define BIT2 (1<<2)
...

variable |= BIT2;
variable &= ~BIT2;
variable ^= BIT2;

von Thomas F. (thomas-hn) Benutzerseite


Lesenswert?

Oder Stichwort "Bitfelder".

von Klaus (Gast)


Lesenswert?

Jetzt ist doch noch eine Frage aufgekommen!
Ich würde noch gerne einzelne Bits einer Variable auslesen!
Wenn ich dieses Thema noch Beantwortet kriegen könnte, dann Daumen hoch!

von Bjoern M. (salival)


Lesenswert?


Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.