Quelltext für die Ausgabe der Temperatur über das digitale Display
Completion requirements
Auf der nächsten Seite wird der Quelltext ausführlich erklärt. Der Quelltext für die Ausgabe der Temperatur über das digitale Display:
#include <OneWire.h>
#include <DallasTemperature.h>
#include <TM1637Display.h>
//Daten-Pin für den Temperatursensor festlegen
#define temperatureSensorPIN 32
//Konstanten für die Ausgabe der Temperatur über den Servomotor
#define freq 50
#define resolution 8
#define channel 1
#define servoPin 13
#define minTemp 15 //minimale Temperatur vom DS18B20: -55°C
#define maxTemp 35 //maximale Temperatur vom DS18B20: +125°C
//Daten- und Taktpin des Displays festlegen und Initialisierung des Displays
#define CLK 23
#define DIO 25
TM1637Display display(CLK, DIO);
//Temperatursensor initialisieren
OneWire temperatureSensorWire(temperatureSensorPIN);
DallasTemperature temperatureSensor(&temperatureSensorWire);
void setup()
{
//Temperatursensor starten
temperatureSensor.begin();
//Servo initialisieren
ledcSetup(channel, freq, resolution);
ledcAttachPin(servoPin, channel);
ledcWrite(channel, 20);
//Helligkeit des Displays einstellen
display.setBrightness(0x0f);
}
void loop()
{
//Temperatur in °C erfassen
temperatureSensor.requestTemperatures();
float tC = temperatureSensor.getTempCByIndex(0);
//Ansteuerung des Servomotors
int servoPos = map(tC, minTemp, maxTemp, 4, 33);
ledcWrite(channel, servoPos);
//Temperatur in °C mit einer Nachkommastelle auf dem Display anzeigen
display.showNumberDec(tC * 10);
//Temperatur in °C ohne Nachkommastelle auf dem Display anzeigen
//display.showNumberDec(tC * 1);
delay(500);
}Last modified: Friday, 24 July 2020, 12:17 PM