Forum: Mikrocontroller und Digitale Elektronik typenumwandlung


von KoF (Gast)


Lesenswert?

tag alle miteinander....

ich hab das problem, das ich einen 12 bitigen ad-wandler (der des
msp430f149) auslese, und mir die werte hexer ausgeben lasse...
leider besteht meine ausgabe aus 3 einzelnen int-zeichen ( jeweils von
0-F) also von 000-FFF (jedes zeichen eine eigene unsigned int
variable!!!)

nun möchte ich jedoch das ergebnis dieser messung zum weiterrechnen in
eine neue int-variable zusammen speichern, wie das aussehen soll seht
ihr hier:

z.b. so
tmp1 = 3
tmp2 = 4
tmp3 = A

neuer int = 34A

ich kann ja nunmal nicht die einzelnen werte addieren, da das ergebnis
ja absolut nix mit der realität zu tun hätte ;-)
kann mir dabei jemand helfen??? (sprache c unter dem mspgcc)

mfg KoF

von OldBug (Gast)


Lesenswert?

Hallo KoF!

Das müsste ungefähr so gehen:

  unsigned int neuer_int = (tmp1 << 16) + (tmp2 << 8) + tmp3;

Gruß,
Patrick...

von Matthias (Gast)


Lesenswert?

Hi

fast:
unsigned int neuer_int = (tmp1 << 8) + (tmp2 << 4) + tmp3;
oder
unsigned int neuer_int = (tmp1 * 256) + (tmp2 * 16) + tmp3;

Matthias

von OldBug (Gast)


Lesenswert?

Oh hups, Matthias, hast natürlich recht :-)

Sorry, Patrick...

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.