#include <Wire.
h>
#include <DS1307.h>
// Définition des broches pour le module DS1307
const int SCL_PIN = A5; // Broche SCL
const int SDA_PIN = A4; // Broche SDA
// Création d'une instance de la classe DS1307
DS1307 rtc(SCL_PIN, SDA_PIN);
void setup() {
// Initialisation de la communication série
[Link](9600);
// Initialisation du module DS1307
[Link]();
// Définition de la date et de l'heure initiales (facultatif)
// [Link](MONDAY); // Jour de la semaine (LUNDI = 1, DIMANCHE = 7)
// [Link](1, 1, 2024); // Date (jour, mois, année)
// [Link](12, 0, 0); // Heure (heure, minute, seconde)
void loop() {
// Lecture de la date et de l'heure actuelles
DateTime now = [Link]();
// Affichage de la date et de l'heure actuelles
[Link]([Link](), DEC);
[Link]('/');
[Link]([Link](), DEC);
[Link]('/');
[Link]([Link](), DEC);
[Link](' ');
[Link]([Link](), DEC);
[Link](':');
[Link]([Link](), DEC);
[Link](':');
[Link]([Link](), DEC);
// Attente de 1 seconde avant de relire la date et l'heure
delay(1000);
Ce programme utilise la bibliothèque DS1307 pour communiquer avec le
module DS1307. Il lit la date et l'heure actuelles et les affiche sur la
console série.
Notez que vous devez installer la bibliothèque DS1307 dans votre
environnement de développement Arduino pour que ce programme
fonctionne.
Il est également important de vérifier que les broches SCL et SDA sont
correctement connectées au module DS1307 et à l'Arduino.
Voici un exemple de programme pour une horloge numérique utilisant le
module DS1307 et des LEDs avec Arduino :
C++
#include <Wire.h>
#include <DS1307.h>
// Définition des broches pour le module DS1307
const int SCL_PIN = A5; // Broche SCL
const int SDA_PIN = A4; // Broche SDA
// Définition des broches pour les LEDs
const int LED_HEURE_1 = 2;
const int LED_HEURE_10 = 3;
const int LED_MINUTE_1 = 4;
const int LED_MINUTE_10 = 5;
const int LED_SECONDE_1 = 6;
const int LED_SECONDE_10 = 7;
// Création d'une instance de la classe DS1307
DS1307 rtc(SCL_PIN, SDA_PIN);
void setup() {
// Initialisation de la communication série
[Link](9600);
// Initialisation du module DS1307
[Link]();
// Définition de la date et de l'heure initiales (facultatif)
// [Link](MONDAY); // Jour de la semaine (LUNDI = 1, DIMANCHE = 7)
// [Link](1, 1, 2024); // Date (jour, mois, année)
// [Link](12, 0, 0); // Heure (heure, minute, seconde)
// Initialisation des LEDs
pinMode(LED_HEURE_1, OUTPUT);
pinMode(LED_HEURE_10, OUTPUT);
pinMode(LED_MINUTE_1, OUTPUT);
pinMode(LED_MINUTE_10, OUTPUT);
pinMode(LED_SECONDE_1, OUTPUT);
pinMode(LED_SECONDE_10, OUTPUT);
void loop() {
// Lecture de la date et de l'heure actuelles
DateTime now = [Link]();
// Affichage de l'heure
int heure = [Link]();
int heure_10 = heure / 10;
int heure_1 = heure % 10;
digitalWrite(LED_HEURE_10, (heure_10 == 1) ? HIGH : LOW);
digitalWrite(LED_HEURE_1, (heure_1 == 1) ? HIGH : LOW);
// Affichage des minutes
int minute = [Link]();
int minute_10 = minute / 10;
int minute_1 = minute % 10;
digitalWrite(LED_MINUTE_10, (minute_10 == 1) ? HIGH : LOW);
digitalWrite(LED_MINUTE_1, (minute_1 == 1) ? HIGH : LOW);
// Affichage des secondes
int seconde = [Link]();
int seconde_10 = seconde / 10;
int seconde_1 = seconde % 10;
digitalWrite(LED_SECONDE_10, (seconde_10 == 1) ? HIGH : LOW);
digitalWrite(LED_SECONDE_1, (seconde_1 == 1) ? HIGH : LOW);
// Attente de 1 seconde avant de relire la date et l'heure
delay(1000);
Ce programme utilise le module DS1307 pour lire la date et l'heure
actuelles, puis utilise des LEDs pour afficher l'heure, les minutes et les
secondes.
Notez que vous devez connecter les LEDs aux broches correspondantes
sur l'Arduino, et que vous devez également connecter le module DS1307
aux broches SCL et SDA sur l'Arduino.
Voici un exemple de programme pour une horloge numérique utilisant le
module DS1307 et des LEDs avec Arduino :
C++
#include <Wire.h>
#include <DS1307.h>
// Définition des broches pour le module DS1307
const int SCL_PIN = A5; // Broche SCL
const int SDA_PIN = A4; // Broche SDA
// Définition des broches pour les LEDs
const int LED_HEURE_1 = 2;
const int LED_HEURE_10 = 3;
const int LED_MINUTE_1 = 4;
const int LED_MINUTE_10 = 5;
const int LED_SECONDE_1 = 6;
const int LED_SECONDE_10 = 7;
// Création d'une instance de la classe DS1307
DS1307 rtc(SCL_PIN, SDA_PIN);
void setup() {
// Initialisation de la communication série
[Link](9600);
// Initialisation du module DS1307
[Link]();
// Définition de la date et de l'heure initiales (facultatif)
// [Link](MONDAY); // Jour de la semaine (LUNDI = 1, DIMANCHE = 7)
// [Link](1, 1, 2024); // Date (jour, mois, année)
// [Link](12, 0, 0); // Heure (heure, minute, seconde)
// Initialisation des LEDs
pinMode(LED_HEURE_1, OUTPUT);
pinMode(LED_HEURE_10, OUTPUT);
pinMode(LED_MINUTE_1, OUTPUT);
pinMode(LED_MINUTE_10, OUTPUT);
pinMode(LED_SECONDE_1, OUTPUT);
pinMode(LED_SECONDE_10, OUTPUT);
void loop() {
// Lecture de la date et de l'heure actuelles
DateTime now = [Link]();
// Affichage de l'heure
int heure = [Link]();
int heure_10 = heure / 10;
int heure_1 = heure % 10;
digitalWrite(LED_HEURE_10, (heure_10 == 1) ? HIGH : LOW);
digitalWrite(LED_HEURE_1, (heure_1 == 1) ? HIGH : LOW);
// Affichage des minutes
int minute = [Link]();
int minute_10 = minute / 10;
int minute_1 = minute % 10;
digitalWrite(LED_MINUTE_10, (minute_10 == 1) ? HIGH : LOW);
digitalWrite(LED_MINUTE_1, (minute_1 == 1) ? HIGH : LOW);
// Affichage des secondes
int seconde = [Link]();
int seconde_10 = seconde / 10;
int seconde_1 = seconde % 10;
digitalWrite(LED_SECONDE_10, (seconde_10 == 1) ? HIGH : LOW);
digitalWrite(LED_SECONDE_1, (seconde_1 == 1) ? HIGH : LOW);
// Attente de 1 seconde avant de relire la date et l'heure
delay(1000);
Ce programme utilise le module DS1307 pour lire la date et l'heure
actuelles, puis utilise des LEDs pour afficher l'heure, les minutes et les
secondes.
Notez que vous devez connecter les LEDs aux broches correspondantes
sur l'Arduino, et que vous devez également connecter le module DS1307
aux broches SCL et SDA sur l'Arduino.
Il est également important de noter que ce programme utilise une
méthode simple pour afficher l'heure, les minutes et les secondes, en
utilisant des LEDs pour représenter les chiffres. Il existe des méthodes plus
complexes pour afficher l'heure, telles que l'utilisation d'afficheurs à 7
segments ou d'écrans LCD.