Quelltext für die Ausgabe der Temperatur über das digitale Display
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