RTC – Real Time Clock DS1307

2 500 CFA

Catégorie :

Brève description

Ce module est une horloge autonome pour microcontrôleur :

  • Décompte de l’heure et de la date : Il conserve secondes, minutes, heures, jour, mois et année précis.

  • Support pile bouton (CR1220 / CR2032 selon modèle) : Permet au composant de continuer à garder l’heure exacte même lorsque l’Arduino est hors tension.

  • Communication I2C : Utilise seulement 4 fils (VCC, GND, SDA, SCL).

Utilité et applications

  • Horodatage de données (Data Logging) : Enregistrer la date et l’heure exactes de relevés de capteurs sur carte SD.

  • Systèmes d’automatisation temporelle : Déclencher des actions à des heures précises (ex: arrosage automatique à 8h00, éclairage nocturne, distributeur de nourriture).

  • Réveils et horloges numériques.

#include <Wire.h>
#include <RTClib.h>

RTC_DS1307 rtc;

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

// Initialisation du bus I2C et du module RTC
if (!rtc.begin()) {
Serial.println(« Impossible de trouver le module RTC ! »);
while (1);
}

// Si le RTC a perdu son alimentation (première utilisation ou pile vide)
if (!rtc.isrunning()) {
Serial.println(« Le RTC ne tourne pas, ajustement de l’heure… »);
// Ajuste l’heure du RTC sur la date et l’heure de compilation du code
rtc.adjust(DateTime(F(__DATE__), F(__TIME__)));
}
}

void loop() {
// Lecture de l’heure actuelle depuis le RTC
DateTime now = rtc.now();

// Affichage dans le moniteur série (Format: JJ/MM/AAAA HH:MM:SS)
Serial.print(now.day(), DEC);
Serial.print(‘/’);
Serial.print(now.month(), DEC);
Serial.print(‘/’);
Serial.print(now.year(), DEC);
Serial.print( » « );
Serial.print(now.hour(), DEC);
Serial.print(‘:’);
Serial.print(now.minute(), DEC);
Serial.print(‘:’);
Serial.print(now.second(), DEC);
Serial.println();

delay(1000); // Mise à jour chaque seconde
}

Avis

Il n’y a pas encore d’avis.

Soyez le premier à laisser votre avis sur “RTC – Real Time Clock DS1307”
Retour en haut