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
Pingback: Den Arduino Quarztakt auf 3ppm genau bestimmen mit der DS3231 RTC | Shelvin – Elektronik ausprobiert und erläutert
Pingback: Rechteck 1Hz (+-2ppm) ausgeben mit dem RTC DS3231 und dem Arduino | Shelvin – Elektronik ausprobiert und erläutert
Pingback: Die Uhrzeit des RTC DS3231 Modul vom Arduino einstellen | Shelvin – Elektronik ausprobiert und erläutert
Pingback: Die Uhrzeit des RTC DS3231 Modul vom Arduino auslesen | Shelvin – Elektronik ausprobiert und erläutert
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
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.
Hallo, der Temperatursensor dient dafür um die Genauigkeit der Uhr bzw. der Taktfrequenz zu erhöhen. Für die Zimmertemperatur zu messen, ist der Chip nicht geeignet. Besten Gruß Mike