Forum: Compiler & IDEs Variable bitweise auslesen ???


von Andreas K. (Gast)


Lesenswert?

Hallo,

ich versuche jetzt schon über eine Stunde eine uint16_t bitweise
auszulesen, doch irgendwie gelingt mir das nicht. Habe es im gleichen
Stil versucht, wie auch die Ports ausgelesen werden ...

Hat jemand einen Tip für mich, wie das in Verbindung mit einer
If-Anweisung funktioniert, d.h. wenn ein bestimmtes Bit=1 dann
ausführen.

Leider kann ich keine & - Verknüpfung zwischen der Variable und einer
festen Zahl anwenden, da das Bit, welches ausgelesen werde soll, sich
ändert.

Sollte es gar nicht anders gehen: wie  funktioniert das bei avr-gcc mit
dem Bitschieben nach links oder rechts ?

von Rufus T. Firefly (Gast)


Lesenswert?

Wenn Du eine Bit_nummer_ (0..15) hast, die Du überprüfen willst, dann
lautet das Statement so:

  if (wert & (1 << bitnummer))
  {
  }

Das ist nichts gcc-spezifisches, das ist ganz banales C.

von Andreas K. (Gast)


Lesenswert?

ich war der Meinung das hatte ich schon so ... vielleicht habe ich ja
sonst irgendwo einen Fehler und muss mir das ganze jetzt noch einmal
ansehen ...

von Andreas K. (Gast)


Lesenswert?

OK Sorry mein Fehler, genau den Code hatte ich verwendet - das Problem
lag woanders ...

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.