Descrizione
Cos’è
Il modulo DS1307 RTC I2C con memoria AT24C3 è un componente essenziale per i progetti Arduino che richiedono la gestione accurata del tempo e della data. Questo modulo integra l’orologio reale in tempo reale (RTC) DS1307 con una memoria EEPROM AT24C3, fornendo precisione temporale e capacità di conservazione dei dati anche quando il dispositivo è spento.
Caratteristiche
- Modulo RTC I2C basato su DS1307
- Inclusa memoria EEPROM AT24C3
- Mantenimento dell’orologio da una piccola batteria CR1220 (non inclusa)
A cosa serve
Il modulo DS1307 RTC I2C è ideale per progetti che necessitano di tenere traccia precisa del tempo e della data, come orologi digitali, dispositivi con funzionalità temporali o qualsiasi applicazione che richiede la memorizzazione dei dati anche quando il dispositivo non è alimentato. È compatibile con Arduino e può essere utilizzato in progetti di stampa 3D e droni per aggiungere precisione temporale.
Tutorial: Come usare Modulo DS1307 RTC I2C con Memoria AT24C32
Il modulo DS1307 RTC I2C è un componente essenziale per i progetti che richiedono l’accuratezza del tempo e della data. È ideale per maker principianti e intermedi desiderosi di aggiungere funzionalità temporali ai loro dispositivi Arduino.
Cosa serve
- Arduino Uno o compatibile
- Cavo USB tipo B
- Software Arduino IDE
Passi
- Collegare il modulo DS1307 alle pin 5 (SDA) e 4 (SCL) di Arduino.
- Aprire l’IDE Arduino e caricare lo sketch di esempio per il DS1307 (File > Esempi > DateTime Library > Ds1307).
- Verificare che la data e l’ora siano corrette nel codice dello sketch.
- Salvare e caricare il programma sul microcontrollore Arduino.
- Aprire il monitor seriale dell’IDE Arduino per visualizzare i dati di tempo e data in real-time.
Codice di esempio
// Includi le librerie necessarie
#include <Wire.h>
#include <RTClib.h>
// Dichiarazione oggetto RTC
RTC_DS1307 rtc;
void setup() {
Serial.begin(9600);
if (!rtc.begin()) {
Serial.println(F("Errore di inizializzazione del modulo DS1307."));
while (true); // Blocca il programma se non riesce a connettersi
}
}
void loop() {
DateTime now = rtc.now();
Serial.print(now.year(), DEC);
Serial.print(F("-"));
Serial.print(now.month(), DEC);
Serial.print(F("-"));
Serial.print(now.day(), DEC);
Serial.print(F("T"));
Serial.print(now.hour(), DEC);
Serial.print(F(":"));
Serial.print(now.minute(), DEC);
Serial.print(F(":"));
Serial.println(now.second(), DEC);
}
Mini-progetto
Realizza un orologio digitale semplice che visualizza l’ora e la data in tempo reale sul monitor seriale di Arduino.
Errori comuni
- Errore di connessione I2C
- Data o ora non impostate correttamente
- Problemi con il datasheet del modulo
Accessori consigliati
- Modulo LCD 16×2 per visualizzare l’ora e la data
- Batteria CR1220 per alimentazione di emergenza
- Relogio di precisione NTP per sincronizzazione temporale
- Cavo Jumper M/F
Domande frequenti
Come posso verificare se il modulo è connesso correttamente?
Verifica i collegamenti I2C e controlla l’output del monitor seriale.
Dove posso trovare le specifiche tecniche complete?
Consulta il datasheet fornito dal produttore.
















