Forum: Compiler & IDEs Ausgelesen ADC Wert als Integer speichern?!


von Orikson (Gast)


Lesenswert?

Hallo,

ich versuche gerade eine Temperatursteuerung mit Mega8, KTY81 Sensoren 
und LCD Display zu programieren. Der wichtige Teil vom Code sieht so 
aus:
1
int main( void )
2
{
3
 uint16_t adcval;
4
 char mess1[4];
5
6
 while(1)
7
  {
8
   adcval = ReadChannel(0);
9
   itoa (adcval, mess1, 10);
10
11
   lcd_text((u8*) mess1);
12
  }
13
}
Das funktioniert soweit auch.

Allerdings will ich die Variable "mess1" nicht als char haben, sondern 
als Integer, da damit gerechnet werden soll. Theoretisch könnte ich das 
natürlich wieder mit der "atoi"-Funktion umwandeln, aber das muss doch 
anders gehen!? Immerhin wird der Wert von "adcval" (der ja scheinbar 
schon ein Integer ist) ja vorher bereits in einen String umgewandelt.

Wie könnte ich das am elegantesten lösen? Ich vermute, dass das 
irgendwas mit Pointern zu tun hat, mit welchen ich mich aber noch nie 
beschäftigt habe...

von Walter S. (avatar)


Lesenswert?

Hast Du schon Mal ein Programm geschrieben?

von Orikson (Gast)


Lesenswert?

Ja klar, aber bislang waren es immer eher einfachere.

Falls du darauf raus willst, dass der Anfang etc. fehlt: Der existiert 
natürlich! Hab den aber nicht mit rein, weil es sonst zu viel 
unwichtiges Zeug wird!

von Thomas D. (t0mmy)


Lesenswert?

adcval ist doch dein "Integer" mit dem du rechnen kannst.

von Orikson (Gast)


Lesenswert?

Ok, hab den Fehler gefunden. Es lag gar nicht an dem Codestück, sondern 
an der Ausgabe auf dem LCD selbst. Da bekomme ich immer kryptische 
Zeichen etc, aber da hab ich einfach nur die falsche Funktion 
verwendet... Trotzdem Danke für die kurze Hilfe...

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.