RTC3231 Aufbau

Von der RTC DS3231 die Temperatur auslesen mit dem Arduino

Die RTC DS3231 kompensiert die Quarz Frequenzänderung mit der Temperatur. Die Temperatur wird alle 64 Sekunden neu gemessen. Man kann diese Quarz Temperatur auslesen.

Hier das Arduino Programm dazu

// RTC DS3231 Temperatur auslesen
//
// Matthias Busse 9.11.2016 Version 1.0

#include "Wire.h"
#define DS3231_ADDRESSE 0x68

void setup() {
  Wire.begin();
  Serial.begin(38400);
}

void loop() {
  Serial.println(tempDS3231());
  delay(64000); // alle 64  Sekunden wird die Temperatur neu berechnet
}

float tempDS3231() {
  // Die Temperatur des DS3231 auslesen  
  float temp;
  int msb, lsb;
  Wire.beginTransmission(DS3231_ADDRESSE);
  Wire.write(0x11); // DS3231 Register zu 11h
  Wire.endTransmission();
  Wire.requestFrom(DS3231_ADDRESSE, 2); // 2 Byte Daten vom DS3231 holen
  msb = Wire.read();
  lsb = Wire.read();
  temp=((msb << 2) + (lsb >> 6) ) /4.0;
  return temp;
}

Die Verkabelung ist hier beschrieben.

von Matthias Busse

Weitere Beiträge zum DS3231:
Den Arduino Quarztakt auf 3ppm genau bestimmen mit der DS3231 RTC
Rechteck 1Hz (+-2ppm) ausgeben mit dem RTC DS3231 und dem Arduino
Die Uhrzeit des RTC DS3231 Modul vom Arduino einstellen
Die Uhrzeit des RTC DS3231 Modul vom Arduino auslesen

7 Gedanken zu „Von der RTC DS3231 die Temperatur auslesen mit dem Arduino

  1. Pingback: Den Arduino Quarztakt auf 3ppm genau bestimmen mit der DS3231 RTC | Shelvin – Elektronik ausprobiert und erläutert

  2. Pingback: Rechteck 1Hz (+-2ppm) ausgeben mit dem RTC DS3231 und dem Arduino | Shelvin – Elektronik ausprobiert und erläutert

  3. Pingback: Die Uhrzeit des RTC DS3231 Modul vom Arduino einstellen | Shelvin – Elektronik ausprobiert und erläutert

  4. Pingback: Die Uhrzeit des RTC DS3231 Modul vom Arduino auslesen | Shelvin – Elektronik ausprobiert und erläutert

  5. Joni

    Hi,
    Ich hab mich heute mal ran gemacht, das Echtzeituhrmodul auszutesten, unter anderem hab ich auch die Temperatur ausgelesen und mit dem Ergebnis bin ich so nicht ganz zufrieden. Die vom Arduino gelesene Temperatur ist so um ca. 4-5°C größer als die tatsächliche Temperatur. Ich ziehe jetzt im Sketch standardmäßig 4°C von der gelesenen Temperatur ab. Das finde ich nicht so ganz zufriedenstellend, gibt es da noch andere Möglichkeiten wie ich auf eine halbwegs korrekte Temperatur komme oder hat jemand von euch ähnliche Erfahrungen?
    Grüße Joni

    Antworten
  6. Kurt

    Hi,
    kommt immer darauf an wo ich die Temperatur messe.
    Der Sensor sitzt im Chip, was du willst wäre ein Außenthermometer.
    d.h. Die Temperatur bezieht sich auf das innere des Chips.

    Antworten

Schreibe einen Kommentar zu Mike Ossiman Antworten abbrechen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.