Conservación de fecha y hora mediante I²C y batería de respaldo.
El DS3231-PCB mantiene fecha y hora mediante el circuito DS3231, incluso cuando la alimentación principal se desconecta gracias a su batería de respaldo. Se comunica por I²C y facilita relojes, registradores y automatizaciones programadas. Su oscilador compensado por temperatura ofrece precisión superior y además proporciona alarmas y temperatura interna. La batería, dirección, librería y resistencias del bus deben comprobarse antes de integrarlo con otros periféricos.
Especificaciones técnicas
Características principales
Valor
Alimentación
5 V para módulo habitual
Interfaz
I²C
Dirección
0x68
Funciones
Segundos, minutos, horas, día, fecha, mes y año
Respaldo
Batería de 3 V
Formato
12 o 24 horas
Compatibilidad
Arduino y Raspberry Pi
Características adicionales
Valor
Oscilador
TCXO integrado
Precisión
±2 ppm entre 0 y 40 °C
RAM
No integrada en DS3231
Temperatura
Sensor interno
Alarmas
Dos alarmas programables
Aplicaciones
Relojes y registro temporal
Información técnica: No recargues una pila CR2032 en módulos diseñados para LIR2032. Revisa el circuito de carga antes de elegir la batería de respaldo.
Ventajas y aplicaciones
Integración completa: Su diseño reúne las funciones esenciales y reduce componentes externos durante montaje, configuración y verificación del proyecto electrónico.
Formato práctico: La placa facilita prototipado, mantenimiento y conexión con otros dispositivos mediante terminales e interfaces claramente organizados físicamente.
Funcionamiento configurable: Permite ajustar parámetros relevantes por software o hardware para adaptarse a diferentes condiciones operativas y aplicaciones reales.
Compatibilidad amplia: Puede integrarse con plataformas, herramientas y protocolos habituales respetando los niveles eléctricos y requisitos particulares de cada interfaz.
Aplicaciones educativas: Facilita aprender programación, comunicación y control mediante pruebas repetibles, diagnósticos visibles y proyectos progresivos completamente funcionales.
Dos imágenes destinadas al esquema de conexión y al pinout del producto. Reemplaza cada URL por la imagen correspondiente subida a Odoo.
Galería de esquemas y conexiones
Guía de conexión: Conecta VCC, GND, SDA y SCL. Coloca la batería correcta y ajusta la hora una sola vez.
🎓 Funcionamiento del ejemplo
El ejemplo usa RTClib. Para DS1307 cambia RTC_DS3231 por RTC_DS1307 y elimina la lectura de temperatura no disponible.
Ejemplo Arduino · DS3231-PCB
#include <Wire.h>
#include <RTClib.h>
RTC_DS3231 rtc;
void setup(){
Serial.begin(115200);Wire.begin();
if(!rtc.begin()){
Serial.println("RTC no detectado");
while(true)delay(1000);
}
if(rtc.lostPower()){
Serial.println("Hora perdida; ajustando a compilación");
rtc.adjust(DateTime(F(__DATE__),F(__TIME__)));
}
Serial.println("Reloj en tiempo real listo");
}
void loop(){
DateTime n=rtc.now();
char texto[24];
snprintf(texto,sizeof(texto),"%04d-%02d-%02d %02d:%02d:%02d",n.year(),n.month(),n.day(),n.hour(),n.minute(),n.second());
Serial.print(texto);Serial.print(" | Temperatura: ");Serial.print(rtc.getTemperature(),2);Serial.println(" C");
delay(1000);
}
Pulsa una pregunta para desplegar su respuesta. Las últimas tres incluyen comparaciones con productos relacionados.
1. ¿Qué dirección I²C utiliza el reloj?
El DS3231 responde normalmente en 0x68; cualquier conflicto en esa dirección debe resolverse porque el chip no permite modificarla externamente.
2. ¿Qué conserva la batería de respaldo?
La batería mantiene oscilador, fecha y hora cuando VCC desaparece; no alimenta normalmente toda la placa ni otros dispositivos conectados.
3. ¿Cómo se detecta que la hora dejó de ser válida?
DS3231 activa el indicador OSF después de pérdida de oscilación; la biblioteca lostPower permite detectarlo y solicitar un nuevo ajuste.
4. ¿Qué batería debe utilizarse?
Usa CR2032 solamente si no existe circuito de carga; módulos preparados para recarga requieren LIR2032 y tensión de carga correctamente limitada.
5. ¿Qué precisión puede esperarse?
DS3231 especifica aproximadamente ±2 ppm entre 0 y 40 °C, equivalente a cerca de un minuto anual bajo condiciones previstas.
6. ¿Puede compartir SDA y SCL con otros módulos?
Sí, I²C permite varios dispositivos mientras sus direcciones sean distintas, existan pull-up adecuadas y la capacitancia total permanezca dentro del límite.
7. ¿Cómo se compara DS3231 con DS1307?
DS3231 integra cristal compensado, alarmas y mejor precisión; DS1307 necesita cristal externo y ofrece 56 bytes de SRAM respaldada. módulo.
8. ¿En qué se diferencia de utilizar millis()?
El RTC conserva fecha y hora sin alimentación principal; millis cuenta desde cada reinicio, desborda periódicamente y no representa calendario civil.
9. ¿Cómo evitar reajustar la hora en cada reinicio?
Ejecuta rtc.adjust solamente cuando se detecte pérdida de energía o mediante una orden explícita; no lo dejes activo permanentemente en setup.
10. ¿Arduino Uno y Raspberry Pi usan los mismos niveles?
Arduino Uno suele usar I²C a 5 V y Raspberry Pi a 3,3 V; comprueba hacia qué tensión conectan las pull-up del módulo.