0% encontró este documento útil (0 votos)
57 vistas5 páginas

RTC DS1307

Cargado por

Starman OK
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
57 vistas5 páginas

RTC DS1307

Cargado por

Starman OK
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 5

CURSO ARDUINO BOTS 2

TALLER AULAROBOT
Electrónica, Programación y Arduino
Profesor a cargo: Tec. Julián Andrés Goinhex

2° Cuatrimestre 2020

Practicas:
RTC DS1307
Real Time Clock

Un reloj de tiempo real (RTC) es un dispositivo electrónico que permite obtener mediciones de
tiempo en las unidades temporales que empleamos de forma cotidiana. Los RTC son más parecidos
a los relojes y calendarios que usamos habitualmente, y que funcionan con segundos, minutos,
horas, días, semanas, meses y años.

Los RTC normalmente están formados por un cristal integrado con la electrónica necesaria para
contabilizar de forma correcta el paso del tiempo.

La electrónica de los RTC tiene en cuenta las peculiaridades de nuestra forma de medir el tiempo,
como por ejemplo el sistema sexagesimal, los meses con diferentes días, o los años bisiestos.

También incorporan una batería CR2032 para mantener el dispositivo en hora al retirar la
alimentación. Esta batería debería ser capaz de mantener alimentado durante varios años al
DS1307. La tensión de alimentación de batería es de 2.0 a 3.5.

Los RTC son dispositivos ampliamente utilizados en electrónica. Todos los ordenadores personales,
servidores, tablets, y smartphone incorporan uno. También son muy frecuentes en sistemas
embebidos y, en general, en multitud de dispositivos que requieren realizar un registro del tiempo.
PinOut del Módulo
La comunicación entre el Arduino y el Modulo RTC es por I2C (pines SDA y SCL), También tiene un
pin (SQ) que envía un pulso cada segundo (1 Hz), que nos puede servir para sincronizar otros
componentes o para realizar un contador de segundos. A su vez, el módulo tiene un espacio para
soldar un DS18B20 (sensor de temperatura) y acceder a este a través del pin DS.

Al reverso tiene un socket para insertar una batería de 3V, que le permite al RTC mantener en
funcionamiento la hora y fecha cuando se apague el Arduino o se le quiete la alimentación principal.
Esta batería dependiendo de la marca y del tiempo apagado, puede durar desde los 3 hasta los 10
años aproximadamente.

Conexión con Arduino


La conexión es sencilla. Simplemente alimentamos el módulo desde Arduino mediante 5V y Gnd y,
por otro lado, conectamos los pines del bus I2C a los correspondientes de Arduino.
Programando el DS1307 para Arduino

Para este ejemplo usaremos la librería RTClib de Adafruit, necesitamos descargar e importar dicha
librería al IDE de Arduino.

Actualizando la Hora y fecha de nuestro DS1307

Cuando adquirimos un DS1307, al no traer su pila, no tiene la hora actualizada, cada vez que
quitamos la pila el DS1307 pierde la hora, estableciéndose como hora 0:0:0 y fecha 00/00/00,

Este ejemplo solo se utiliza para poner a la hora nuestro DS1307:

De esta forma cada vez que el Arduino se enciende o se reinicia, el Arduino actualizara al DS1307 con
la hora que fue compilado el programa.
Obteniendo Hora y Fecha del DS1307

En este ejemplo realizaremos la lectura de los segundos, minutos y horas del DS1307, y a su vez
también obtendremos la fecha.

Para realizar este ejemplo usamos el siguiente código:

Cada vez que se llama a rtc.now se actualiza la hora y se guarda en el objeto HoraFecha que es
de la clase DateTime propia de la librería RTClib.

También podría gustarte