Bemerkung
Hallo und willkommen in der SunFounder Raspberry Pi & Arduino & ESP32 Enthusiasten-Gemeinschaft auf Facebook! Tauchen Sie tiefer ein in die Welt von Raspberry Pi, Arduino und ESP32 mit anderen Enthusiasten.
Warum beitreten?
Expertenunterstützung: Lösen Sie Nachverkaufsprobleme und technische Herausforderungen mit Hilfe unserer Gemeinschaft und unseres Teams.
Lernen & Teilen: Tauschen Sie Tipps und Anleitungen aus, um Ihre Fähigkeiten zu verbessern.
Exklusive Vorschauen: Erhalten Sie frühzeitigen Zugang zu neuen Produktankündigungen und exklusiven Einblicken.
Spezialrabatte: Genießen Sie exklusive Rabatte auf unsere neuesten Produkte.
Festliche Aktionen und Gewinnspiele: Nehmen Sie an Gewinnspielen und Feiertagsaktionen teil.
👉 Sind Sie bereit, mit uns zu erkunden und zu erschaffen? Klicken Sie auf [hier] und treten Sie heute bei!
Lektion 18: Temperatursensormodul (DS18B20)
In dieser Lektion lernen Sie, wie Sie Temperaturdaten von einem DS18B20-Temperatursensormodul mit einem ESP32-Entwicklungsboard auslesen. Wir verwenden die DallasTemperature-Bibliothek, um mit dem Sensor zu kommunizieren und die Temperaturwerte sowohl in Celsius als auch in Fahrenheit im seriellen Monitor anzuzeigen.
Benötigte Komponenten
Für dieses Projekt benötigen wir die folgenden Komponenten.
Es ist definitiv praktisch, ein ganzes Kit zu kaufen, hier ist der Link:
Name |
ITEMS IN THIS KIT |
LINK |
|---|---|---|
Universal Maker Sensor Kit |
94 |
Sie können sie auch einzeln über die unten stehenden Links kaufen.
Component Introduction |
Purchase Link |
|---|---|
ESP32 & Development Board |
|
- |
|
Verdrahtung
Code
Bemerkung
Um die Bibliothek zu installieren, verwenden Sie den Arduino Library Manager und suchen Sie nach „DallasTemperature“ und installieren Sie diese.
Code-Analyse
Bibliothekseinbindung
Die Einbindung der OneWire- und DallasTemperature-Bibliotheken ermöglicht die Kommunikation mit dem DS18B20-Sensor.
Bemerkung
Um die Bibliothek zu installieren, verwenden Sie den Arduino Library Manager und suchen Sie nach „DallasTemperature“ und installieren Sie diese.
#include <OneWire.h> #include <DallasTemperature.h>
Definition des Sensordaten-Pins
Der DS18B20 ist mit dem digitalen Pin 25 des Arduino verbunden.
#define ONE_WIRE_BUS 25Initialisierung des Sensors
Die OneWire-Instanz und das DallasTemperature-Objekt werden erstellt und initialisiert.
OneWire oneWire(ONE_WIRE_BUS); DallasTemperature sensors(&oneWire);
Setup-Funktion
Die
setup()-Funktion initialisiert den Sensor und richtet die serielle Kommunikation ein.void setup(void) { sensors.begin(); // Start up the library Serial.begin(9600); }
Hauptschleife
In der
loop()-Funktion fordert das Programm Temperaturmesswerte an und gibt sie sowohl in Celsius als auch in Fahrenheit aus.void loop(void) { sensors.requestTemperatures(); Serial.print("Temperature: "); Serial.print(sensors.getTempCByIndex(0)); Serial.print("℃ | "); Serial.print((sensors.getTempCByIndex(0) * 9.0) / 5.0 + 32.0); Serial.println("℉"); delay(500); }