Ziel des Projekts
Die Daten des Temperatursensors DS18B20 sollen im Seriellen Monitor und auf einem LCD angezeigt werden.


Benötigte Bibliotheken



Das Programm
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 |
// benötigte Bibliotheken #include "OneWire.h" #include "DallasTemperature.h" #include "LCDIC2.h" // 4-zeiliges LCD LCDIC2 lcd(0x27, 20, 4); // Pin des Sensors an OneWire übergeben #define ONE_WIRE_BUS 7 // OneWire-Instanz erstellen OneWire Anschluss (ONE_WIRE_BUS); // OneWire-Instanz Anschluss an den Sensor übergeben DallasTemperature TemperaturSensor(&Anschluss); void setup() { // Temperatursensor starten TemperaturSensor.begin(); Serial.begin(9600); // LCD starten lcd.begin(); // Cursor "verstecken" lcd.setCursor(false); } void loop() { TemperaturSensor.requestTemperatures(); // getTempCByIndex(0) -> 0 = 1. angeschlossener Sensor float TemperaturLesen = TemperaturSensor.getTempCByIndex(0); // überprüfen, ob das Lesen der Temperatur erfolgreich war if (TemperaturLesen != DEVICE_DISCONNECTED_C) { String Temperatur = String(TemperaturLesen); // . in , umwandeln Temperatur.replace(".", ","); // Ausgabe Serieller Monitor Serial.print("Temperatur"); Serial.println(Temperatur + " °C"); lcd.setCursor(0, 0); lcd.print("Temperatur"); lcd.setCursor(0, 1); lcd.print(Temperatur + " \337C "); } delay(3000); } |
Letzte Aktualisierung: