DS1307 Zeit stellen

Hallo,

wollte heute im Zuge der Zeitumstellung mein DS1307 stellen. Dazu hab ich einfach einen kleinen Sketch geschrieben...

#include <Wire.h>

#include <DS1307new.h>

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

RTC.fillByYMD(2013,3,31);
RTC.fillByHMS(19,17,0);

RTC.startClock();


RTC.getTime();
Serial.print(RTC.hour); 
Serial.print(":");
Serial.print(RTC.minute);
Serial.print(":");
Serial.println(RTC.second);
Serial.print(RTC.day);
Serial.print(".");
Serial.print(RTC.month);
Serial.print(".");
Serial.print(RTC.year);
Serial.print("   ");
Serial.print(RTC.dow);
}

void loop()
{
  
  
}

Laut Konsole, haben wir jetzt nur noch 00:00:00 2046.... Bin echt am verzweifeln. Woran liegt das? Vorneweg: Ja, die RTC ist korrekt angeschlossen.

Danke für eure Hilfe.

Im Beispiel der von Dir verwendeten Bibliothek wird folgendes gemacht:

  // RTC.getRAM(54, (uint8_t *)&TimeIsSet, sizeof(uint16_t));
  // if (TimeIsSet != 0xaa55)
  {
    RTC.stopClock();
        
    RTC.fillByYMD(2011,4,8);
    RTC.fillByHMS(22,7,0);
    
    RTC.setTime();
      //TimeIsSet = 0xaa55;
      //RTC.setRAM(54, (uint8_t *)&TimeIsSet, sizeof(uint16_t));
    RTC.startClock();
  }

Die von mir auskommentierten Zeilen kontrollieren ob ein gewisser Wert im RAM vorhanden ist (dies ist nicht der Fall, wenn die RTC die Zeit verloren hat) und setzt in diesem Fall die Zeit.
Die DS1307 hat auch ein Bit das die Gültigkeit der Zeit anzeigt. Auch kann man dieses dazu verwenden um die Zeit automatisch bei Verlust zu setzen (immer auf eine falsche einprogrammierte Zeit) Die Verwendete ibliothek hat diese Funktion nicht.

Laut Beschreibung Google Code Archive - Long-term storage for Google Code Project Hosting. müßte die Version 1.24 die Umschaltung der Sommer-Winterzeit automatisch machen.

In dieser Bibliotek Understanding the Code | DS1307 Real Time Clock Breakout Board Kit | Adafruit Learning System werden die Systemvariablen TINE und DATE verwendet um die Zeit des PCs automatisch zu erhalten. Die Zeit / Datum sind dann die Zeit / Datum im Zeitpunk der Kompilierung des Sketches.

Grüße Uwe