Tem­pe­ra­tur Sen­sor SHT Seri­el­ler Monitor

SHT20/SHT21 Ardui­no UNO

#include "Wire.h"
#include "SHT2x.h"

// sht Name zuordnen
SHT2x sht;

void setup()
{
  Serial.begin(9600);

  // auf serielle Verbindung warten
  while (!Serial);
  delay(1000);
  Wire.begin();
  
  // sht-Sensor startem
  if(sht.begin()) Serial.println("Sensor gestartet");
  else Serial.println("Sensor nicht gefunden!");
}


void loop() 
{
  // Sensor lesen
  sht.read();

  // Daten im Seriellen Monitor anzeigen
  // gelesene Temperatur in String mit 2 Nachkommastellen umwandeln
  String gemesseneTemperatur = String(sht.getTemperature(), 1);

  // . durch , ersetzen
  gemesseneTemperatur.replace(".", ",");

  // Temperatur anzeigen
  Serial.println("Temperatur: " + gemesseneTemperatur + "°C");

  // gelesene Luftfeuchtigkeit in String mit 2 Nachkommastellen umwandeln
  String gemesseneLuftfeuchtigkeit = String(sht.getHumidity(), 1);

  // . durch , ersetzen
  gemesseneLuftfeuchtigkeit.replace(".", ",");

  // Luftfeuchtigkeit anzeigen
  Serial.println("Luftfeuchtigkeit: " + gemesseneLuftfeuchtigkeit + "%");

  Serial.println("------------------------");

  delay(2000);
}

SHT20 ESP32-Wroom

#include "SHT2x.h"

// ESP32 I2C-Pins
#define SDA 21
#define SCL 22

// sht Wire zuordnen
SHT2x sht(&Wire);

void setup()
{
  Serial.begin(9600);

  // auf serielle Verbindung warten
  while (!Serial);
  delay(1000);

  // Wire mit den Parametern für I2C starten
  Wire.begin(SDA, SCL);

  // sht-Sensor startem
  if(sht.begin()) Serial.println("Sensor gestartet");
  else Serial.println("Sensor nicht gefunden!");
}

void loop() 
{
  // Sensor lesen
  sht.read();

  // Daten im Seriellen Monitor anzeigen
  // gelesene Temperatur in String mit 2 Nachkommastellen umwandeln
  String gemesseneTemperatur = String(sht.getTemperature(), 1);

  // . durch , ersetzen
  gemesseneTemperatur.replace(".", ",");

  // Temperatur anzeigen
  Serial.println("Temperatur: " + gemesseneTemperatur + "°C");

  // gelesene Luftfeuchtigkeit in String mit 2 Nachkommastellen umwandeln
  String gemesseneLuftfeuchtigkeit = String(sht.getHumidity(), 1);

  // . durch , ersetzen
  gemesseneLuftfeuchtigkeit.replace(".", ",");

  // Luftfeuchtigkeit anzeigen
  Serial.println("Luftfeuchtigkeit: " + gemesseneLuftfeuchtigkeit + "%");

  Serial.println("------------------------");

  delay(2000);
}

SHT40

#include "Adafruit_SHT4x.h"

// Name des Sensors (sht4)
Adafruit_SHT4x sht4 = Adafruit_SHT4x();

void setup() 
{
  Serial.begin(9600);

  // auf den Begin der Seriellen Kommunikation warten
  while (!Serial); 
  delay(1000);

  Serial.println("SHT40 Test");
  if (!sht4.begin()) 
  {
    Serial.println("Sensor SHT40 nicht gefunden");

    // Programm in Endlosschleife
    while (1) delay(1);
  }
  Serial.println("Sensor gefunden!");

  // Genauigkeit bestimmen
  sht4.setPrecision(SHT4X_HIGH_PRECISION);
  switch (sht4.getPrecision()) 
  {
     case SHT4X_HIGH_PRECISION: 
       Serial.println("Hohe Genauigkeit");
       break;
     case SHT4X_MED_PRECISION: 
       Serial.println("Mittlere Genauigkeit");
       break;
     case SHT4X_LOW_PRECISION: 
       Serial.println("Niedrige Genauigkeit");
       break;
  }
}

void loop() 
{
  // Sensorwerte erfassen (Luftfeuchtigkeit, Temperatur)
  sensors_event_t Luftfeuchtigkeit, Temperatur;
  
  // neue Messdaten holen
  sht4.getEvent(&Luftfeuchtigkeit, &Temperatur);

  // gemessene Temperatur in String umwandeln
  String gemesseneTemperatur = String(Temperatur.temperature);

  // . durch , ersetzen
  gemesseneTemperatur.replace(".", ",");

  // Temperatur anzeigen
  Serial.println("Temperatur: " + gemesseneTemperatur + "°C");

  // gemessene Luftfeuchtigkeit in String umwandeln
  String gemesseneLuftfeuchtigkeit = String(Luftfeuchtigkeit.relative_humidity);

  // . durch , ersetzen
  gemesseneLuftfeuchtigkeit.replace(".", ",");

  // Luftfeuchtigkeit anzeigen
  Serial.println("Luftfeuchtigkeit: " + gemesseneLuftfeuchtigkeit + "%");

  Serial.println("------------------------");
  delay(2000);
}

Letzte Aktualisierung: 5. Mrz 2024 @ 20:31