int to string für LCD

Gast #2278
Lesenswert?

Hallo
Hier herrscht ja reger Verkehr! gut so.
Vielleicht kann mir ja jemand kurz erklären wie ich einen sich ständig 
wechselnder Wert, (ADC) in einen String wandeln kann.
(in C für ATmega163)
Hab gesehen, dass schon ein paar Beispiele vorhanden sind, wurde aber 
leider nicht wirklich fündig.
besten dank im Voraus

Böru
Gast #2279
Lesenswert?

ich mach das so:

temp ist ein Buffer in dem der String landet.
mode ist der Modus (führende Nullen)
messwert eben der Wert

volatile unsigned char temp[20];

intToString(messwert,temp,4);

void intToString(unsigned int wert,unsigned char *Zbts, unsigned char 
mode)
{
    unsigned int x = 0;
    unsigned char c = 0;
    unsigned int teiler = 10000;
    unsigned char f;
    unsigned char flag = 0;

    for (f=0;f<5;f++)
    {
    x = wert/teiler;
    wert = wert - (x*teiler);

  if((f+mode)==5)    // mindestanzahl der Stellen
    flag=1;

      if ((x>0)|(flag==1))
      {
        c = (unsigned char)x + '0';
        *Zbts = c ;
        Zbts++;
        flag=1;
      }
      teiler = teiler /10;
    }

    *Zbts = 0x00 ;  // Stringende schreiben

   }

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren