Pages: [1] 2   Go Down
Author Topic: DS1307 - No guarda la hora  (Read 3021 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Newbie
*
Karma: 0
Posts: 20
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hola compañeros.


Recientemente he comprado el modulo reloj DS1307. Es igual que este http://www.ebay.es/itm/DS1307-Real-Time-Clock-Module-I2C-/221292455555?pt=LH_DefaultDomain_186&hash=item33860ee683.


El problema que me he encontrado es que con la pila puesta (CR2032) , el reloj no conserva la hora. Es como si la pila no estubiese haciendo nada. Porque se la quito y hace el mismo funcionamiento. La plaquita del reloj parece estar en buen estado.

¿A alguien más le ha ocurrido los mismo?

Un saludo, muchas gracias


Logged

Cordoba
Offline Offline
God Member
*****
Karma: 41
Posts: 740
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Edito, no son 2 relojes es una memoria y un reloj, controlá la alimentacion de la pila en el pin 4
« Last Edit: October 25, 2013, 07:31:21 am by maxid » Logged

El que pregunta aprende, el que responde aprende a responder.

Offline Offline
God Member
*****
Karma: 7
Posts: 635
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Recuerda también (no sé si lo sabes o no) que la primera vez que ejecutas el código tienes que actualizarle la hora actual (valga la redundancia) y a continuación tienes que comentar la línea de código para que ya no lo actualice más. Si no lo haces cada vez que ejecutas el código estás reseteando la hora.
Logged


Offline Offline
Newbie
*
Karma: 0
Posts: 20
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Gracias por las respuestas.

(Maxid) -  Si se que uno de los chip es es reloj y el otro la memoria.
(cheyene) -  Si tengo puesto que al compilar me sincronice la hora con el PC y lo hace estupendamente y funciona sin ningún problema (con o sin pila puesta). Pero al quitar la alimentacion al modulo y conectarla otra vez el reloj no conserva la hora que deberia tener y iniciar otra vez con la que se sincronizo con el pc ( a la hora de compilarlo).

A la pregunta de descomentar la linea, lo hago.

Voy a probar si el pin 4 tiene tensión al desconectar la alimentacion del arduino, que me parece que el problema puede ser que, la pila no alimente conrrectamente el circuito para hacer funcionar el reloj cuando no tiene alimentación directa. He utilizado dos pilas nuevas para descartar el problema de la pila.


Muchas gracias, si os ocurre cualquier cosa, compartirla, me vendra bien para resolver de donde viene el problema.

¿teneis este mismo modulo funcionando correctamente?, he pensado comprar otro.

Un saludo.
Logged

Offline Offline
Newbie
*
Karma: 0
Posts: 20
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset



Entre el Negativo de la Pila y la patilla 3 del ds1307 tengo 2.58v ¿es correcto?
Entre el Positivo de la Pila y la patilla 4 del ds 1307 tengo 3.60 v ¿es correcto?


que opinais?

Logged

Cordoba
Offline Offline
God Member
*****
Karma: 41
Posts: 740
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

me parece mucha caida de tension, perdon pero me equivoque de pin el 4 es gnd.
Pero por lo visto hay algo que consume de mas.
Prueba solo sin conectar a nada que tensiones tienes
Logged

El que pregunta aprende, el que responde aprende a responder.

Offline Offline
Newbie
*
Karma: 0
Posts: 20
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Na no te preocupes maxid.

He medido Polo negativo y la patilla 3 del ds1307 y me da 3.25v.
Logged

Cordoba
Offline Offline
God Member
*****
Karma: 41
Posts: 740
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

la pila se ve que esta bien, tiene que ser algo del codigo. poste el codigo quizas encontremos algo
Logged

El que pregunta aprende, el que responde aprende a responder.

Offline Offline
Newbie
*
Karma: 0
Posts: 20
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

//---------------------- Recopilacion de información-------------------------

Solamente con la pila puesta (arduino desconectado):

Entre el Negativo de la Pila y la patilla 3 del ds1307 tengo 2.58v
Entre el Positivo de la Pila y la patilla 4 del ds 1307 tengo 3.59 v


El arduino funcionado sin pila conectada.

He medido Polo negativo y la patilla 3 del ds1307 y me da 3.25v.


-----------------------------------------------------------------

¿NO deberia tener cuando desconecto el arduino 3.25v?

El codigo es casi identico al del ejemplo.

Quote
#include <Wire.h>  // Incluye la librería Wire
#include <RTClib.h> // Incluye la librería RTClib
RTC_DS1307 RTC; // Crea el objeto RTC
 
void setup () {
Serial.begin(9600); // Establece la velocidad de datos del puerto serie
Wire.begin(); // Establece la velocidad de datos del bus I2C
RTC.begin(); // Establece la velocidad de datos del RTC
RTC.adjust(DateTime(__DATE__, __TIME__));
}
 
void loop () {
DateTime now = RTC.now(); // Obtiene la fecha y hora del RTC
 
Serial.print(now.year(), DEC);
Serial.print('/');
Serial.print(now.month(), DEC);
Serial.print('/');
Serial.print(now.day(), DEC);
Serial.print(' ');
Serial.print(now.hour(), DEC);
Serial.print(':');
Serial.print(now.minute(), DEC);
Serial.print(':');
Serial.print(now.second(), DEC);
Serial.println();
 
delay(1000); // La información se actualiza cada 1 seg.
}


gracias nuevamente.
Logged

Cordoba
Offline Offline
God Member
*****
Karma: 41
Posts: 740
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

creo que no es necesario esto
RTC.adjust(DateTime(__DATE__, __TIME__)); salvo que este conectado al pc.
podrias poner

If Serial.available()
  RTC.adjust(DateTime(__DATE__, __TIME__));

Eviste una funcion rtc.timeNotSet para saber si nunca se puso en hora, llamas a la sincronizacion.

aca te dejo algunas paginas de referencia
http://playground.arduino.cc/Code/time
http://ahoramededicoalcacharreo.blogspot.com.ar/2013/05/libreria-rtc.html
Logged

El que pregunta aprende, el que responde aprende a responder.

Offline Offline
Newbie
*
Karma: 0
Posts: 20
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Gracias por la info, no conocia esos comandos.

Pero tengo el mismo problema, el modulo una vez que el arduino se desconecta no sigue contando. Y hay que volverlo a poner en hora. Ahora me da igual pero cuando no este conectado al PC. No es viable.

saludos.
Logged

COM22
Offline Offline
God Member
*****
Karma: 6
Posts: 702
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

La hora la guarda pero no avanza el tiempo no? me lía el titulo del tema  smiley-roll-sweat

Prueba con el ejemplo de esta web http://bildr.org/2011/03/ds1307-arduino/ pero no creo que te solucione tu problema. Yo cambiaría la pila por una "buena" (una alcalina) ya que algunas pilas de los "chinos" no son capaces de hacer oscilar el cristal de cuarzo y por lo tanto no avanza el tiempo.

Es raro que tengas dos medidas diferentes (2,58V y 3,59V) cuando estas midiendo lo mismo.  smiley-slim


Logged


Offline Offline
Newbie
*
Karma: 0
Posts: 20
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

El reloj funciona correctamente cuando esta conectado a la alimentación del arduino. Pero al desconectar el arduino el modulo no sigue funcionando, es decir que cuando se vuelve a conectar mantiene la hora anterior y no la que deberia tener si hubiera estado funcionando bien.

Yo creo que tiene poca tensión cuando esta en bateria y no funciona. He comprado baterias CR2032 de marca y el funcionamiento es el mismo.

gracias por tu interes!
Logged

Cordoba
Offline Offline
God Member
*****
Karma: 41
Posts: 740
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

revisa este hilo, hay un tutorial con una libreria nueva.
http://forum.arduino.cc/index.php?topic=152577.0
Logged

El que pregunta aprende, el que responde aprende a responder.

Offline Offline
Newbie
*
Karma: 0
Posts: 20
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

gracias pero nada.
He pedido otro, ya os contare si era error del modulo.


Muchas gracias por la ayuda.
Logged

Pages: [1] 2   Go Up
Jump to: