Entfernung auf dem LCD
Teil des Abschnitts Displays und Sensoren der Arduino-Journey von Coddy. Lektion 23 von 24.
Ein Sensor und ein Bildschirm ergeben ein Instrument, das ohne Computer funktioniert: Hier misst der HC-SR04 und das LCD zeigt die Entfernung an.
Jeder Schritt stammt aus früheren Lektionen. Miss die Echozeit, rechne sie in Zentimeter um und gib sie mit der Einheit dahinter in der unteren Zeile aus:
int cm = duration * 0.034 / 2;
lcd.setCursor(0, 1);
lcd.print(cm);
lcd.print(" cm ");Die Leerzeichen nach cm sind wichtig. Wenn du von 150 cm auf 20 cm wechselst, ist der neue Text kürzer, und ohne sie würde der Bildschirm 20 cmm anzeigen. Hier wird die Entfernung als int gespeichert: Ganze Zentimeter lassen sich auf einem kleinen Bildschirm leichter ablesen.
Aufgabe
MittelDas LCD zeigt Distance: in der oberen Zeile an, und der Sketch misst die Echozeit. Zeige darunter die Entfernung an:
- wandle die Zeit in ganze Zentimeter um
- gib am Anfang der unteren Zeile die Zahl und dann
cmaus, zum Beispiel25 cm - überdecke übrige Zeichen mit Leerzeichen
Drücke Run, bewege das Objekt und klicke dann auf Check.
Probier es selbst
#include <LiquidCrystal.h>
// RS, E, D4, D5, D6, D7
LiquidCrystal lcd(12, 11, 5, 4, 3, 2);
const int trigPin = 9;
const int echoPin = 10;
void setup() {
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
lcd.begin(16, 2);
lcd.print("Distance:");
}
void loop() {
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
long duration = pulseIn(echoPin, HIGH);
// die Entfernung in Zentimetern berechnen und in der unteren Zeile anzeigen, zum Beispiel 25 cm
delay(200);
}
Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Alle Lektionen in Displays und Sensoren
Übe selbstständig: Arduino-Playground