PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Verbindungsproblem mit DS1307?



Kampi
13.07.2010, 08:09
Ich habe eine RTC über I2C an einen Mega128 angeschlossen.
Über UART mach ich die Zeiteinstellung. Nur wenn ich die Zeit im Terminalprogramm einstelle und etwas warte bevor ich bestätige und die Daten an den Controller sende gibt mir die RTC statt wie z.b. 8/5/23 nur 165/165/165 aus. Sobald ich aber die Zeit ohne das Warten eingebe ließt er die Zeit richtig aus.
Das warten mach ich aus dem Grund, weil ich möchte das die DS1307 selbst im Sekundentakt synchron zu einer anderen Uhr läuft. Und diese Wartepausen dürfen auch gerade mal 10 Sekunden lang sein. Sobald ich länger warte kommt wieder nur überall 165/165/165.

Jetzt meine Frage:
Ist das ein Fehler im Terminalprogramm das, das nach einigen Sekunden ohne Aktivität die Verbindung pausiert?
Oder ist das ein Fehler der RTC?[/code]

PICture
13.07.2010, 08:50
Ich kenne dein RTC nich detailiert und bin gewöhnt bei komplizierten IC's ihre Eigenschaften so wie sie sind anzunehmen und das übrige Schaltung und dazugehörige Software dafür anzupassen. Als Fehler nehme ich nur Verhalten, das mit zugehörigem Datenblatt nicht überein stimmt.

MfG

Kampi
13.07.2010, 09:07
Naja also ganz ohne Funktion ist die RTC ja nicht. Sie arbeitet schon richtig, nur wenn ich bei der Eingabe der Zeit halt warte um auf die nächste Minute zu warten, damit der Sekundencounter synchron mit meiner PC Uhr läuft spuckt die RTC 165:165:165.
Wobei ich mittlerweile glaube das der Wert 165 irgendein Registerinhalt der RTC ist, da ich denselben Wert gestern auch hatte, weil ich im Programm ein Nack vergessen habe. Da hat der Controller auch alle zwei Sekunden 165 ausgelesen.

Kampi
13.07.2010, 09:53
mmh....hab jetzt meinen "alten" Code genommen und da funktioniert es so wie ich will *kopfkratz*

PICture
13.07.2010, 10:03
So wie ich es vermute, solte das RTC ab und zu mit DCF sychroniesiert werden. Wenn die RTC Uhr quarzgesteuert ist, reicht es üblicherweise ein mal pro Tag in der Nacht gegen 2 Uhr machen. Dafür braucht die Uhr doch nicht auf DCF warten, weil man schon geprüfte Zeit und Datum nur einmal schicken braucht. Ich würde die RTC Uhr sicher nicht zum warten zwingen, wenn es Probleme macht.

So wie ich es gerade gesehen habe, klappt es schon. :)

MfG

Kampi
13.07.2010, 10:11
Ja ich habe nochmal den Code von gestern über AVR - Studio aufgespielt (also die Hex Datei), weil der PC hier keine Bascom Vollversion hat :D
und siehe da es funktioniert problemlos.
Dabei bin ich mir sicher das der Code der vorher drauf war genau derselbe war :-k
Aber sicher weiß ich es nicht mehr war gestern schon spät wo ich das gemacht habe 8-[
Werd ich nachher Zuhause mal verifizieren ob das nun der "neue" Code war der Schuld war und wieso.

PICture
13.07.2010, 10:16
Genau, durch Vergleichen und Fehlersuche lernt man am besten.

Viel Spass und kein Stress dabei. :)

MfG