Forum: Mikrocontroller und Digitale Elektronik DS1307 No ACK!


von Mathias S. (merzi1993)


Angehängte Dateien:

Lesenswert?

Hallo!

Habe folgendes Problem:
Nach einiger Zeit bekomme ich beim DS1307 kein Ack-Signal mehr.

Ich habe die Schaltung wie im angehängten Bild auf meinem BreadBoard 
aufgebaut (Pullups 4.7k, Vcc=4,61V, Crystal=32.768kHz). SQW/OUT hängt 
momentan noch in der Luft.

Am Anfang funktioniert alles ohne Probleme. Ich kann Daten in den DS1307 
schreiben und auch wieder auslesen. Jedoch nach ca. 20min bekomme ich 
kein Ack mehr vom DS1307 und er funktioniert dann nicht mehr (ist schon 
der 2. IC mit gleichem Problem).

Ich habe nun mein Signal mit einem LogicAnalyzer aufgezeichnet 
(angehängtes Bild). Mit dem Signal sollte soweit alles stimmen.

Den Code habe ich auch angehängt.

Nur worin könnte hier das Problem liegen, dass der DS1307 auf einmal 
kein Ack mehr erzeugt?


Gruß

Edit: Kann es vielleicht sein, dass das Problem vielleicht darin liegt 
dass VBat nirgends angeschlossen ist?

: Bearbeitet durch User
von Frank M. (ukw) (Moderator) Benutzerseite


Lesenswert?

Mathias S. schrieb:
> Jedoch nach ca. 20min bekomme ich
> kein Ack mehr vom DS1307 und er funktioniert dann nicht mehr (ist schon
> der 2. IC mit gleichem Problem).

Wie oft fragst Du die Daten ab? 1x pro Minute oder tausende Male pro 
Sekunde?

> Nur worin könnte hier das Problem liegen, dass der DS1307 auf einmal
> kein Ack mehr erzeugt?

Schon mal versucht, den 1307 stromlos zu machen (auch Batterie 
abziehen!) und zu testen, ob es danach wieder geht?

Ich selbst habe es durch Tests schon geschafft, den DS1307 zum Hangup zu 
bewegen, nämlich indem ich mitten während der Übertragung die 
SDA-Strippe unterbrochen habe. Danach habe ich es nur noch geschafft, 
ihn wiederzubeleben, indem ich ihn entweder stromlos (inkl. Batterie) 
machte oder den I2C-Bus resettet habe.

: Bearbeitet durch Moderator
von Mathias S. (merzi1993)


Lesenswert?

Ich frage nur ein einziges Mal ab.

Es hat glaube ich daran gelegen, dass VBAT nirgends angeschlossen war. 
Nachdem ich VBAT auf GND gelegt habe, funktioniert er wieder - vorerst.

von Frank M. (ukw) (Moderator) Benutzerseite


Lesenswert?

Mathias S. schrieb:
> Es hat glaube ich daran gelegen, dass VBAT nirgends angeschlossen war.
> Nachdem ich VBAT auf GND gelegt habe, funktioniert er wieder - vorerst.

Das wäre meine nächste Frage gewesen. Denn im Datenblatt steht klipp und 
klar drin, dass man - wenn keine Batterie angeschlossen wird - VBat auf 
GND legen muss.

Du hast aber oben ein Schaltbild gepostet, wo eine Batterie 
angeschlossen ist. Diesem habe ich geglaubt und Du hast nicht nur mich, 
sondern auch Deine anderen Leser aufs Glatteis geführt ;-)

von Mathias S. (merzi1993)


Lesenswert?

Frank M. schrieb:
> Du hast nicht nur mich,
> sondern auch Deine anderen Leser aufs Glatteis geführt ;-)

Ja, leider ist mir der Fehler schon ganz am Anfang unterlaufen und ich 
habe leider nicht mehr daran gedacht ;)

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.