Livrée sans pille
Le DS1307 est une puce de circuit intégré en temps réel (RTC) utilisée pour fournir une horloge précise à un microcontrôleur comme @rduino. Voici comment utiliser le DS1307 avec Arduino :
- Connexion matérielle :
- Connectez la broche SDA du DS1307 à la broche A4 (ou la broche SDA dédiée) de l’@rduino.
- Connectez la broche SCL du DS1307 à la broche A5 (ou la broche SCL dédiée) de l’@rduino.
- Connectez la broche VCC du DS1307 à une source d’alimentation +5V de l’Arduino.
- Connectez la broche GND du DS1307 à la masse (GND) de l’@rduino.
- Installation de la bibliothèque :
- Téléchargez et installez la bibliothèque “RTClib” dans l’IDE Arduino. Cette bibliothèque facilite la communication avec le DS1307.
- Dans l’IDE Arduino, accédez à “Croquis” -> “Inclure une bibliothèque” -> “RTClib” pour inclure la bibliothèque dans votre code.
- Téléversement du code :
- Utilisez la bibliothèque RTClib pour interagir avec le DS1307 et lire/l’écrire l’heure et la date.
- Voici un exemple de code qui initialise le DS1307, lit l’heure et la date, puis les affiche sur le moniteur série :
#include <Wire.h>
#include <RTClib.h>
RTC_DS1307 rtc;
void setup() {
Wire.begin();
rtc.begin();
// Décommentez la ligne suivante pour régler l'heure et la date du DS1307
//rtc.adjust(DateTime(F(__DATE__), F(__TIME__)));
Serial.begin(9600);
delay(3000); // Attendre 3 secondes avant de démarrer
}
void loop() {
DateTime now = rtc.now();
// Afficher l'heure et la date sur le moniteur série
Serial.print(now.year(), DEC);
Serial.print('/');
Serial.print(now.month(), DEC);
Serial.print('/');
Serial.print(now.day(), 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); // Attendre 1 seconde avant de lire la prochaine heure et date
}
Assurez-vous d’avoir connecté correctement le DS1307 à l’@rduino et d’avoir installé la bibliothèque RTClib avant de téléverser le code.
Ce code initialise la communication avec le DS1307, lit l’heure et la date actuelles à partir du DS1307, puis les affiche sur le moniteur série de l’IDE Arduino. Vous pouvez également décommenter la ligne rtc.adjust()
pour régler l’heure et la date du DS1307 selon vos besoins.
Le DS1307 maintiendra l’heure et la date même lorsque l’alimentation de l’@rduino est coupée, grâce à sa batterie interne intégrée.