Gast
#3116119
Guten Morgen, ich lese über den ADC einen Wert von 0 bis 1023 ein und speichere diese in einer 16-bit Variable (uint16_t) ab. Ich shifte diesen Wert 6 Stellen nach rechts (so dass ich nur die oberen 4-Bits verwende) und speichere das Ergebnis in einer 8-bit Variable (uint8_t) ab. Dieses funktioniert super. (0V: 0, 2.5V: 8 & 5V: 15) Das Ergebnis hab ich mir am LCD-Display anzeigen lassen. Nun möchte ich am PORTD ebenfalls 4-Bit einlesen (PD0...PD3) und ebenfalls in einer 8-Bit variable (uint8_t) abspeichern. Diese beiden 8-bit Variablen möchte ich gerne miteinander vergleichen und bei Bedingung (==) einen Ausgang setzen. Das Problem dabei ist, wie ich feststellen musste, dass PD4-PD7 ebenfalls als Eingang / Ausgang (z.B PD5 PWM AUsgang) benutzt werden. Ich möchte nur die 4 LSB Bits (XXXX0000 .... XXXX1111) haben. Gibt es eine SHift Operation bzw. eine Bitmanipulation wie ich in einer 8-Bit Variable Bit 4-7 löschen kann??? Gruß Julia