Dans ce projet on va voir comment afficher l’heure et la date sur un écran LCD. Ce projet peut vous être très utile pour faire un réveil ou juste une horloge. Il vous suffira juste d’ajouter des piles à la carte Arduino et d’imprimer un boitier à l’imprimante 3d pour avoir une vraie horloge autonome. Difficulté : Matériel nécessaire On va maintenant le matériel nécessaire pour le projet :Une carte Arduino UnoUn Ecran LCD 16×2 à Liquide CrystalUn potentiomètreUne résistance 220 ohmsFils de liaisons (une quinzaine environ !) Schéma du projet A quoi sert le potentiomètre ? Le potentiomètre permet de régler la luminosité de l’écran. Vous pouvez vous en passer en branchant directement du 5V sur le fil marron et le GND qui va du potentiomètre à l’écran vous pouvez le relier directement sur la carte Arduino. Programme du projet #include <LiquidCrystal.h> // Librairie pour Ecran LCD int heure_date[6] = {10,34,18,18,10,2022}; //seconde minute heure jour mois année int mod[6] = {60,60,24,31,12,3000}; // limite d incrementation LiquidCrystal lcd(12, 11, 5, 4, 3, 2); // On initialise la librairie avec les pins ou l'ecran est branche void setup() { lcd.begin(16, 2); // On initialise l'ecran avec sa taille } void loop() { heure_date[0]++;//incrementation du temps for (int i = 0; i < 6 ; i++){ if (heure_date[i] == mod[i]) { // verification du dépassement de limite if (i<5) {heure_date[i+1] ++;} heure_date[i] = 0; } } lcd.setCursor(0,0); //On place le curseur sur la première ligne for (int j = 3; j < 5; j++) { //affichage de la date if (heure_date[j]<10){ lcd.print("0"); lcd.print(heure_date[j]); } else {lcd.print(heure_date[j]);} lcd.print("/"); } lcd.print(heure_date[5]); lcd.setCursor(0,1); //On place le curseur sur la deuxième ligne for (int j = 2; j >= 0; j--) { //affichage de l'heure if (heure_date[j]<10) { lcd.print ("0"); lcd.print(heure_date[j]); }else {lcd.print(heure_date[j]);} if (j != 0){ lcd.print(":"); } } delay(250); } Modifier l'heure et la date dans le programme ! Comme vous avez pu le voir sur l’image, l’heure et la date de départ est fixe et n’est pas forcément au bon jour. Vous pouvez donc changer par vous-même cette date dans le programme.Voici la ligne à modifier : int heure_date[6] = {10,34,18,18,10,2022}; //seconde minute heure jour mois année Comment conserver l'heure actuelle quand l'Arduino est éteint ? Comme vous avez pu voir, l’horloge et la date ne continue pas de se mettre à jour une fois la carte Arduino éteinte. Ceci peut être embêtant si vous faites une horloge par exemple. Pour régler ce souci, vous pouvez ajouter au projet un module horloge rtc (comme le DS3231) qui va calculer le temps même lorsque la carte Arduino est éteinte grâce à une pile indépendant de l’alimentation de la carte Arduino. Simulation du projet Voici la simulation du projet :