Forum: Compiler & IDEs Umwandel in BCD und zurück


von Johni (Gast)


Lesenswert?

Wie kann ich in AVR-GCC ein Byte in BCD und zurück umwandeln? Gibts da
ne fertige Funktion?

von Ferrice (Gast)


Lesenswert?

such mal nach dem befehl sprintf.. mit dem geht das.

mfg

von Johni (Gast)


Lesenswert?

Mhhh ja das könnte gehen, danach ist es allerdings ein String und alles
in allem frisst das je ziemlich viele Ressourcen.

von Ferrice (Gast)


Lesenswert?

naja eine andere methode ist das du einfach 100 von deinem wert abziehst
und schaust wie oft es geht.
dann ziehst du 10 ab und schaust wieder wie oft es geht.

so kommst du dann auf deine werte..

hab das bei meinen umwandlungen auch so gemacht.
wenn du willst kann ich posten..

mfg

von Johannes (Gast)


Lesenswert?

Jo währe ned schlecht, hab nämlich keine ahnung wie man in c Modulo
rechnet.

von Johannes (Gast)


Lesenswert?

Habs ohne Modulo hinbekommen, warum ich da im ersten Moment an Modulo
gedacht hab......naja:

int bintobcd(int a)
{
  int erg1,erg2;

  erg1 = 0;
  while(a >= 10){
    erg1++;
    a = a - 10;
  }

  erg2 = 0;
  while(a >= 1){
    erg2++;
    a = a - 1;
  }

  a = ((erg1 << 4) | erg2);

    return a;
}

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.