Hallo ich habe folgendes Problem und tüftle schon eine Weile daran. Ihr werdet bestimmt damit kein Problem haben aber mir fehlt da leider die Erfahrung wie man das macht. (GCC) Ich habe 2 Bytes... Diese 2 Bytes sollen mit 2 Variablen beschrieben werden. Jedoch soll die erste Variable (9bit) ins Byte1 und ins MSB des Byte2 geschrieben werden. Die zweite Variable (7bit) soll in die 7 verbleibenden ("LSB") des 2. Bytes geschrieben werden... Also praktisch <----Byte1------> <----Byte2------> |x|x|x|x|x|x|x|x| |x|y|y|y|y|y|y|y| <----Variable1------><-Variable2--> Könnt ihr mir bitte helfen. Ich vermute man macht das mit Bitshifting aber ich komm da gerade nicht weiter... (Benutze AVR Studio GCC, ATmega88) Ich danke euch!
:
Verschoben durch Moderator
Also ich seh da mehrere Varianten, hier eine mit IF:
1 | Byte2 = Variable2; |
2 | Byte1 = (Variable1 >> 1); |
3 | IF(Variable1 & 1) Byte2 += 128; |
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.