Forum: Mikrocontroller und Digitale Elektronik Display zeigt falsche Werte an (Arduino)


von Arduino (Gast)


Lesenswert?

Hallo,

zuerst hier mein Code:
1
#include <LiquidCrystal.h>
2
LiquidCrystal lcd(7, 8, 9, 10, 11 , 12);
3
4
int motor = 6;
5
int poti = A0;
6
int wert = 0;
7
8
void setup() 
9
{
10
lcd.begin(16, 2);
11
lcd.setCursor(0,0);
12
lcd.write("Geschwindigkeit: ");
13
pinMode(motor, OUTPUT);
14
}
15
void loop() {
16
17
wert = analogRead(poti); 
18
delay(100);
19
analogWrite(motor, wert / 4);
20
delay(100);
21
lcd.setCursor(0,1);
22
delay(100);
23
lcd.print(wert / 20);
24
delay(100);
25
26
}

Mit meinem Arduino und einem Mosfet wird ein Motor angetrieben. Drehzahl 
lässt sich über ein Poti bestimmen und die aktuelle Geschwindigkeit wird 
auf dem Display ausgegeben.

Erreicht der Motor nun eine zweistellige Geschwindigkeit und wird das 
Poti dann ganz nach links gedreht, so bleibt die zweite Zahl einfach auf 
dem Display stehen.

Bin ich z.B. bei 43 und drehe schnell nach links, so steht dann auf dem 
Display 03.

Wie kann ich das beheben? Und gibt es sonst noch etwas am Code, was man 
verbessern kann?

von g457 (Gast)


Lesenswert?

> Wie kann ich das beheben?

Mit Leerzeichen überschreiben.

von Arduino (Gast)


Lesenswert?

g457 schrieb:
> Mit Leerzeichen überschreiben.

Wie genau?

von lächler (Gast)


Lesenswert?

Vor das
1
lcd.print(wert / 20);

kommt ein
1
lcd.print("     ");

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.