Funcionamiento de un RTC (DS1306)

Hola a todos

Estoy realizando un proyecto en el que almaceno una serie de medidas cada cierto tiempo a traves de un PIC18F4550, para luego enviar dichos datos al PC por USB. Ahora mismo tengo todo casi terminado, pero quiero añadirle un RTC para almacenar la hora con las muestras, ya que puede ponerse a adquirir sin darle ninguna señal manualmente.
He estado realizando pruebas con un DS1306, pero no consigo que funcione. Creo que tiene una patilla que debería estar siempre enviando un tren de pulsos de 32KHz, pero no lo hace. He leido el datasheet y las notas de aplicación del fabricante, y no veo que halla que conectarle ningún condensador o resistencia en ninguna de sus patillas, solo el XTAL y poner las patillas correspondientes a alimentación o GND.
¿Alguien a utilizado este integrado o alguno similar y a tenido este problema?
Midiendo las señales de entrada al DS1306, obtengo las señales correctas, según el datasheet, pero aún así, el integrado no me contesta nada.

Muchas gracias de antemano
 
No sera que esta dañado? segun el datasheet la señal de 32kHz siempre debe estar presente...
 
He probado con 3 integrados distintos (el último de ellos sin estrenar), y no obtengo nada con ninguno de ellos. ¿Sabes que circuitería necesita? No se si el problema estará en los componentes que le acompañan, pero he probado montar el circuito sólo con el chip, con las patillas contectadas a masa (patillas 1 y 8) y alimentación (patillas 9, 10 y 16) y el XTAL de 32KHz entre las patillas 3 y 4, y no obtengo ninguna señal en la patilla 15 (salida 32KHz). No paro de buscar información y datasheets, y no encuentro donde está el problema.

Gracias Chico3001
 
haber... segun mis calculos lo estas conectando mal.... la unica masa es la pata 8, las patas 16 y 14 van a 5V , y la pata 2 a la bateria de 3V no recargable, en esta configuracion la pata 1 va a masa para que el circuito no cargue la bateria

la pata 14 da la configuracion de voltaje para las señales digitales, (tambien la señal de reloj de 32khz), y el cristal se pone entre los pines 3 y 4

Los pines 9 y 10 son de configuracion.. esos defines tu como los usas, verifica las fuentes por que creo que no lo estas polarizando completamente.....

Avisame como va..

Saludos..
 
Los pines 9 y 10 los pongo a Vcc, ya que voy a utilizar la comunicación SPI. En el circuito final, la patilla 10 (CE) irá controlada por el PIC. No me ha quedado del todo claro el pin Vcc2 (patilla 1), ¿tengo que conectar el pin a masa o lo pongo con otro valor? Por cierto, se me olvidó comentar que puse una pila de botón de 3 V en la patilla 2 :) Si Vcc2 va a masa, la única diferencia sería conectar la patilla 14 (Vccif) a 5V, que en mis pruebas lo tengo al aire

Ayer estube probando de nuevo, y me di cuenta de que en la salida de 32KHz si tengo una señal, pero es muy pequeña, además de ser negativa y con mucho ruido. Es una señal cuadrada de 32KHz, pero con una amplitud de unos 80mV (si no recuerdo mal), y además aparece de forma negativa, lo que me da a entender que estoy alimentando mal el integrado.

Hoy no voy a poder probar, pero mañana seguiré con las pruebas a ver si consigo solucinar algo (conectando el Vccif).

Muchas gracias, y espero que me puedas seguir ayudando
 
dragonspirit dijo:
Hola a todos

Estoy realizando un proyecto en el que almaceno una serie de medidas cada cierto tiempo a traves de un PIC18F4550, para luego enviar dichos datos al PC por USB. Ahora mismo tengo todo casi terminado, pero quiero añadirle un RTC para almacenar la hora con las muestras, ya que puede ponerse a adquirir sin darle ninguna señal manualmente.
He estado realizando pruebas con un DS1306, pero no consigo que funcione. Creo que tiene una patilla que debería estar siempre enviando un tren de pulsos de 32KHz, pero no lo hace. He leido el datasheet y las notas de aplicación del fabricante, y no veo que halla que conectarle ningún condensador o resistencia en ninguna de sus patillas, solo el XTAL y poner las patillas correspondientes a alimentación o GND.
¿Alguien a utilizado este integrado o alguno similar y a tenido este problema?
Midiendo las señales de entrada al DS1306, obtengo las señales correctas, según el datasheet, pero aún así, el integrado no me contesta nada.

Muchas gracias de antemano

Hola, ¿ le has puesto la batería de 3,2 v en el pin 2 ? o en su defecto una derivación desde +5 con una resistencia de 100 Honm.
 
VCC2 va a tierra o vcc dependiendo del tipo de fuente que uses en Vbat, yo estoy suponiendo que usas una bateria no recargable o fuente.. por eso te comente que lo pusieras a GND

Saludos..
 
Ok Chico3001. Utilizo una batería de 3V no recargable, asi q, lo conectaré a GND. Mñn lo probaré y comentaré los resultados.

En contestación a eb7ctx, sí, tengo un batería, pero como he dixo en mi segundo comentario, se me había olvidado decirlo, de todas formas, gracias por el interés

Un saludo
 
Por fiiiiiiiiiiiiiiiiiin
Llevaba mucho tiempo arrastrando este problema, y la solución ha sido de lo más lógica. Pues sí Chico3001, el problema lo tenía en la patilla Vccif. Sólo me faltaba conectarla para que todo funcionase. Bueno, agradecer enormemente la ayuda, sobre todo por parte de Chico3001, y espero que podamos ayudarnos mutuamente en un futuro. Ahora, a seguir avanzando.

Muchas gracias!

Un saludo
 
Tengo una pregunta más acerca de este dispositivo. Quisiera activar la salida de 1Hz que tiene, para utilizarla como fuente de interrupciones para mi PIC. Según el datasheet, debo poner a 1 el bit 2 del registro de control. Para ello, lo que hago es lo siguiente:
- Envío 0x8F (dirección de escritura del registro de control)
- Envío 0x00 (pongo el bit WP a 0 para que me permita la escritura)
- Envío 0x8F (dirección de escritura del registro de control)
- Envío 0x04 (pongo el bit 2 a 1 para activar la salida)
- Paro el funcionamiento del PIC con un while(1);

Creo que con esto debería estar la salida de 1Hz activada, pero midiendo con el osciloscopio, no veo nada. ¿Hay que hacer algo más para obtener la señal de 1 Hz en la patilla del DS1306?

Gracias de nuevo
 
Intenta enviando 84 en vez de 04 al activar el bit de 1Hz en la escritura de control... como le mandas un 04 posiblemente el chip detecte que quieres activar la proteccion de escritura y no ejecute el resto de los comandos...

Tambien lee el registro de control (0Fh) para ver si se esta guardando el valor de los bits o el chip los esta rechazando..... y verifica que se mantenga habilitado el CE del chip durante todo el proceso de escritura serial

Saludos...
 
He enviado el 0x84 en vez de 0x04, y el registro de control, al leerlo, me devuelve el 0x04, asi q, parece q está cogiendome bien el dato. Pero a la salida, sigo sin obtener la señal cuadrada. No se q esta pasando, pero el programa parece q envia y recibe todo correctamente, no se xk no se activa la salida

Gracias con antelación
 
Bueno, ya me he dado cuenta de donde estaba el fallo. En el datasheet pone que es una salida drenador abierto, con lo q al no poner ninguna resistencia a la salida, no obtengo ninguna señal. Ahora me surge otra duda, no se que valor tiene q tener esta resistencia. Le he colocado una de 2 Kohmios, y obtengo una señal muy rara a la salida, q espero q no sea la señal q debo obtener, porque si es asi, no me sirve para el propósito q pensaba. La señal tiene una forma extraña. A nivel alto, todo va bien, es una señal de 5V de amplitud, con una duración de unos 500ms, y que se repite cada segundo. El problema lo tengo en el ciclo a 0, en este ciclo, obtengo una señal q es una sucesión de pulso, q aunque se mantenga la mayor parte del tiempo a 0V, no me sirve, ya q mi intención es capturar los flancos de subida. ¿El problema lo tengo yo en el circuito, o es q la salida de 1 Hz es asi?

Muchas gracias
 
ummm... error mio... estaba pensando que la proteccion de escritura se activa con un 0 y no con un 1... y ademas el bit WP es el 6 y no el 7 por lo que en todo caso era escribir 44h en vez de 84h

Pero aun asi estabas correcto desde el principio al enviar 04h intenta de nuevo desde alli
 
Ok, volveré a intentar con 0x04, pero esta vez poniendo la resistencia a Vcc. He cambiado dicha resistencia por otra de 10K (vi que usaban ésta en un circuito que encontré en internet). De todas formas, ya obtengo una señal de 1Hz a la salida, pero muy rara, como he comentado anteriormente. ¿La señal debería ser una señal cuadrada perfecta no?
Esta tarde volveré a probar y comentaré los progresos.

Un saludo
 
dragonspirit dijo:
Ok, volveré a intentar con 0x04, pero esta vez poniendo la resistencia a Vcc. He cambiado dicha resistencia por otra de 10K (vi que usaban ésta en un circuito que encontré en internet). De todas formas, ya obtengo una señal de 1Hz a la salida, pero muy rara, como he comentado anteriormente. ¿La señal debería ser una señal cuadrada perfecta no?
Esta tarde volveré a probar y comentaré los progresos.

Un saludo


Exacto¡¡ la salida tiene que ser lo mas lineal posible, la forma de modulación esta en el ancho del pulso que es un ciclo segundo, deberías filtrar las alimentaciones, (yo es que soy un obseso de la alimentación limpia) me han pasado tantas cosas por no caer en "ese detalle"
 
Tengo un condensador electrolítico de desacoplo entre Vcc y GND, ¿sobraría con éste, o debo poner algún condensador más en el DS1306? La resistencia que tengo desde la patilla de output de 1Hz y alimentación ¿debe tener algún condensador? No se si te he entendido bien. La verdad es que la forma de la onda que obtengo no me cuadra, y suponía que algo estaba mal.
 
En cuanto a poner una imagen, lo estoy midiendo con un osciloscopio en un laboratiorio de la universidad, ahora mismo estoy en el trabajo, pero esta tarde haré una foto a la señal, y la pondré para que veais lo que estoy obteniendo.

Gracias a los dos por vuestra rapidez en contestar, la verdad es que me corre mucha prisa, y se me echa el verano encima y me cierran el laboratorio en un par de semanas.
 
Atrás
Arriba