Analogwert auf LCD ausgeben

OP #4338740
Lesenswert?

Hallo zusammen,
ich versuche mich gerade ein bisschen mit Mikrocontrollern sowie der 
Programmiersprache C auseinander zusetzen.
Nun stoße ich leider an meine Grenzen:
Ich habe das Entwicklungsboard von ehajo..
Entwicklungumgebung AtmelStudio
Verwendeter MC Atmega328P
Ein LCD Display habe ich erfolgreich angeschlossen und initialisiert. 
Ich kann auch schon gewünschte Texte mit einem String an das Display 
senden.
Jetzt habe ich mir einen AD Wandler programmiert und möchte mir gerne 
den Inhalt der Variable auf dem LCD-Display anzeigen lassen.
Dafür benötige dann also den Konverter itoa .. Soweit so klar...
Jetzt meine Frage:
Wenn ich einen 10 bit Wandler habe, kann ich ja logischerweise Werte im 
Bereich von 2^10 darstellen.. also 0 bis 1023 richtig?
Lade ich mein Programm in den Kontroller zeigt er mir zunächst 0 An.. 
drehe ich an dem Poti steigt der Wert bis 1023.. Drehe ich das Poti nun 
zurück kriege ich ein utopischen Wert auf dem LCD angezeigt.. 
(irgendeinen 4stelligen Wert bis zu 9000... Drehe ich den Poti wieder in 
Nullstellung, bleibt immer ein anderer Wert auf dem Display stehen.. z.B 
230...
Kann mir jemand sagen wo der Fehler liegt??

Ich kann mir eigentlich nicht vorstellen das der Wert tatsächlich bei 
8000 liegt?! Gerade da es sich ja um einen 10 bit Wandler handelt


Im Anhang ein Screenshot von meinem verwendeten Programm..
Bin über jede Hilfe dankbar..
Angehängte Dateien:
Gast #4338771
Lesenswert?

Eine Theorie dazu:

Nach itoa(1023, buffer, 10) steht 1023 auf dem Display.

itoa(99, buffer, 10) gibt einen 2 Zeichen langen String aus.
lcd_string("99") überschreibt nur die ersten zwei Ziffern auf dem 
Display, die anderen beiden bleiben unverändert - übrig bleibt "9923".
Gast #4338868
Lesenswert?

Solche Fehler macht man, wenn man anstatt selber zu programmieren und zu 
verstehen was man da macht, sich seine Programme aus Beispielen 
"zusammen klaut". Früher hat man sich hingesetzt und probiert und durch 
logisches Denken seinen Fehler gefunden. Heute reicht die intellektuelle 
Fähigkeit  gerade mal dazu das Internet zu bemühen und andere zu 
befragen und man bastelt sich seine Programme weiter aus Beispielen 
zusammen. Das Wort "Programmieren" dürfte in diesem Zusammenhang 
eigentlich gar nicht mehr benutzt werden. Das ist der Grund warum wir 
die Fachkräfte aus dem Ausland importieren müssen. In Indien scheint 
nicht jeder Internet zu haben und löst seine Probleme selber und kann 
dann am ende wirklich was. Wohingegen hier der Nachwuchs nicht aus den 
BastlerSchuhen herauskommt.
#4338916
Lesenswert?

Alexander V. schrieb:
> Kannst du mir kurz erklären warum?

Grob gesagt: Das Display knippst nur Leuchten da an und aus, wo man ihm 
sagt dass es Leuchten an und aus knipsen soll. Sagt man ihm also nicht, 
dass es Leuchten an/aus knipsen soll tut es das auch nicht.

SATAN schrieb:
> Früher hat man sich hingesetzt und probiert und durch
> logisches Denken seinen Fehler gefunden.

Und der TE hat gefragt, was daran falsch sein soll vermag ich nicht zu 
sagen. Ich finde es im Zeitalter des Internets völlig legitim zu fragen. 
Genau das ist ja der Sinn dieses Forums.
#4338972
Lesenswert?

SATAN schrieb:
> Michael K. schrieb:
>> Genau das ist ja der Sinn dieses Forums.
>
> Habe ich auch nicht angezweifelt. Der Sinn einer Zigarette ist es,
> geraucht zu werden. Ob das Sinnvoll ist oder nicht, steht auf einem
> anderen Blatt.

Ja, dein Beitrag hat nur nicht wirklich dem TE geholfen. Du wirfst ihm, 
im Prinzip, hier nur vor zu fragen:

SATAN schrieb:
> …Heute reicht die intellektuelle
> Fähigkeit  gerade mal dazu das Internet zu bemühen und andere zu
> befragen…

Aber was an deinem Post sollte nun zur Lösung des Problems des TEs 
beitragen?
Gast #4339003
Lesenswert?

Michael K. schrieb:
> Aber was an deinem Post sollte nun zur Lösung des Problems des TEs
> beitragen?

Früher hat man an solcher Stelle gesagt "Ohne Fleiß kein Preis".

Falls das hier eine zu komplizierte Metapher sein sollte, kann man auch 
sagen "vor dem Fragen einfachster Fragen sollte man sich selbst um das 
Verstehen der Dinge bemühen, kurzum selbständig werden."

W.S.
Gast #4340449
Lesenswert?

Wenn man immer nur im Internet andere nach der Lösung fragt, läuft man 
Gefahr, nur bestehendes Wissen zu reproduzieren. Damit sind der 
Innovation durch selbständiges Denken Tür und Tor versperrt.

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