Para construir tu reloj con Arduino necesitas los siguientes materiales:

También puedes solicitarnos el kit completo con todos los materiales por 24€ a través del mail: info@centroestudiosaspe.es

El esquema de montaje es el siguiente:

El codigo es es el siguiente:

# include<LiquidCrystal.h>

#include<Wire.h>

#include<RTClib.h>

LiquidCrystal lcd(7, 8, 9, 10, 11, 12);//pines del arduino al LCD (RS E D4 D5 D6 D7) RESPECTIVAMENTE
RTC_DS1307 RTC;

void setup()
{
Wire.begin(); //configura el bus I2C estableciendo arduino como MASTER
RTC.begin();
if (! RTC.isrunning()) // se verifica si el modulo rtc esta en funcionamiento, de lo contrario, se imprime: RTC is NOT running!
{
lcd.println(«RTC is NOT running!»);
delay(10000);
}
RTC.adjust(DateTime(DATE, TIME)); //esta funcion establecera en el modulo la fecha de creación del archivo .hex generado al compilar el sketch.

lcd.begin(16,4);
lcd.clear();
}

void loop()
{
mostrarRTCLCD(); //Se manda a llamar la funcion «mostrarRTCLCD» y despues se espera un tienpo de 1seg
delay(1000);
}

void mostrarRTCLCD() //Funcion que lee los datos de modulo RTC y despues los imprime en el display
{
DateTime now = RTC.now(); //obtiene datos del modulo RTC
lcd.clear();
lcd.setCursor (0,0);
lcd.print(«David»);
lcd.setCursor (0,1);
lcd.print («CeAspe»);
lcd.setCursor(0,2);
if(now.day() < 10)
{
lcd.print(«0»);
}
lcd.print(now.day(), DEC); //imprime dia
lcd.print(‘/’);
if(now.month() < 10)
{
lcd.print(«0»);
}
lcd.print(now.month(), DEC); //imprime mes
lcd.print(‘/’);
lcd.print(now.year(), DEC); //imprime el año
lcd.setCursor(0,3);
if(now.hour() < 10)
{

lcd.print(«0»);
}
lcd.print(now.hour(), DEC); //imprime hora
lcd.print(‘:’);
if(now.minute() < 10)
{
lcd.print(«0»);
}
lcd.print(now.minute(), DEC); //imprime minutos
lcd.print(‘:’);
if(now.second() < 10)
{
lcd.print(«0»);
}
lcd.print(now.second(), DEC); //imprime segundos
}

Los enlaces para descargar las librerias son:

Libreria LiquidCrystal

Libreria RTClib