Autor Tema: IMposible! Por que va lento el DS1307 con el 16F877  (Leído 9582 veces)

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

Desconectado venerable13

  • PIC10
  • *
  • Mensajes: 45
Re: IMposible! Por que va lento el DS1307 con el 16F877
« Respuesta #15 en: 10 de Febrero de 2010, 10:14:22 »
vale haré la prueba hoy, muchas grácias, ya que muchas veces me pregunto, porque a casi todos le funciona una cosa y a mi no, la suerte que tengo...no existe casi

Desconectado jeremylf

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1341
Re: IMposible! Por que va lento el DS1307 con el 16F877
« Respuesta #16 en: 10 de Febrero de 2010, 13:47:28 »
Si que lo tiene flacoclau, en la pagina 4 de su datasheet:



Salu2

Desconectado venerable13

  • PIC10
  • *
  • Mensajes: 45
Re: IMposible! Por que va lento el DS1307 con el 16F877
« Respuesta #17 en: 10 de Febrero de 2010, 16:56:37 »
probé el ejemplo 24 de AQUÍ

Quemé el HEX que te suministran a un 16f84a y no cuenta, se puede personalizar la hora...va cambiando los menús, pero el ds no cuenta, hay algo que no está bien, me hace lo mismo con el reloj externo (pin 1 y 2) que sin él.

Es decir con ese ejemplo no cuenta nunca, al menos con el del principio del post cuenta, pero con retardo. Lo dejaré como un imposible debido a que dentro de nada tengo que presentar un proyecto y me pilla el toro, así que el reloj  lo haré con retardos en las interrupciones y listo, tmapoco se irá mucho de precisión no?

gracias a todos

Desconectado PalitroqueZ

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 5474
    • Electrónica Didacta
Re: IMposible! Por que va lento el DS1307 con el 16F877
« Respuesta #18 en: 10 de Febrero de 2010, 17:41:00 »
...Quemé el HEX que te suministran a un 16f84a y no cuenta,...

¿y no era con el 16f877? no puedes grabar el hex para un pic distinto a otro.



La propiedad privada es la mayor garantía de libertad.
Friedrich August von Hayek

Desconectado AngelGris

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 2480
Re: IMposible! Por que va lento el DS1307 con el 16F877
« Respuesta #19 en: 10 de Febrero de 2010, 17:45:18 »
Una preguntilla tonta ¿Probaste con otro cristal u otro DS1307?
De vez en cuando la vida
nos besa en la boca
y a colores se despliega
como un atlas

Desconectado ASTROCAR

  • PIC24F
  • *****
  • Mensajes: 664
Re: IMposible! Por que va lento el DS1307 con el 16F877
« Respuesta #20 en: 10 de Febrero de 2010, 18:40:48 »
hola buenas tardes, recientemente hice un codigo para el ds1307 el cual lo monte en fisico y lo probe eseo dias y hoy leyendo este post revice nuevamente el circuito y prendi el reloj y esta funcionando a la perfeccion ni se atraso y un segundo deja organizarlo y te lo subo para que lo revices la gran diferencia al tuyo es que use una lcd 20x4 pero de igual manera te subo las libreria y el archivo en proteus para que lo simules.

Saludos y esta noche lo subo para que le revices con calma.
Atten.
Alexander Santana.
Venezuela-Barcelona.
EL APRENDER ES NADA; MEJOR ES COMPARTIR EL APRENDIZAJE

Desconectado venerable13

  • PIC10
  • *
  • Mensajes: 45
Re: IMposible! Por que va lento el DS1307 con el 16F877
« Respuesta #21 en: 10 de Febrero de 2010, 18:46:31 »
a ver,
1º probé tb con el pic pertinente
2ºprobé con otro ds
3ºno, el cristal no lo cmabié pero pone en la carcasa 32768

Desconectado venerable13

  • PIC10
  • *
  • Mensajes: 45
Re: IMposible! Por que va lento el DS1307 con el 16F877
« Respuesta #22 en: 10 de Febrero de 2010, 19:53:13 »
muchísimas gracias lo espero impaciente, no sabes como porque me juego la nota final del año, ya que si este circuito me va y oscila, entonces me irá mi otro proyecto en espera de evaluación

Desconectado venerable13

  • PIC10
  • *
  • Mensajes: 45
Re: IMposible! Por que va lento el DS1307 con el 16F877
« Respuesta #23 en: 10 de Febrero de 2010, 19:55:45 »
repito que mi problema no es que no oscile, sino que cuenta siempre igual de lento, cada seg son 17, sólo me queda probar llevar el reloj a masa (la carcasa) y probar con otro cuarzo

Desconectado venerable13

  • PIC10
  • *
  • Mensajes: 45
Re: IMposible! Por que va lento el DS1307 con el 16F877
« Respuesta #24 en: 10 de Febrero de 2010, 20:19:19 »
alguien puede pasarme un código para este pic que funcione seguro con su esquema??? lo digo para descartar posibles fallas, lo pido por favor, mañana diré como acabé con los cambios finales de cambio de cuarzo y soldada a tierra

Desconectado AngelGris

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 2480
Re: IMposible! Por que va lento el DS1307 con el 16F877
« Respuesta #25 en: 10 de Febrero de 2010, 20:32:32 »
Esto lo saqué del datasheet del ds1307.



Es una buena forma de aislar ruidos
De vez en cuando la vida
nos besa en la boca
y a colores se despliega
como un atlas

Desconectado flacoclau

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1692
    • El Micro Reactor
Re: IMposible! Por que va lento el DS1307 con el 16F877
« Respuesta #26 en: 10 de Febrero de 2010, 21:03:30 »
cuando os puse el tema, los condensadores de 15pF también los quité y le puse un capacitor de 100nF entre la alimentación, lo único que aún no he probado es el cristal a masa, pero:

la programación está bien? aún no me han contestado conforme a las 2 preguntas que hice. Sólo me están diciendo cosas sobre el hardware, eso es que sí?

grácias

Ah, lo que no entiendo es porqué está en el esquema que subiste.


Si que lo tiene flacoclau, en la pagina 4 de su datasheet:



Salu2

Hola Jeremy: Disculpa no lo sabía, yo tengo el datasheet de Maxim y no figuran esos capacitores, solo está el esquema básico y una breve explicación que pego aquí, gracias por el dato.






Edito nuevamente, si figura:



« Última modificación: 10 de Febrero de 2010, 21:15:26 por flacoclau »
Las personas con buena ortografía me atraen textualmente.

El Micro Reactor

Córdoba capital - Argentina.

Desconectado Diego E.

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1086
Re: IMposible! Por que va lento el DS1307 con el 16F877
« Respuesta #27 en: 10 de Febrero de 2010, 23:09:39 »
Hola Venerable, yo recuerdo que una vez tuve inconvenientes por conectar el blindaje de cristal a tierra, también tuve problemas con los condensadores entonces resolví quitarlos y retirar la tierra del cristal, otra vez me sucedió que si no le ponía la pila de 3V y este pin quedaba al aire el DS1307 funcionaba mal.

saludos.

Desconectado Suky

  • Moderador Local
  • DsPIC33
  • *****
  • Mensajes: 6758
Re: IMposible! Por que va lento el DS1307 con el 16F877
« Respuesta #28 en: 11 de Febrero de 2010, 00:49:24 »
Un par de detalles, pirmero que nada, si no se usa la batería adicional al DS se debe colocar el pin a GND. Fast_io no afecta en nada, el módulo MSSP controla los pines, pero se debe agregar force_hw como parámetro de i2c(...)


Saludos!
No contesto mensajes privados, las consultas en el foro

Desconectado Miquel_S

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1251
Re: IMposible! Por que va lento el DS1307 con el 16F877
« Respuesta #29 en: 11 de Febrero de 2010, 05:37:10 »
Hola venerable13, prueba esta libreria del rtc es un poco diferente pero simula bien
Código: CSS
  1. 1.
  2.       int BCDaBIN(int bcd){            //Conversion de BCD a Binario.
  3.    2.
  4.         int varia;
  5.    3.
  6.         varia = bcd;
  7.    4.
  8.         varia >>= 1;
  9.    5.
  10.         varia &=0x78;
  11.    6.
  12.         return(varia + (varia >> 2) + (bcd & 0x0f));
  13.    7.
  14.       }
  15.    8.
  16.       void tiempo(byte &hour, byte &min, byte &sec){
  17.    9.
  18.         i2c_start();         //Escritura
  19.   10.
  20.         i2c_write(0xD0);     //Codigo de escritura
  21.   11.
  22.         i2c_write(0x00);     //Puntero a la primera direccion
  23.   12.
  24.         i2c_start();         //Lectura
  25.   13.
  26.         i2c_write(0xD1);     //Codigo de lectura
  27.   14.
  28.         sec = BCDaBIN(i2c_read()&0x7f);        //Lectura de los 7 bits de los segundos
  29.   15.
  30.         min = BCDaBIN(i2c_read()&0x7f);        //Lectura de los 7 bits de los minutos
  31.   16.
  32.         hour = BCDaBIN(i2c_read(0)&0x3f);      //Lectura de los 6 bits de las horas
  33.   17.
  34.         i2c_stop();
  35.   18.
  36.       }

Saludos
Miquel_S
Todos somos muy ignorantes. Lo que ocurre es que no todos ignoramos las mismas cosas.


 

anything