Go Down

Topic: ds1307 - Anschließen (Read 10128 times) previous topic - next topic

hanspeter99

Hallo,

ich habe zwar ein Anschlussbild gefunden:
http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1235070596

Allerdings was muss da zw pin1 und pin2?

sth77

#1
Jan 19, 2011, 04:16 pm Last Edit: Jan 19, 2011, 04:20 pm by sth77 Reason: 1
Steht doch da: Das ist ein Uhrenquarz mit bestimmter Frequenz (32,768 kHz).
Mein Arduino-Blog: http://www.sth77.de/ - letzte Einträge: Teensy 3.0 - Teensyduino unter Window 7 - Teensyduino unter Windows 8

MaFu

#2
Jan 19, 2011, 04:16 pm Last Edit: Jan 19, 2011, 04:17 pm by MaFu Reason: 1
Steht doch im Text: ein Quartz mit 32768kHz.

Edit: zu langsam  :-?
_______
Manfred

hanspeter99

lasst mich raten... es geht nicht ohne...

MaFu

Auch ein ds1307 muss sich nach einem Takt richten.
_______
Manfred

sth77

#5
Jan 19, 2011, 04:23 pm Last Edit: Jan 19, 2011, 04:25 pm by sth77 Reason: 1
Nur zur Information: ich habe mich nämlich auch gerade mit der Tausenderpotenz vertan. Im Amerikanischen setzt man kein Komma, sondern einen Punkt. Verwechselt man schnell mit 'nem Tausenderpunkt und liegt somit schnell mal um Größenordnungen daneben...

Der Hintergrund dieser scheinbar krummen Frequenz ist folgender: Ich muss diese Frequenz nur 15mal durch zwei teilen, um einen ziemlich exakten Sekundentakt herauszubekommen. 15 Flip-Flops hintereinander und du hast 'nen genauen Sekundenzähler.

Quote
lasst mich raten... es geht nicht ohne...

Zumindest nicht für eine sinnvolle Anwendung... :D
Mein Arduino-Blog: http://www.sth77.de/ - letzte Einträge: Teensy 3.0 - Teensyduino unter Window 7 - Teensyduino unter Windows 8

stundenblume

Hi,

hier mal ein Schaltbild mit dem DS1307 an meinem Arduino.



Vorsicht bei der Quarzwahl. Es es muss ein Quarz mit 12,5 pF sein, andernfalls geht die Uhr deutlich falsch.


Gruß

Sebastian
Libraries:
  - multiCameraIrControl [V1.6]
  -

uwefed

Die 32.678 Quarze gibt es mit der Kapazität 12,5 und 6 pF.
ein 12,5 müßte der Richtige sein ansonsten geht die Uhr falsch (ca 20 Sekunden am Tag zu schnell)
Grüße Uwe

hanspeter99

#8
Jan 19, 2011, 06:14 pm Last Edit: Jan 19, 2011, 07:09 pm by hanspeter99 Reason: 1
Kann mir jemad sagen, warum das Beispiel nicht läuft:

Code: [Select]
#include <WProgram.h>
#include <Wire.h>
#include <DS1307.h> // written by  mattt on the Arduino forum and modified by D. Sjunnesson

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

 RTC.stop();
 RTC.set(DS1307_SEC,1);        //set the seconds
 RTC.set(DS1307_MIN,23);     //set the minutes
 RTC.set(DS1307_HR,12);       //set the hours
 RTC.set(DS1307_DOW,4);       //set the day of the week
 RTC.set(DS1307_DATE,5);       //set the date
 RTC.set(DS1307_MTH,3);        //set the month
 RTC.set(DS1307_YR,9);         //set the year
 RTC.start();

}

void loop()
{

 Serial.print(RTC.get(DS1307_HR,true)); //read the hour and also update all the values by pushing in true
 Serial.print(":");
 Serial.print(RTC.get(DS1307_MIN,false));//read minutes without update (false)
 Serial.print(":");
 Serial.print(RTC.get(DS1307_SEC,false));//read seconds
 Serial.print("      ");                 // some space for a more happy life
 Serial.print(RTC.get(DS1307_DATE,false));//read date
 Serial.print("/");
 Serial.print(RTC.get(DS1307_MTH,false));//read month
 Serial.print("/");
 Serial.print(RTC.get(DS1307_YR,false)); //read year
 Serial.println();

 delay(1000);

}


Als Zeit kommt immer 0:0:0 0/0/2000

stundenblume

ich verwende folgende Library mit Erfolg: http://www.seeedstudio.com/depot/images/product/DS1307.rar
Libraries:
  - multiCameraIrControl [V1.6]
  -

DE8MSH

Hi,

ich habe es nach

http://www.scratchpad.thisandthose.org/joomla/index.php?option=com_content&view=article&id=1&Itemid=3

gemacht und es rannte.
Look at
http://de8msh.blogspot.com/
and
http://www.youtube.com/user/de8msharduino

stundenblume

Hi,

Hast Du schon überprüft wie genau die RTC geht? Ich habe ca. 2Sec pro Tag. Viel genauer ist wohl auch nicht möglich. Aber wie könnte eine "Trimmung" oder korrektur aussehen?


Gruß

Sebatsian
Libraries:
  - multiCameraIrControl [V1.6]
  -

DE8MSH

Hi Sebastian,

habe ich nicht geprüft. Kann gut sein, dass die Zeit abweicht. Ich konnte sie aber nicht mal korrekt stellen, da ich das beim ersten Kompilieren gemacht habe und seit dem ist Datum und Uhrzeit im DS. Das Setzen beim Kompilieren ist grundsätzlich nicht sekundengenau, weil man ja nie weiß wann der Code im Atmega ist und die Zeit im DS setzt... Im mir aber auch nicht so wichtig. Wenn ich's genau möchte würde ich ein DCF77 Modul zur Zeitsetzung nehmen....
Look at
http://de8msh.blogspot.com/
and
http://www.youtube.com/user/de8msharduino

Webmeister

Quote
Aber wie könnte eine "Trimmung" oder korrektur aussehen?

Ein paar Ideen für die Abfrage der genauen Uhrzeit:
-Webservice im Internet via Ethernet abfragen
-Abfrage NTP-Server via Ethernet
-täglicher Update via serieller Schnittstelle (Aktuelle Uhrzeit liefert PC)
-DCF77-Quelle abfragen
-Uhrzeit via GPS-Modul ermitteln

stundenblume

Das(2sec/Tag) sind immerhin 12Minuten pro Jahr ;-)

- Ethernet zu aufwendig/mit Kanonen auf Tauben geschossen
- serieller Abgleich leider bei einer autarken Anwendung nicht möglich
- DCF finde ich gut, man müßte die Empfangsmöglichkeinten in massiven, geschlossenen Gebäuden klären
- GPS das gleiche wie mit der Ethernet Lösung


Gruß

Sebastian
Libraries:
  - multiCameraIrControl [V1.6]
  -

Go Up