Module DS3231
Descriptif:
Ce module donne l'heure à votre uno R3. Il conserve l’heure grâce à une pile, il communique avec la carte Arduino grâce au protocole I2C.
Caractéristiques:
- Tension de fonctionnement: 3,3 - 5 .5 V
- Batterie: CR2032 3V
- Dimensions: 38 x 32x 14 mm
- Poids: 8g
Liaisons électriques
Module DS3231 | Uno r3 |
GND | GND |
VCC | 5V |
SDA | SDA/A4 |
SCL | SCL/A5 |
Vérifier l'heure du module:
Pour vérifier l'heure du module vous devez le connecter à votre Uno r3 suivant le tableau ci-dessus.
Copier le croquis ci-dessous et le coller dans L'IDE Arduino, avant de le téléverser dans l’uno vérifier l'installation des bibliothèques ,<Wire.h> & "RTClib.h".
Pour visualiser l'heure, ouvrir le moniteur série de l'IDE.
Croquis
#include <Wire.h>
#include "RTClib.h"
RTC_DS3231 rtc;
char jour_semaine[7][12] = {"Dimanche", "Lundi", "Mardi", "Mercredi", "Jeudi", "Vendredi", "Samedi"};
void setup ()
{
Serial.begin(115200);
delay(1000);
if (! rtc.begin()) {
Serial.println("RTC introuvable !");
while (1);
}
if (rtc.lostPower()) {
Serial.println("Veuillez regler l'heure sur le module RTC!");
// Decommenter les lignes ci-dessous pour régler la date et l'heure.
// La ligne ci-dessous regle la date et l'heure du momment de la compilation
rtc.adjust(DateTime(F(__DATE__), F(__TIME__)));
// La ligne ci-dessous regle la date et l'heure avec des valeurs explicites
// Par exemplepour le 27 janvier 2017 à 12:56 :
// rtc.adjust(DateTime(2017, 1, 27, 12, 56, 0));
}
}
void loop ()
{
DateTime now = rtc.now();
Serial.println("Date & Heure: ");
Serial.print(now.day(), DEC);
Serial.print('/');
Serial.print(now.month(), DEC);
Serial.print('/');
Serial.print(now.year(), DEC);
Serial.print(" (");
Serial.print(jour_semaine[now.dayOfTheWeek()]);
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);
}
|
Synchroniser l'heure du module avec votre PC
Pour synchroniser l'heure du module avec votre PC vous devez déposer la pile du module, lancer le téléversement et remettre la pile.
Saisir l'heure manuellement
Pour cela remplacer la ligne de commande ci-dessous:
rtc.adjust(DateTime(F(__DATE__), F(__TIME__)));
par celle-ci
rtc.adjust(DateTime(2017, 1, 27, 12, 56, 0));
en inscrivant votre date et heure
// Par exemplepour le 27 janvier 2017 à 12:56 :
bibliographie:
https://arduino.blaisepascal.fr/gestion-du-temps/
Référence fabricant: ZS-042
Référence interne: RC00418
Date de mise à jour: 4/4/2021
----------