Go Down

Topic: RTC 1307 lässt sich nicht stellen (Read 724 times) previous topic - next topic

Rtdler

Hallo zusammen,

ich hab als blutiger Anfänger mal wieder ein Problem  :smiley-roll-blue: !

Ich habe mir ein RTC DS1307 Modul bestellt und angeschlossen. Er läuft als Zeitgeber, aber ich bekomme ihn nicht neu eingestellt. Sprich das Set funktioniert nicht.

Ich nutze die RTC Bibliothek aus der Time.h com Playground. Die Libs laufen alle
Code: [Select]
#include <LiquidCrystal.h>              // Bibliothek für LCD
#include <Time.h>                       // Bibliothek für Uhrzeit
#include <IRremote.h>                   // Bibliothek für IR-Empfänger
#include <Wire.h>                       // Lib für I2C
#include <DS1307RTC.h>                  // a basic DS1307 library that returns time as a time_t


Mein Setup müsste soweit ich die Beispiele verstehe auch richtig sein.

Quote

void setup()
{                
  //pinMode(menuebutton, INPUT);      // Starte Pin 8 als Input (für Taster)
  lcd.begin(20, 4);                   // Set up the LCD's number of columns and rows: 
  lcd.print(stdText);                 // Startmeldung auf Display 
  //setTime(12,0,0,1,1,11);             // Zeit ist 12 Uhr mittags am 1.1.2011
  Serial.begin(9600);                 // Startet serielle Schnittstelle für seriellen Monitor
  irrecv.enableIRIn();                // Start the receiver
  pinMode(STATUS_PIN, OUTPUT);        // Legt Pin 13 als Output fest (für interne LED)
  setSyncProvider(RTC.get);           // the function to get the time from the RTC
    if(timeStatus()!= timeSet)
     Serial.println("Unable to sync with the RTC");
  else
     Serial.println("RTC has set the system time");
}



Ich habe in meiner gesamten Logik ein Menü aufgebaut, welches es mir erlaubt verschiedene Timer über eine Infrarotfernbedienung zu steuern. Das setzen der Zeiten in der Softclock läuft auch fehlerfrei.

Hierfür habe ich ohne RTC diese Zeile aus der time.h verwendet
Code: [Select]
  setTime(Anstunde[DeviceID],Anminute[DeviceID],0,8,4,23);

Jetzt habe ich es damit versucht, aber er nimmt es einfach nicht. Meine internen Variablen Anstunde und Anminute speichert er richtig, aber er überträgt sie nicht in die time t oder speichert sie auch nicht in der RTC. Ich bneutze folgenden Code dafür

Code: [Select]
           setTime(Anstunde[DeviceID],Anminute[DeviceID],0,8,4,23);
              time_t t =now();
              RTC.set(t);


Wo liegt mein Fehler? Wie kann ich die im Menü gespeicherten Werte an die RTC übertragen?

Rtdler

Danke an alle aber hat sich erledigt...

Ich hatte die Kabel für falsch angeschlossen ... beim Mega ist es Port 21/20

uwefed

Ich hätte Dir nicht helfen können.  ;) ;)

Bei Deiner Beschreibung wäre mir nie die Idee gekommen, daß die RTC nicht angesprochen wird.

Grüße Uwe

Go Up