Forum: Mikrocontroller und Digitale Elektronik 10bit in 8bit


von Michael Frank (Gast)


Lesenswert?

Ich hab ein kleines Problem.Ich möchte in C einen Mikrocontroller 
programmieren und habe 2 10bit(8 Vorkomma,2 Nachkommbits)Werte die ich 
in 2 8bit Register schreiben möchte.Jetzt fehlt mir der passende Befehl 
diese Werte zu konvertieren.
Kann mir da jemand helfen??

von Sebastian__ (Gast)


Lesenswert?

Hallo,

also du willst nur ein 10Bit wert auf 2Bytes aufteilen?

int Zahl; // zahl mit 10bit
unsigned char low,high;

high = (zahl>>8);
low = zahl & 255;

von Werner Hoch (Gast)


Lesenswert?

Hi,

ich interprätiere die Frage von Frank anders:
geg: 10bit-Wert in integer
ges: vorkomma, nachkomma

int Zahl;
unsigned char vorkomma, nachkomma;

vorkomma = (Zahl >> 2);
/* die unteren beiden bits ins löschen */
nachkomma = (Zahl << 6);
/* die oberen 8 bits werden durch den cast von int nach char gelöscht */

12345678 12345678   // nur zum Bit zählen
00000011 01010101   -> zahl
         11010101   -> vorkomma
         01000000   -> nachkomma


mfg
werner

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.