Difference between revisions of "Réveil mp3 avec arduino"

m (Enregistré en utilisant le bouton "Sauvegarder et continuer" du formulaire)
m (Enregistré en utilisant le bouton "Sauvegarder et continuer" du formulaire)
Line 1: Line 1:
 
{{ {{tntn|Tuto Details}}
 
{{ {{tntn|Tuto Details}}
 
|Licences=Attribution (CC BY)
 
|Licences=Attribution (CC BY)
|Description=Boite Réveil mp3 avec arduino uno
+
|Description=<translate>Boite Réveil mp3 avec arduino uno</translate>
 
|Area=Electronics, House, Music and Sound
 
|Area=Electronics, House, Music and Sound
 
|Type=Creation
 
|Type=Creation
Line 14: Line 14:
 
}}
 
}}
 
{{ {{tntn|Introduction}}
 
{{ {{tntn|Introduction}}
|Introduction=Boites en contreplaqué contenant un réveil-mp3 et un écran fonctionnant grâce à un arduino uno
+
|Introduction=<translate>Boites en contreplaqué contenant un réveil-mp3 et un écran fonctionnant grâce à un arduino uno</translate>
 
}}
 
}}
 
{{ {{tntn|Materials}}
 
{{ {{tntn|Materials}}
|Material=Arduino uno
+
|Material=<translate>Arduino uno
  
 
Grove - MP3 v2.0
 
Grove - MP3 v2.0
Line 27: Line 27:
 
N'importe quelle baffle mobile connectée au composant Grove - MP3 v2.0 par un mini jack
 
N'importe quelle baffle mobile connectée au composant Grove - MP3 v2.0 par un mini jack
  
Plaque contreplaqué
+
Plaque contreplaqué</translate>
|Tools=découpeuse lazer
+
|Tools=<translate>découpeuse lazer
  
imprimante 3d ultimaker 2
+
imprimante 3d ultimaker 2</translate>
 
|Tuto_Attachments={{ {{tntn|Tuto Attachments}}
 
|Tuto_Attachments={{ {{tntn|Tuto Attachments}}
 
|Attachment=Bento Box V1 2018 - etage meteo.pdf
 
|Attachment=Bento Box V1 2018 - etage meteo.pdf
Line 39: Line 39:
 
{{ {{tntn|Separator}}}}
 
{{ {{tntn|Separator}}}}
 
{{ {{tntn|Tuto Step}}
 
{{ {{tntn|Tuto Step}}
|Step_Title=decoupe
+
|Step_Title=<translate>decoupe</translate>
|Step_Content=
+
|Step_Content=<translate></translate>
 
}}
 
}}
 
{{ {{tntn|Tuto Step}}
 
{{ {{tntn|Tuto Step}}
|Step_Title=impression 3D
+
|Step_Title=<translate>impression 3D</translate>
|Step_Content=imprimante 3d ultimaker 2
+
|Step_Content=<translate>imprimante 3d ultimaker 2
  
 
Matière utilisée : PLA
 
Matière utilisée : PLA
  
Réglages : voir fichier config imp3D.png
+
Réglages : voir fichier config imp3D.png</translate>
 
}}
 
}}
 
{{ {{tntn|Tuto Step}}
 
{{ {{tntn|Tuto Step}}
|Step_Title=code arduino
+
|Step_Title=<translate>code arduino</translate>
|Step_Content=
+
|Step_Content=<translate>// DECLARATIONS
 +
 
 +
// Projet Réveil mp3
 +
 
 +
<nowiki>#</nowiki>include <Wire.h>
 +
 
 +
// Bibliothèque de gestion de l'horloge
 +
 
 +
// ************************************
 +
 
 +
<nowiki>#</nowiki>include "DS1307.h"
 +
 
 +
DS1307 clock; //define a object of DS1307 class
 +
 
 +
// Création des variables de stockage de l'heure et de l'heure du réveil (format HH:MM) :
 +
 
 +
// static uint8_t buzzer_hour[5] = {};
 +
 
 +
int buzzer_hour  = 0;
 +
 
 +
int buzzer_min   = 0;
 +
 
 +
int current_hour = 0;
 +
 
 +
int current_min  = 0;
 +
 
 +
// MP3
 +
 
 +
// ***
 +
 
 +
<nowiki>#</nowiki>include <SoftwareSerial.h>
 +
 
 +
<nowiki>#</nowiki>include <MP3Player_KT403A.h>
 +
 
 +
// define a SoftwareSerial class object that the name must be mp3,
 +
 
 +
// but you can change the pin number according to the actual situation.
 +
 
 +
SoftwareSerial mp3(7, 3);
 +
 
 +
// INITIALISATION
 +
 
 +
// ==============
 +
 
 +
void setup() {
 +
 
 +
 // Ouverture de la communication avec le PC :
 +
 
 +
 Serial.begin(9600); 
 +
 
 +
 // Démarrage de l'horloge :
 +
 
 +
 clock.begin();
 +
 
 +
 clock.fillByYMD(2018,07,01);//Ju  30,2018
 +
 
 +
 clock.fillByHMS(20,20,10);//15:00 00"
 +
 
 +
 clock.fillDayOfWeek(SAT);//Saturday
 +
 
 +
 clock.setTime();//write time to the RTC chip
 +
 
 +
 // Réglage des paramètres du lecteur MP3 :
 +
 
 +
 mp3.begin(9600);
 +
 
 +
 SelectPlayerDevice(0x02);   // Select SD card as the player device.
 +
 
 +
 SetVolume(0x0E);            // Set the volume, the range is 0x00 to 0x1E [0 31]. 
 +
 
 +
 // Affichage :
 +
 
 +
 while(!Serial);
 +
 
 +
 Serial.println("Entrer une heure d'alarme (HH:MM)");
 +
 
 +
 Serial.println(" ");
 +
 
 +
 delay(100);
 +
 
 +
}
 +
 
 +
// BOUCLE PRINCIPALE
 +
 
 +
// =================
 +
 
 +
void loop(){  
 +
 
 +
  // Affichage de l'heure au format HH:MM
 +
 
 +
  // ************************************
 +
 
 +
  printTime();  
 +
 
 +
  // Lecture d'une heure de réveil :
 +
 
 +
  // *******************************
 +
 
 +
  while (Serial.available() > 0) {
 +
 
 +
    // cherche le prochain entier dans l'incoming serial stream :
 +
 
 +
    buzzer_hour = Serial.parseInt();    
 +
 
 +
    // do it again:
 +
 
 +
    buzzer_min = Serial.parseInt();    
 +
 
 +
    Serial.println(" ");
 +
 
 +
    Serial.print("Vous avez saisi l'heure d'alarme suivante: ");
 +
 
 +
    Serial.print(buzzer_hour);    
 +
 
 +
    if(buzzer_min < 10) {
 +
 
 +
      Serial.print(":0");
 +
 
 +
      Serial.print(buzzer_min);
 +
 
 +
    }
 +
 
 +
    else {
 +
 
 +
      Serial.print(":");
 +
 
 +
      Serial.println(buzzer_min);
 +
 
 +
    }
 +
 
 +
  }    
 +
 
 +
  // On compare l'heure réglée de l'alarme et l'heure actuelle :
 +
 
 +
  // ***********************************************************
 +
 
 +
  if ((buzzer_hour == current_hour) && (buzzer_min == current_min)) {
 +
 
 +
  //if (1) { // condition pour tester le MP3 au besoin.
 +
 
 +
    // Lecture :
 +
 
 +
    Serial.println("Alarme MP3 Playing");
 +
 
 +
    Serial.println(" ");    
 +
 
 +
    // On lance le MP3 pendant 30 secondes et on le met en pause
 +
 
 +
    PlayResume();
 +
 
 +
    delay(60000);
 +
 
 +
    PlayPause();    
 +
 
 +
    // On nettoie l'heure du buzzer :
 +
 
 +
    buzzer_hour = 0;
 +
 
 +
    buzzer_min  = 0;    
 +
 
 +
    // On propose à nouveau d'entrer un heure d'alarme :
 +
 
 +
    Serial.println("Entrer une heure d'alarme (HH:MM)");
 +
 
 +
    Serial.println(" ");
 +
 
 +
    delay(100);
 +
 
 +
  }
 +
 
 +
  delay(100);
 +
 
 +
}
 +
 
 +
// ==================================================== //
 +
 
 +
//    FONCTIONS APPELEES DANS LA BOUCLE PRINCIPALE      //
 +
 
 +
// ==================================================== //
 +
 
 +
// Fonction "printTime" : écrit l'heure sur le moniteur série
 +
 
 +
void printTime() {
 +
 
 +
 clock.getTime();
 +
 
 +
 Serial.println(" ");
 +
 
 +
 current_hour = clock.hour;
 +
 
 +
 current_min  = clock.minute;
 +
 
 +
 Serial.print(clock.hour, DEC);
 +
 
 +
 if(clock.minute < 10) {
 +
 
 +
   Serial.print(":0");
 +
 
 +
   Serial.print(clock.minute, DEC);
 +
 
 +
 }
 +
 
 +
 else {
 +
 
 +
   Serial.print(":");
 +
 
 +
   Serial.print(clock.minute, DEC);
 +
 
 +
 }
 +
 
 +
 Serial.println(" ");
 +
 
 +
 delay (3000);
 +
 
 +
}</translate>
 
}}
 
}}
 
{{ {{tntn|Tuto Step}}
 
{{ {{tntn|Tuto Step}}
|Step_Title=
+
|Step_Title=<translate></translate>
|Step_Content=
+
|Step_Content=<translate></translate>
 
}}
 
}}
 
{{ {{tntn|Tuto Step}}
 
{{ {{tntn|Tuto Step}}
|Step_Title=impression 3D
+
|Step_Title=<translate>impression 3D</translate>
|Step_Content=imprimante 3d ultimaker 2
+
|Step_Content=<translate>imprimante 3d ultimaker 2
  
 
Matière utilisée : PLA
 
Matière utilisée : PLA
  
Réglages : voir fichier config imp3D.png
+
Réglages : voir fichier config imp3D.png</translate>
 
}}
 
}}
 
{{ {{tntn|Tuto Step}}
 
{{ {{tntn|Tuto Step}}
|Step_Title=code arduino
+
|Step_Title=<translate>code arduino</translate>
|Step_Content=
+
|Step_Content=<translate>// DECLARATIONS
 +
 
 +
// Projet Réveil mp3
 +
 
 +
<nowiki>#</nowiki>include <Wire.h>
 +
 
 +
// Bibliothèque de gestion de l'horloge
 +
 
 +
// ************************************
 +
 
 +
<nowiki>#</nowiki>include "DS1307.h"
 +
 
 +
DS1307 clock; //define a object of DS1307 class
 +
 
 +
// Création des variables de stockage de l'heure et de l'heure du réveil (format HH:MM) :
 +
 
 +
// static uint8_t buzzer_hour[5] = {};
 +
 
 +
int buzzer_hour  = 0;
 +
 
 +
int buzzer_min   = 0;
 +
 
 +
int current_hour = 0;
 +
 
 +
int current_min  = 0;
 +
 
 +
// MP3
 +
 
 +
// ***
 +
 
 +
<nowiki>#</nowiki>include <SoftwareSerial.h>
 +
 
 +
<nowiki>#</nowiki>include <MP3Player_KT403A.h>
 +
 
 +
// define a SoftwareSerial class object that the name must be mp3,
 +
 
 +
// but you can change the pin number according to the actual situation.
 +
 
 +
SoftwareSerial mp3(7, 3);
 +
 
 +
// INITIALISATION
 +
 
 +
// ==============
 +
 
 +
void setup() {
 +
 
 +
 // Ouverture de la communication avec le PC :
 +
 
 +
 Serial.begin(9600); 
 +
 
 +
 // Démarrage de l'horloge :
 +
 
 +
 clock.begin();
 +
 
 +
 clock.fillByYMD(2018,07,01);//Ju  30,2018
 +
 
 +
 clock.fillByHMS(20,20,10);//15:00 00"
 +
 
 +
 clock.fillDayOfWeek(SAT);//Saturday
 +
 
 +
 clock.setTime();//write time to the RTC chip
 +
 
 +
 // Réglage des paramètres du lecteur MP3 :
 +
 
 +
 mp3.begin(9600);
 +
 
 +
 SelectPlayerDevice(0x02);   // Select SD card as the player device.
 +
 
 +
 SetVolume(0x0E);            // Set the volume, the range is 0x00 to 0x1E [0 31]. 
 +
 
 +
 // Affichage :
 +
 
 +
 while(!Serial);
 +
 
 +
 Serial.println("Entrer une heure d'alarme (HH:MM)");
 +
 
 +
 Serial.println(" ");
 +
 
 +
 delay(100);
 +
 
 +
}
 +
 
 +
// BOUCLE PRINCIPALE
 +
 
 +
// =================
 +
 
 +
void loop(){  
 +
 
 +
  // Affichage de l'heure au format HH:MM
 +
 
 +
  // ************************************
 +
 
 +
  printTime();  
 +
 
 +
  // Lecture d'une heure de réveil :
 +
 
 +
  // *******************************
 +
 
 +
  while (Serial.available() > 0) {
 +
 
 +
    // cherche le prochain entier dans l'incoming serial stream :
 +
 
 +
    buzzer_hour = Serial.parseInt();    
 +
 
 +
    // do it again:
 +
 
 +
    buzzer_min = Serial.parseInt();    
 +
 
 +
    Serial.println(" ");
 +
 
 +
    Serial.print("Vous avez saisi l'heure d'alarme suivante: ");
 +
 
 +
    Serial.print(buzzer_hour);    
 +
 
 +
    if(buzzer_min < 10) {
 +
 
 +
      Serial.print(":0");
 +
 
 +
      Serial.print(buzzer_min);
 +
 
 +
    }
 +
 
 +
    else {
 +
 
 +
      Serial.print(":");
 +
 
 +
      Serial.println(buzzer_min);
 +
 
 +
    }
 +
 
 +
  }    
 +
 
 +
  // On compare l'heure réglée de l'alarme et l'heure actuelle :
 +
 
 +
  // ***********************************************************
 +
 
 +
  if ((buzzer_hour == current_hour) && (buzzer_min == current_min)) {
 +
 
 +
  //if (1) { // condition pour tester le MP3 au besoin.
 +
 
 +
    // Lecture :
 +
 
 +
    Serial.println("Alarme MP3 Playing");
 +
 
 +
    Serial.println(" ");    
 +
 
 +
    // On lance le MP3 pendant 30 secondes et on le met en pause
 +
 
 +
    PlayResume();
 +
 
 +
    delay(60000);
 +
 
 +
    PlayPause();    
 +
 
 +
    // On nettoie l'heure du buzzer :
 +
 
 +
    buzzer_hour = 0;
 +
 
 +
    buzzer_min  = 0;    
 +
 
 +
    // On propose à nouveau d'entrer un heure d'alarme :
 +
 
 +
    Serial.println("Entrer une heure d'alarme (HH:MM)");
 +
 
 +
    Serial.println(" ");
 +
 
 +
    delay(100);
 +
 
 +
  }
 +
 
 +
  delay(100);
 +
 
 +
}
 +
 
 +
// ==================================================== //
 +
 
 +
//    FONCTIONS APPELEES DANS LA BOUCLE PRINCIPALE      //
 +
 
 +
// ==================================================== //
 +
 
 +
// Fonction "printTime" : écrit l'heure sur le moniteur série
 +
 
 +
void printTime() {
 +
 
 +
 clock.getTime();
 +
 
 +
 Serial.println(" ");
 +
 
 +
 current_hour = clock.hour;
 +
 
 +
 current_min  = clock.minute;
 +
 
 +
 Serial.print(clock.hour, DEC);
 +
 
 +
 if(clock.minute < 10) {
 +
 
 +
   Serial.print(":0");
 +
 
 +
   Serial.print(clock.minute, DEC);
 +
 
 +
 }
 +
 
 +
 else {
 +
 
 +
   Serial.print(":");
 +
 
 +
   Serial.print(clock.minute, DEC);
 +
 
 +
 }
 +
 
 +
 Serial.println(" ");
 +
 
 +
 delay (3000);
 +
 
 +
}</translate>
 
}}
 
}}
 
{{ {{tntn|Tuto Step}}
 
{{ {{tntn|Tuto Step}}
|Step_Title=
+
|Step_Title=<translate></translate>
|Step_Content=
+
|Step_Content=<translate></translate>
 
}}
 
}}
 
{{ {{tntn|Notes}}
 
{{ {{tntn|Notes}}
|Notes=
+
|Notes=<translate></translate>
 
}}
 
}}
 
{{ {{tntn|Tuto Status}}
 
{{ {{tntn|Tuto Status}}
|Complete=Draft
+
|Complete=Published
 
}}
 
}}

Revision as of 14:50, 2 July 2018

Author avatarCyriljak | Last edit 9/12/2019 by Clementflipo

No image yet

Boite Réveil mp3 avec arduino uno
Difficulty
Medium
Duration
10 hour(s)
Categories
Electronics, House, Music & Sound
Cost
50 EUR (€)
Other languages:
français
License : Attribution (CC BY)

Introduction

Boites en contreplaqué contenant un réveil-mp3 et un écran fonctionnant grâce à un arduino uno

Materials

Arduino uno

Grove - MP3 v2.0

Grove - RTC

Mini SD

N'importe quelle baffle mobile connectée au composant Grove - MP3 v2.0 par un mini jack

Plaque contreplaqué

Tools

découpeuse lazer

imprimante 3d ultimaker 2

Step 1 - decoupe

Step 2 - impression 3D

imprimante 3d ultimaker 2

Matière utilisée : PLA

Réglages : voir fichier config imp3D.png

Step 3 - code arduino

// DECLARATIONS

// Projet Réveil mp3

#include <Wire.h>

// Bibliothèque de gestion de l'horloge

// ************************************

#include "DS1307.h"

DS1307 clock; //define a object of DS1307 class

// Création des variables de stockage de l'heure et de l'heure du réveil (format HH:MM) :

// static uint8_t buzzer_hour[5] = {};

int buzzer_hour  = 0;

int buzzer_min   = 0;

int current_hour = 0;

int current_min  = 0;

// MP3

// ***

#include <SoftwareSerial.h>

#include <MP3Player_KT403A.h>

// define a SoftwareSerial class object that the name must be mp3,

// but you can change the pin number according to the actual situation.

SoftwareSerial mp3(7, 3);

// INITIALISATION

// ==============

void setup() {

 // Ouverture de la communication avec le PC :

 Serial.begin(9600); 

 // Démarrage de l'horloge :

 clock.begin();

 clock.fillByYMD(2018,07,01);//Ju  30,2018

 clock.fillByHMS(20,20,10);//15:00 00"

 clock.fillDayOfWeek(SAT);//Saturday

 clock.setTime();//write time to the RTC chip

 // Réglage des paramètres du lecteur MP3 :

 mp3.begin(9600);

 SelectPlayerDevice(0x02);   // Select SD card as the player device.

 SetVolume(0x0E);            // Set the volume, the range is 0x00 to 0x1E [0 31]. 

 // Affichage :

 while(!Serial);

 Serial.println("Entrer une heure d'alarme (HH:MM)");

 Serial.println(" ");

 delay(100);

}

// BOUCLE PRINCIPALE

// =================

void loop(){  

  // Affichage de l'heure au format HH:MM

  // ************************************

  printTime();  

  // Lecture d'une heure de réveil :

  // *******************************

  while (Serial.available() > 0) {

    // cherche le prochain entier dans l'incoming serial stream :

    buzzer_hour = Serial.parseInt();    

    // do it again:

    buzzer_min = Serial.parseInt();    

    Serial.println(" ");

    Serial.print("Vous avez saisi l'heure d'alarme suivante: ");

    Serial.print(buzzer_hour);    

    if(buzzer_min < 10) {

      Serial.print(":0");

      Serial.print(buzzer_min);

    }

    else {

      Serial.print(":");

      Serial.println(buzzer_min);

    }

  }    

  // On compare l'heure réglée de l'alarme et l'heure actuelle :

  // ***********************************************************

  if ((buzzer_hour == current_hour) && (buzzer_min == current_min)) {

  //if (1) { // condition pour tester le MP3 au besoin.

    // Lecture :

    Serial.println("Alarme MP3 Playing");

    Serial.println(" ");    

    // On lance le MP3 pendant 30 secondes et on le met en pause

    PlayResume();

    delay(60000);

    PlayPause();    

    // On nettoie l'heure du buzzer :

    buzzer_hour = 0;

    buzzer_min  = 0;    

    // On propose à nouveau d'entrer un heure d'alarme :

    Serial.println("Entrer une heure d'alarme (HH:MM)");

    Serial.println(" ");

    delay(100);

  }

  delay(100);

}

// ==================================================== //

//    FONCTIONS APPELEES DANS LA BOUCLE PRINCIPALE      //

// ==================================================== //

// Fonction "printTime" : écrit l'heure sur le moniteur série

void printTime() {

 clock.getTime();

 Serial.println(" ");

 current_hour = clock.hour;

 current_min  = clock.minute;

 Serial.print(clock.hour, DEC);

 if(clock.minute < 10) {

   Serial.print(":0");

   Serial.print(clock.minute, DEC);

 }

 else {

   Serial.print(":");

   Serial.print(clock.minute, DEC);

 }

 Serial.println(" ");

 delay (3000);

}

Step 4 -

Step 5 - impression 3D

imprimante 3d ultimaker 2

Matière utilisée : PLA

Réglages : voir fichier config imp3D.png

Step 6 - code arduino

// DECLARATIONS

// Projet Réveil mp3

#include <Wire.h>

// Bibliothèque de gestion de l'horloge

// ************************************

#include "DS1307.h"

DS1307 clock; //define a object of DS1307 class

// Création des variables de stockage de l'heure et de l'heure du réveil (format HH:MM) :

// static uint8_t buzzer_hour[5] = {};

int buzzer_hour  = 0;

int buzzer_min   = 0;

int current_hour = 0;

int current_min  = 0;

// MP3

// ***

#include <SoftwareSerial.h>

#include <MP3Player_KT403A.h>

// define a SoftwareSerial class object that the name must be mp3,

// but you can change the pin number according to the actual situation.

SoftwareSerial mp3(7, 3);

// INITIALISATION

// ==============

void setup() {

 // Ouverture de la communication avec le PC :

 Serial.begin(9600); 

 // Démarrage de l'horloge :

 clock.begin();

 clock.fillByYMD(2018,07,01);//Ju  30,2018

 clock.fillByHMS(20,20,10);//15:00 00"

 clock.fillDayOfWeek(SAT);//Saturday

 clock.setTime();//write time to the RTC chip

 // Réglage des paramètres du lecteur MP3 :

 mp3.begin(9600);

 SelectPlayerDevice(0x02);   // Select SD card as the player device.

 SetVolume(0x0E);            // Set the volume, the range is 0x00 to 0x1E [0 31]. 

 // Affichage :

 while(!Serial);

 Serial.println("Entrer une heure d'alarme (HH:MM)");

 Serial.println(" ");

 delay(100);

}

// BOUCLE PRINCIPALE

// =================

void loop(){  

  // Affichage de l'heure au format HH:MM

  // ************************************

  printTime();  

  // Lecture d'une heure de réveil :

  // *******************************

  while (Serial.available() > 0) {

    // cherche le prochain entier dans l'incoming serial stream :

    buzzer_hour = Serial.parseInt();    

    // do it again:

    buzzer_min = Serial.parseInt();    

    Serial.println(" ");

    Serial.print("Vous avez saisi l'heure d'alarme suivante: ");

    Serial.print(buzzer_hour);    

    if(buzzer_min < 10) {

      Serial.print(":0");

      Serial.print(buzzer_min);

    }

    else {

      Serial.print(":");

      Serial.println(buzzer_min);

    }

  }    

  // On compare l'heure réglée de l'alarme et l'heure actuelle :

  // ***********************************************************

  if ((buzzer_hour == current_hour) && (buzzer_min == current_min)) {

  //if (1) { // condition pour tester le MP3 au besoin.

    // Lecture :

    Serial.println("Alarme MP3 Playing");

    Serial.println(" ");    

    // On lance le MP3 pendant 30 secondes et on le met en pause

    PlayResume();

    delay(60000);

    PlayPause();    

    // On nettoie l'heure du buzzer :

    buzzer_hour = 0;

    buzzer_min  = 0;    

    // On propose à nouveau d'entrer un heure d'alarme :

    Serial.println("Entrer une heure d'alarme (HH:MM)");

    Serial.println(" ");

    delay(100);

  }

  delay(100);

}

// ==================================================== //

//    FONCTIONS APPELEES DANS LA BOUCLE PRINCIPALE      //

// ==================================================== //

// Fonction "printTime" : écrit l'heure sur le moniteur série

void printTime() {

 clock.getTime();

 Serial.println(" ");

 current_hour = clock.hour;

 current_min  = clock.minute;

 Serial.print(clock.hour, DEC);

 if(clock.minute < 10) {

   Serial.print(":0");

   Serial.print(clock.minute, DEC);

 }

 else {

   Serial.print(":");

   Serial.print(clock.minute, DEC);

 }

 Serial.println(" ");

 delay (3000);

}

Step 7 -

Comments

Published