Testprogramm 3 - Temperaturmessung
Das Programm wird um einen Temperatursensor erweitert, der über die 1Wire-Schnittstelle angeschaltet werden soll. Am ESP32 wird der GPIO D5 verwendet. Das Bussignal DATA muss mit einem Pullupwiderstand nach +3,3 V verbunden werden. Der AUsschnitt aus dem Stromlauplan zeigt die nötigen Verbindungen.
Vor Implementierung der Programmergänzungen wird ein neuer Git-Commit durchgeführt, damit der aktuelle Zustand festgehalten wird.
Anschließend erfolgt die Installation der Bibliotheken über platformIO.
-
milesburton/DallasTemperature@^3.11.0
- paulstoffregen/OneWire@^2.3.8
Headerdatei my_onewire.h
Für die 1Wire-Busfunktionen und die Temperaturmessungen
wird eine sepatare Hedaerdatei angelegt.
Steuerungsdatei my_onewire.cpp
Die Steuerungsfunktion für den Temperaturfühler enthält je
eine Funktion
- zur Suche von 1W-Devices
- zum Starten des 1W-Sensors
-
zur Messung der Temperatur und Rückgabe eines Float-Wertes in °C.
Sensoranschluss
Der Anschluss an den ESP32 erfolgt über Pin D5. Ein
Pull-up-Widerstand nach 3,3 V ist erforderlich.
Im Programmcode wird die
Temperatur ermittelt und als Float-Wert zurückgegeben.
Im Hauptprogramm wird der Messung und Anzeige ergänzt. Als
Ergebnis werden am LCD nun die Tastenzustände von Testfunktion 2 und die
Temperatur abwechselnd dargestellt. Zur sinnvollen Praxisanwendung müssen diese
unterschiedlichen Programmteile später über Usereingaben getrennt schaltbar
sein.
Als Abschluss dieses Programmierschrittes wird über die
Versionsverwaltung Git wieder ein commit durchgeführt.Im Branch
"grundfunktionen" sind somit alle bisherigen Versionsstufen reproduzierbar.