Autor Tema: reloj en tiempo real  (Leído 3431 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado iburol

  • PIC10
  • *
  • Mensajes: 5
reloj en tiempo real
« en: 19 de Febrero de 2006, 08:55:00 »
hola a todos.

estoy desarrolando un poyecto para el que necesito un reloj en tiempo real, lo estoy haciendo con un ds1307 y un pic16f84, y me ha surgido una duda, ¿cómo programo el ds1307?, me han comentado que primero tengo que programar el 16f84 estando conectado al ds1307, poniendo en hora el ds1307 y despues se vuelve a programar el 16f84 ya retirado.

no se si es asi concretamente y en el caso de ser asi, como programo el 16f84 estando conectado al ds1307 y a la pila???

saludos

Desconectado vszener

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 2395
RE: reloj en tiempo real
« Respuesta #1 en: 19 de Febrero de 2006, 09:04:00 »
Buenass!!!no has mencionado enq ue lenguaje de programacion vas a realizar tu programa....pero bueno, lo que tienes que saber que el rtc ds1307 se controla emdiante bus I2C y debes seguir el protocolo que el fabricante ha diseñado para este dispositivo, asi que deberas irte al data sheet y mirar como se escribe y se lee en el para asi configurarlo, aqui el data sheet del ds1307

Y bueno, yo me haria una libreria para el manejo del dispositivo, por si acaso en un futuro quieras programarlo de nuevo!


Suerte!!!Giño
· Nos vemos en los bares!!!!!
· Mi Blog: Aqueronte

Desconectado iburol

  • PIC10
  • *
  • Mensajes: 5
RE: reloj en tiempo real
« Respuesta #2 en: 19 de Febrero de 2006, 11:42:00 »
todo eso ya lo mire, programe en .asm y ya tengo el codigo pasado a .hex.

mi duda es a la hora de pasar el codigo al chip, ya que por lo que he leido tengo que hacerlo con el 16f84, ds1307 y la pila conectados entre si, y no se como hacerlo, siempre he programado el 16f84 con un t20 pero supongo que si tengo que tenerlo todo conectado no lo podre hacer asi, esa es mi duda.

saludos

Desconectado poi5on

  • Colaborador
  • PIC16
  • *****
  • Mensajes: 127
RE: reloj en tiempo real
« Respuesta #3 en: 19 de Febrero de 2006, 17:47:00 »
Hola amigo

Bueno debes configurarle la hora y fecha actual al DS con el programa que hiciste, con la lectura previa del datasheet, luego conectas el PIC al DS1307 para que le programes la hora y fecha, todo eso se hace con el circuito energizado a 5v todo normalmente conectado, despues le puedes instalar la pila al DS con la fuente aplicada porque sino cuando apages el circuito el DS se desconfigura de nuevo, o al menos que tengas el circuito energizado para toda la vida, con la pila puedes apagar el circuito, sacar el PIC, programarlo otra vez, montar el circuito final y el DS no se desconfigura porque esta alimentado con la pila.

Saludos

Desconectado migsantiago

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 8257
    • Sitio de MigSantiago
RE: reloj en tiempo real
« Respuesta #4 en: 19 de Febrero de 2006, 22:47:00 »
Sí, el DS1307 es una RAM. Tú le pasas el tiempo con el bus I2C desde el PIC al reloj y este empieza a funcionar. Si le quitas los 5V o la batería, éste perderá la hora.

La batería es opcional, puedes poner a tierra la terminal de la batería si te la quieres ahorrar, pero al quitar los 5V perderás la info del reloj.

Ah y si sabes usar lenguaje C hay librerías ya hechas para hacer funcionar ese DS.

Desconectado satelite_ruso

  • PIC10
  • *
  • Mensajes: 5
RE: reloj en tiempo real
« Respuesta #5 en: 20 de Febrero de 2006, 18:37:00 »
Mi práctica es hace un reloj con el pic 16f84 y luego de hacerlo en la plantilla de mplab, visualizarlo en un display 7segmentos mediante los puertos RA y RB.
¿Tienes hecha la parte del reloj en el 16f84? Me sería de grandísima ayuda. Puedes leer mi mensaje en este mismo subforo. Se llama "Implementar reloj con pic 16f84" si no recuerdo mal.

Un saludo.

Desconectado iburol

  • PIC10
  • *
  • Mensajes: 5
RE: reloj en tiempo real
« Respuesta #6 en: 21 de Febrero de 2006, 11:13:00 »
primero decir que he decidido unir el codigo en uno solo para programarlo en el 16f84 y dejarme de lios porque al fnal no se como leches he de programarlo con el codigo dividido en dos partes, es decir uno apra poner en hora el ds y otro para que el 16f84 pillase esa hora, asi que ya me he quitado de problemas.

y decir a satellite que si, que lo tengo totalmente terminado solo me falta hacaerlo fisico.

saludos

Desconectado migsantiago

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 8257
    • Sitio de MigSantiago
RE: reloj en tiempo real
« Respuesta #7 en: 21 de Febrero de 2006, 13:13:00 »
Satélite, creo que no sería apropiado que usarás el DS1307, el objetivo de tu practica es que el PIC genere tiempos y cuenta horas por si mismo. El DS1307 hace todo eso, lo único que harías con el PIC sería leer la hora.

Claro que para aprender a usar el DS1307 está muy bien.