Menu
CoddyTech

Odległość na LCD

Część sekcji Wyświetlacze i czujniki ścieżki Arduino w Coddy. Lekcja 23 z 24.

Czujnik i ekran tworzą urządzenie, które działa bez komputera: tutaj HC-SR04 mierzy odległość, a LCD ją wyświetla.

Każdy krok pochodzi z wcześniejszych lekcji. Zmierz czas echa, przelicz go na centymetry i wyświetl w dolnym wierszu, a za nim jednostkę:

int cm = duration * 0.034 / 2;

lcd.setCursor(0, 1);
lcd.print(cm);
lcd.print(" cm    ");

Spacje po cm mają znaczenie. Przy przejściu ze 150 cm na 20 cm nowy tekst jest krótszy i bez nich ekran wyświetliłby 20 cmm. Tutaj odległość jest przechowywana jako int: pełne centymetry łatwiej odczytać na małym ekranie.

challenge icon

Wyzwanie

Średni

Na górnym wierszu wyświetlacza LCD widnieje Distance:, a szkic mierzy czas powrotu echa. Wyświetl pod nim odległość:

  • zamień czas na pełne centymetry
  • na początku dolnego wiersza wyświetl liczbę, a następnie cm, na przykład 25 cm
  • zakryj pozostałe znaki spacjami

Naciśnij Run, przesuń obiekt, a następnie naciśnij Check.

Spróbuj swoich sił

#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);
  // oblicz odległość w centymetrach i wyświetl ją w dolnym wierszu, na przykład 25 cm
  delay(200);
}
quiz iconSprawdź się

Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.

Wszystkie lekcje w sekcji Wyświetlacze i czujniki

Poćwicz samodzielnie: Edytor online Arduino