Reloj en Tiempo Real DS1307 con Arduino Nano

publicado en: Tutorial Arduino | 0

Reloj en Tiempo Real DS1307 con Arduino Nano 1El chip DS1307 (datasheet) se resume como si fuera un reloj, que solo necesita una batería de 3v tipo boton de 210mA/h y mantiene la hora incluso cuando no hay energía de 5v. Además posee un reloj/calendario de baja potencia, memoria no-volatil y brinda: segundos, minutos, horas, días, semana, mes y año. Utiliza el protocolo I2C para comunicarse con cualquier microcontrolador, lo cual lo vuelve muy versátil.

Existen muchos microntroladores que utilizando temporizadores pueden realizar y obtener intervalos de tiempo como: segundos, minutos y horas. Pero lo que ofrece este chip DS1307 es brindar tiempo/fecha más detallada como: «11 de Junio del 2015 – 18:35:05s», detectar cuantos días tiene cada mes, que año es bisiesto e incluso mantener la hora aún cuando se corte la energía. La comunicación con este chip es a través del protocolo I2C que muchos microcontroladores poseen, pero para ello es necesario conocer procedimientos, comandos y registros de este chip DS1307. A continuación se muestra las características generales y los registros involucrados.

CARACTERÍSTICAS TÉCNICAS DEL DS1307:

  1. RTC cuenta: segundos, minutos, horas, fecha de Mes, mes, día de la semana y año con año bisiesto.
  2. 56 Bytes de memoria NO-Volátil.
  3. Señal de salida den Onda Cuadrada programable.
  4. Detección de fallo de Energía Automático.
  5. Consumo: <500nA en batería.
  6. Rango de temperatura Industrial -40°c hasta +85°c.
  7. Interfaz I2C de 100Khz y 400Khz.

REGISTROS:

RTC-2

 

Para poder leer y escribir en el DS1307 es necesario seguir paso a paso el protocolo I2C, pero gracias a que existen muchos ejemplos en Arduino e incluso librerías con la cual solo se necesita llamar a la función especifica. En el siguiente ejemplo se resume como leer tiempo y fecha  a través de la libreria RTClib.

EJEMPLO

Deja un comentario