hola, estoy haciendo un proyecto que vi en yotube que es hace run reloj con alarma en tiempo real con el rtc3231 pero presento errores en uno de esos es mi pantalla lcd no me da caracteres, cambine mi codigo por este no se si este bien, no se mucho de programcion por eso decidi copiar el codigo`
// Fecha, Hora, Temperatura y dia de la semana
// con modulo DS3231, LCD 2x16 y Arduino Uno By:www.dinastiatecnologica.com
// Conexion i2C :Arduino UNO SCL-> A5 SDA->A4 VCC->5V GND->GND
// Conexion RTC :Arduino UNO GND->GND VCC->5V SCL-> SCL SDA->SDA los dos pines despues del ...12,13,GND,AREF,SDA,SCL
#include <Wire.h>
#include "Sodaq_DS3231.h"
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27,16,2);
char DiaSemana[][4] = {"Dom", "Lun", "Mar", "Mie", "Jue", "Vie", "Sab" };
// La linea fija la fecha, hora y dia de la semana, se debe suprimir la linea en la segunda carga
// Ejemplo 2017 Julio 12,2:20:00 pm dia 1-Lunes (0=Dom, 1=Lun, 2=Mar, 3=Mie, 4=Jue, 5=Vie, 6=Sab)
//DateTime dt(2017, 7, 12, 14, 20, 0, 1);
void setup ()
{
Serial.begin(9600);
Wire.begin();
rtc.begin();
// La linea fija la fecha, hora y dia de la semana, se debe suprimir la linea en la segunda carga
// rtc.setDateTime(dt);
lcd.init();
lcd.backlight();
lcd.clear();
}
void loop ()
{
Serial.print(rtc.getTemperature()); //Escribe la temperatura
Serial.println("*C");
DateTime now = rtc.now();
Serial.print(now.year(), DEC);
Serial.print('/');
Serial.print(now.month(), DEC);
Serial.print('/');
Serial.print(now.date(), DEC);
Serial.print(' ');
Serial.print(now.hour(), DEC);
Serial.print(':');
Serial.print(now.minute(), DEC);
Serial.print(':');
Serial.print(now.second(), DEC);
Serial.print(' ');
Serial.print(DiaSemana[now.dayOfWeek()]);
Serial.println();
lcd.setCursor(0,0);
lcd.print(now.year(), DEC);
lcd.print("/");
lcd.print(now.month(), DEC);
lcd.print("/");
lcd.print(now.date(), DEC);
lcd.print(" ");
lcd.print(DiaSemana[now.dayOfWeek()]);
lcd.setCursor(0,1);
lcd.print(now.hour(), DEC);
lcd.print(":");
lcd.print(now.minute(), DEC);
lcd.print(":");
lcd.print(now.second(), DEC);
lcd.print(" ");
lcd.print(rtc.getTemperature());
lcd.print("*C");
rtc.convertTemperature(); //convierte el registro de la temperatura
delay(700); // Tiempo en el que refresca la informacion
lcd.clear();
}
y a continuacion las imagenes de mi proyecto asi es como me sale.
gracias..