Arduino UNO R4 - Ultraschallsensor - OLED

In diesem Leitfaden lernen wir, wie man die Entfernung mit einem Ultraschallsensor misst und sie auf einem OLED-Display anzeigt.

Arduino UNO R4 Ultraschallsensor OLED

Über OLED und Ultraschallsensor

Lerne in diesen Tutorials mehr über OLED-Displays und Ultraschallsensoren (Pinbelegung, Funktionen, Programmierung):

Verdrahtungsdiagramm

Arduino UNO R4 Ultraschallsensor OLED Verdrahtungsdiagramm

Dieses Bild wurde mit Fritzing erstellt. Klicken Sie, um das Bild zu vergrößern.

Siehe Der beste Weg, den Arduino Uno R4 und andere Komponenten mit Strom zu versorgen.

Arduino UNO R4 Code - Ultraschallsensor - OLED

/* * Dieser Arduino UNO R4 Code wurde von newbiely.de entwickelt * Dieser Arduino UNO R4 Code wird der Öffentlichkeit ohne jegliche Einschränkung zur Verfügung gestellt. * Für vollständige Anleitungen und Schaltpläne besuchen Sie bitte: * https://newbiely.de/tutorials/arduino-uno-r4/arduino-uno-r4-ultrasonic-sensor-oled */ #include <Wire.h> #include <Adafruit_GFX.h> #include <Adafruit_SSD1306.h> #define SCREEN_WIDTH 128 // OLED display width, in pixels #define SCREEN_HEIGHT 64 // OLED display height, in pixels #define TRIG_PIN 5 // The Arduino UNO R4 pin connected to Ultrasonic Sensor's TRIG pin #define ECHO_PIN 9 // The Arduino UNO R4 pin connected to Ultrasonic Sensor's ECHO pin Adafruit_SSD1306 oled(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, -1); // create SSD1306 display object connected to I2C String tempString; void setup() { Serial.begin(9600); // initialize OLED display with address 0x3C for 128x64 if (!oled.begin(SSD1306_SWITCHCAPVCC, 0x3C)) { Serial.println(F("SSD1306 allocation failed")); while (true); } delay(2000); // wait for initializing oled.clearDisplay(); // clear display oled.setTextSize(2); // text size oled.setTextColor(WHITE); // text color oled.setCursor(0, 10); // position to display tempString.reserve(10); // to avoid fragmenting memory when using String } void loop() { // generate 10-microsecond pulse to TRIG pin digitalWrite(TRIG_PIN, HIGH); delayMicroseconds(10); digitalWrite(TRIG_PIN, LOW); // measure duration of pulse from ECHO pin long duration_us = pulseIn(ECHO_PIN, HIGH); // calculate the distance float distance_cm = 0.017 * duration_us; // print the value to Serial Monitor Serial.print("distance: "); Serial.print(distance_cm); Serial.println(" cm"); tempString = String(distance_cm, 2); // two decimal places tempString += " cm"; Serial.println(tempString); // print the temperature in Celsius to Serial Monitor oledDisplayCenter(tempString); // display temperature on OLED } void oledDisplayCenter(String text) { int16_t x1; int16_t y1; uint16_t width; uint16_t height; oled.getTextBounds(text, 0, 0, &x1, &y1, &width, &height); // display on horizontal and vertical center oled.clearDisplay(); // clear display oled.setCursor((SCREEN_WIDTH - width) / 2, (SCREEN_HEIGHT - height) / 2); oled.println(text); // text to display oled.display(); }

Schnelle Schritte

Folgen Sie diesen Anweisungen Schritt für Schritt:

  • Wenn dies das erste Mal ist, dass Sie den Arduino Uno R4 WiFi/Minima verwenden, lesen Sie die Anleitung zur Einrichtung der Umgebung für Arduino Uno R4 WiFi/Minima in der Arduino-IDE (BASE_URL/tutorials/arduino-uno-r4/arduino-uno-r4-software-installation).
  • Verbinden Sie das Arduino Uno R4-Board gemäß dem bereitgestellten Diagramm mit dem Ultraschallsensor und dem OLED-Display.
  • Verbinden Sie das Arduino Uno R4-Board über ein USB-Kabel mit Ihrem Computer.
  • Starten Sie die Arduino-IDE auf Ihrem Computer.
  • Wählen Sie das passende Arduino Uno R4-Board aus (z. B. Arduino Uno R4 WiFi) und den COM-Port.
  • Klicken Sie auf das Bibliotheken-Symbol, das sich auf der linken Seite der Arduino-IDE befindet.
  • Geben Sie “SSD1306” in das Suchfeld ein, und suchen Sie nach der von Adafruit erstellten SSD1306-Bibliothek.
  • Drücken Sie den Installieren-Button, um die Bibliothek hinzuzufügen.
Arduino UNO R4 OLED-Bibliothek
  • Sie müssen zusätzliche Bibliotheksabhängigkeiten installieren.
  • Klicken Sie auf die Schaltfläche Alle installieren, um alle erforderlichen Bibliotheken zu installieren.
Arduino UNO R4 Adafruit GFX-Sensor-Bibliothek
  • Kopieren Sie den Code und öffnen Sie ihn in der Arduino IDE
  • Drücken Sie den Upload-Button in der Arduino IDE, um den Code auf den Arduino UNO R4 zu übertragen
  • Winken Sie Ihre Hand vor dem Sensor
  • Prüfen Sie das Ergebnis auf dem OLED-Display und dem Serial Monitor

※ Notiz:

Der Code zentriert den Text sowohl horizontal als auch vertikal auf dem OLED-Display. Für weitere Details siehe den Leitfaden, wie man Text auf dem OLED-Display zentriert, unter How to vertical/horizontal center on OLED.

Video Tutorial

Wir erwägen die Erstellung von Video-Tutorials. Wenn Sie Video-Tutorials für wichtig halten, abonnieren Sie bitte unseren YouTube-Kanal , um uns zu motivieren, die Videos zu erstellen.

※ UNSERE NACHRICHTEN

  • Sie können gerne den Link zu diesem Tutorial teilen. Bitte verwenden Sie jedoch unsere Inhalte nicht auf anderen Websites. Wir haben viel Mühe und Zeit in die Erstellung der Inhalte investiert, bitte respektieren Sie unsere Arbeit!