Forum: Mikrocontroller und Digitale Elektronik LCD und wertbedingter Text


von Alexander K. (bandit1200)


Angehängte Dateien:

Lesenswert?

hallo Leute,
ich bin gerade dabei mir eine kleine Spielerei für meinen Turbolader zu 
bauen und habe ein kleines Problem das ich nicht in den Griff kriege.
Ich möchte, dass bei einem bestimmten Wert auf meinem LCD entweder OK 
oder !! eingeblendet wird. Aber irgendwo übersehe ich ergendwas.

ich habe auch schon versucht den Wert meines Poti zu mappen, doch das 
ging völlig daneben, der Wert hing dann irgendwo bei 67 rum und es tat 
sich nichts. Was übersehe ich in meiner IF Schleife? OK wird angezeigt 
und die Werte werden auch angezeigt.

von H.Joachim S. (crazyhorse)


Lesenswert?

Was ist ne ino-Datei?

von 4toTakoe (Gast)


Lesenswert?

if(potPin1 >= 100)

Das ist falsch. Müsste auch if(analogRead(potPin1) >= 100) heißen.

von Alexander K. (bandit1200)


Lesenswert?

eine Arduino Datei

von Alexander K. (bandit1200)


Lesenswert?

4toTakoe schrieb:
> if(potPin1 >= 100)
>
> Das ist falsch. Müsste auch if(analogRead(potPin1) >= 100) heißen.

Das gibt es doch nicht... Grüble da seit mehreren Stunden und dann ist 
das nur so einen Kleinigkeit.

Dankeschön

von Karl H. (kbuchegg)


Lesenswert?

Das
1
void loop()
2
{
3
      lcd.clear();
4
      lcd.setCursor(0,0);

wird schön flackern.
Schreib die konstanten Texte nur EINMAL, bei Programmstart, aufs LCD. 
Danach schreibst du nur noch die geänderten Werte hin, alles andere 
bleibt stehen.

Ein regelmässiges lcd.clear() bringt dir nichts ausser dass im 
Extremfall der Kontrast am LCD abnimmt (weil zwischendruch die Anzeige 
komplett leer ist) bzw. dass die ganze Sache zu flackern anfängt.

Beschäftige dich lieber damit, wie du es anstellen musst, so dass beim 
Überschreiben von Zahlenwerten auch alle Stellen gelöscht werden (durch 
Leerzeichen überschrieben werden), damit bei einem Wechsel des 
Zahlenwertes von 100 auf 99 (also von 3-stellig auf 2-stellig) nichts 
Falsches auf der Anzeige übrig bleibt. Also das nicht 990 auf der 
Anzeige steht, wenn der Zahlenwert sich von 100 auf 99 ändert.
Beschäftige dich weiters damit, wie du mit deinen Mitteln die Ausgabe 
von Zahlen formatieren kannst, so dass die Einerstelle an der Anzeige 
immer an derselben Stelle steht. Wenn die Anzeige von 100 auf 99 
wechselt, dann soll die Zahl nicht an der Anzeige hin und her hüpfen. 
Die Einerstelle der Zahl soll immer an derselben Position am LCD stehen. 
Alles andere ist nämlich sehr schnell sehr ermüdend zu Lesen, weil man 
dauernd mit den Augen auf der 'Suche' nach der Zahl ist. Speziell dann, 
wenn man im Grenzbereich ist, und die Anzeige in schneller Folge 
zwischen 100 und 99 wechselt.

von bcd (Gast)


Lesenswert?

Alexander Kr schrieb:
> Was übersehe ich in meiner IF Schleife?

http://www.if-schleife.de/

von Alexander K. (bandit1200)


Lesenswert?

Karl Heinz Buchegger schrieb:
> bei einem Wechsel des
> Zahlenwertes von 100 auf 99 (also von 3-stellig auf 2-stellig) nichts
> Falsches auf der Anzeige übrig bleibt.

damit bin ich im Moment dran... habe mir das Arduinoboard erst vor ein 
Paar Tagen gekauft. Ich bin auch über die kleinen Erfolge sehr 
glücklich.

von Alexander K. (bandit1200)


Angehängte Dateien:

Lesenswert?

Karl Heinz Buchegger schrieb:
> Beschäftige dich lieber damit, wie du es anstellen musst, so dass beim
> Überschreiben von Zahlenwerten auch alle Stellen gelöscht werden (durch
> Leerzeichen überschrieben werden), damit bei einem Wechsel des
> Zahlenwertes von 100 auf 99 (also von 3-stellig auf 2-stellig) nichts
> Falsches auf der Anzeige übrig bleibt.

für alle die es interessiert. ich habe die if Abfrage rausgenommen und 
dafür das Flackern und die Wertänderung korrigiert.

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.