1. El Octavo Bit
  2. / Arduino
  3. / Modulos y sensores
  4. / Módulo reloj de tiempo real RTC DS3231

Módulo reloj de tiempo real RTC DS3231

| Actualizado:
Comentarios: 0

Módulo reloj de tiempo real RTC DS3231
Módulo reloj de tiempo real RTC DS3231

El DS3231 es un reloj de tiempo real (RTC) I2C de bajo coste y extremadamente preciso, con un oscilador de cristal con compensación de temperatura (TCXO). Comparado con el DS1302, el DS3231 tiene muchas ventajas, funciona con una alimentación que puede variar de 2.3V a 5.5V y tiene una batería de respaldo. A diferencia del DS1307, el DS3231 también tiene un cristal de cuarzo integrado (por lo que no requiere un cristal externo), un sensor de temperatura, 2 alarmas programables, un pin de salida de 32.768 kHz para garantizar una mayor precisión. El módulo también incluye una memoria EEPROM AT24C32 con 32Kb para almacenar todo tipo de datos. Dispone de un zócalo para pila de botón.

Características:

  • Mantiene la fecha y el horario (año, mes, día, hora, minutos, segundos)
  • Oscilador interno compensado por temperatura (TCXO)
  • Error de +-2 ppm (unos pocos minutos al año)
  • Batería de respaldo, mantiene la fecha y el horario.
  • Salida directa de oscilador interno de 32.768 Khz (32 K)
  • Salida programable de 1 Hz, 1 Khz, 4 Khz, 8 Khz (SQW)
  • Fácil conexión mediante interfaz I2C

Esquema de montaje con Arduino:

Conectar el pin SCL con el pin analógico 5 de la placa Arduino, SDA con el pin analógico 4, VCC con alimentación de 5V y el GND con el de masa de Arduino.

Esquema de conexión del módulo DS3231 con la placa Arduino

Código de ejemplo:

#include "Wire.h"
#include "RTClib.h"

RTC_DS3231 rtc;

void setup (){
 Serial.begin(9600);

 if (! rtc.begin()) {
 Serial.println("Módulo RTC no encontrado !");
 while (1);
 }
 rtc.adjust(DateTime(__DATE__, __TIME__));
}

void loop (){
 DateTime fecha = rtc.now();
 Serial.print(fecha.day());
 Serial.print("/");
 Serial.print(fecha.month());
 Serial.print("/");
 Serial.print(fecha.year());
 Serial.print(" ");
 Serial.print(fecha.hour()); 
 Serial.print(":"); 
 Serial.print(fecha.minute());
 Serial.print(":"); 
 Serial.println(fecha.second());
 
 delay(1000);
}

Artículos que te pueden interesar

Motor 28BYJ-48 5V y ULN2003 integrado

Motor 28BYJ-48 5V y ULN2003 integrado

| Actualizado:
Comentarios: 0

Un motor paso a paso es un dispositivo electromecánico que convierte pulsos eléctricos en movimientos mecánicos exactos. El eje de un motor paso a paso gira en pasos de ángulos fijos cuando se le aplican impulsos eléctricos en la secuencia…

Joystick de control para Arduino
Joystick de palanca de control de sensor para Arduino

Joystick de palanca de control de sensor para Arduino

| Actualizado:
Comentarios: 0

Un joystick analógico es un sencillo controlador que podemos añadir a nuestros proyectos de electrónica y Arduino. Consta simplemente de dos potenciómetros, uno para el eje X y otro para el eje Y. Estos joystick son similares a las palancas…

TM1637, display digital de 4 dígitos
TM1637: módulo display digital de 4 dígitos.

TM1637: módulo display digital de 4 dígitos.

| Actualizado:
Comentarios: 0

El módulo de pantalla LED de 4 dígitos con TM1637 se puede controlar con sólo dos líneas de control DIO y CLK. Característica de Módulo Display Digital TM1637 4 Dígitos: Tensión de alimentación de 3V-5V Consumo de corriente 250 mA…

¿Cómo conectar una pantalla LCD 16×02 con controlador I2C a Arduino?
Controla un LCD con 2 pines

Tarjeta de interface I2C para display LCD1602

| Actualizado:
Comentarios: 0

El módulo adaptador LCD a I2C es un componente que facilita la conexión de una pantalla LCD a un microcontrolador o placa de desarrollo a través del protocolo I2C, simplificando el cableado y reduciendo la complejidad de la conexión. El…

Comentarios - 0

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *