Forum: Mikrocontroller und Digitale Elektronik 10bit in 8bit


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
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

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.