Integrado RTC I2C recomendado

Hola que tal a todos, ando necesitando un integrado RTC que disponga de alarmas, es decir, desde el microcontrolador lo programo en 3:00 minutos por ejemplo, le doy start y cuando este llegue a 0:00 respetando la frecuencia de un reloj de tiempo real me haga habilitar una interrupcion en el microcontrolador. Recurro a ustedes ya que mire varios integrados de estos pero nose cual es el mas recomendable para lo que necesito, ya que lo mio son solo timers de minutos.

Hasta el momento vengo generando los retardos con funciones que "no hacen nada" dentro del programa, pero esto hace que sea impreciso y aparte me anula el micro, en pocas palabras no me deja hacer otra cosa que contar instrucciones y asi perder el tiempo del retardo necesario.

Desde ya muchas gracias!
 
Fig2403_DS1307.gif


http://www.pic16f84a.org/proteus.html#Proteus_Capitulo_24
 
El DS1307 ya es viejo y por asi decirlo paso de moda, sus pocas funciones lo hacen ideal para aplicaciones sencillas, pero si lo que necesitas es un RTC "mas inteligente" con funciones de alarma e incluso sensor de temperatura deberias recurrir a los buscadores de las paginas de los fabricantes. Intersil Maxim y Ti producen muy buenos RTC. Intersil tiene este que he usado y es bueno ISL12022MIBZ

Esta pregunta ya la habian hecho, ubieras buscado

Por cierto lo que pides suena mas a cronometro que a un RTC, pero en todo caso un RTC con alarma tambien te sirve
 
Una disculpa si vio como ofensa mi comentario. Lo que quería dejar claro es que ese integrado no le va bien para lo que el desea, puesto que el ds1307 no tiene ninguna interrupción de salida ni funciones de alarma y por lo que entendí el no quería preocuparse por estar checando la hora en el integrado, por eso de di esa sugerencia. No se si sea el mas vendido o no, lo cierto es que ya es viejo y en la pagina de maxim ya empiezan a quitar algunos modelos.
Mil disculpas Meta.
 
Estoy bien, jajjaaj.
Una pena que lo quiten, ya que los tengo físicamente con sus librerías y todo en asm y C.

Lo de las interrupciones, alarma y esas cosas lo controlas con el PIC, se puede hacer relacionado con el DS1307.

En fin, hay que adentrarse a lo nuevo. Lo que me he dado cuenta, que faltan buenos libros en español sobre PIC en C, en ASM hay muy buenos.
;)
 
Gracias por sus repuestas. Es verdad, lo que yo necesito es un cronometro descendente, que le avise al microcontrolador con una interrupcion. El maximo tiempo que necesito son 10 minutos. Osea 600 segundos. Necesito 25 mil contadores....jajaja. Alguna sugerencia? No necesito mas que eso. Creo que es medio en vano meterme en un integrado del tiempo de estos viendolo ahora.
 
Para esa tarea usa el timer del microcontrolador. Incluso algunos micros le puedes conectar un cristal de baja frecuencia mas precisamente el de 32768Hz. Con un timer de 16 bits y la maxima preescala logras contar varios minutos. Incluso puedes usar un capacitor y un resistor en serie "RC" y usar el comparador del micro.
 
Holassss:

Usas ya uno programado que haga de alarma, tienen EEPROM interna, hace de todo. Puedes relacionarlo con un PIC.

temporizador%20digital.JPG


Por cierto, cuesta menos de 15€ y hace de todo. El led rojo indicado arriba en el display, si se enciende tiene corriente. Es temporizdor, tiene display etc.

¿Algo que puedas pedir?

15€ hecho no es nada con lo que te vas a gastar si lo haces igual por tu cuenta y sobre todo tiempo.

Saludo.
 
SI quieres la salida de 1Hz pues usa el DS1307 que te recomendo Meta, lo pudes usar para que te genere una salida de 1 Hz con buena precision y con un circuito pequeño, de hecho mas pequeño que el que propones y menos componentes, ademas tendras la funcion todavia de reloj, y por ultimo creo que hasta mas barato.
 
Usa oscilador de precisión que tenga cristal, los externos me refiero como los que usan mucho los PIC.

Solo tienes que programar el PIC activando y desactivando un pin de salida a una frecuencia de 1Hz.
 
Hola!
Leyendo tu primer Post, el micro que te recomiendo es el DS1305, puesto que este tiene alarmas seteables.

Leyendo más abajo, te recomiendo mil veces, usar los timers internos del PIC. Por ejemplo, el TIMER1 es el que tiene 16bit siempre, y a 4MHz puedes generar interrupciones cada 0,5 segundos. Estos "medios" segundos los sumas hasta hacer uno, y de allí sumas 60 segundos y cada 60 segundos, sumas un minuto hasta los 10, etc.

Te recomiendo hacer eso, puesto que:
Alta presición (con un oscilador externo, XT)
Solo usas interrupciones, o sea, que nunca usas ciclos de "no hacer nada"
El intervalo de tiempo generado, es fácilmente manejable.
No necesitas NADA de circuitería externa.
Esta forma es la que más ahorra energía.

De esta manera hice un regador automático para mi casa, que maneja 6 electroválvulas, y no tiene ningún código de espera. Para esto, googlea "Uso de TIMER1 en PIC" y los primeros resultados, son los mejores tutoriales.

Si igual quieres usar el 555, averigua cómo usar el "T0CKI", o sea, el pin RA4 de todos los PIC's.

Saludazo!!
 
Gracias a todos por sus respuestas. Creo qye voy a probar primero generar 1 hz con el 1307 y usar el timer del AT89S52 que es el micro que utilizo (viejo pero anda el mounstro). De pic no se nada jaja. Saludos!



Una pregunta mas....yo estoy usando el compilador Keil ....creo que librerias de I2C no tiene nada...tienen masomenos una idea de como arrancar a programar este integrado ? En c...solo una idea ...estoy bastante mareado. gracias!
 
Última edición:
Atrás
Arriba