Programmation de la Dingo'Clock

Partager:

Difficulté:

Salut à tous !
Dans ce tutoriel, nous allons nous intéresser au codage du programme permettant à la Dingo'Clock de changer de fuseau horaire.
Cependant, malgré que le code soit fonctionnel, il nécessite encore quelques ajustements. Pour le moment, si l'utilisateur veut par exemple changer le fuseau horaire de New York à Paris, il faut qu'il appuie d'abord sur le bouton New York puis sur le bouton Paris.

Matériel :

Budget : 7€

  • 1 Carte Arduino Uno

Etape 1 : Déterminer les différentes fonctions

Voici un schéma du fonctionnement du programme. Plusieurs fonctions vont être utilisées :

  • Fonction Boutons : Détecte quel bouton a été pressé et associe ce bouton à la ville correspondante.
  • Fonction Heure : Prend en entrée la ville sélectionnée par l'utilisateur (via le bouton) et associe le retard correspondant à la ville. Ce retard représente le décalage horaire entre l'heure de la ville de départ (par défaut Paris) et celle sélectionnée.
  • Fonction LED : Détecte quel bouton a été pressé et fait clignoté la LED correspondant à la ville sélectionnée jusqu'à ce que le bon fuseau horaire soit atteint.
  • Fonction Aiguilles : Prend en entrée le retard associé à la ville sélectionnée et associe un mode Avance Rapide ou non.
  • Fonction Moteur : Prend en entrée le mode Avance Rapide. Si Avance Rapide = 1 alors le moteur tourne plus vite, signifiant que l'utilisateur souhaite changer de fuseau horaire. Sinon, le moteur tourne normalement.

Etape 2 : Initialisation des variables

On initialise tout d'abord les ports 13 et 7 de l'Arduino Uno que l'on va utiliser.
On initialise ensuite toutes les variables qui seront utilisées pour le fonctionnement des LED, des boutons et de l'horloge en général.

Etape 3 : Initialisation des fonctions

On initialise ensuite les fonctions qui seront utilisées. On indique alors les ports à détecter.

Etape 4 : La Boucle

On initialise aussi la boucle, qui indique quelles fonctions seront itérées.

Etape 5 : Fonction Boutons

On créé la fonction Boutons qui renverra une chaîne de caractères pour indiquer quelle ville a été sélectionnée par l'utilisateur.

Etape 6 : Fonction Heure

On créé ensuite la fonction Heure qui va déterminer le retard associé à la ville sélectionnée, tout en prenant en compte à quel fuseau horaire était réglé l'horloge avant que l'utilisateur ne souhaite changer de fuseau horaire. La fonction retournera alors le retard.

Etape 7 : Fonction Heure Partie 2

Etape 8 : Fonction Heure Partie 3

Rmq : Les lignes de la fonction contenant "Serial.print" sont utilisés pour tester le programme et savoir si il retourne les bonnes valeurs. Vous pouvez donc enlever ces lignes de code.

Etape 9 : Fonction LED

On créé la fonction LED qui va faire clignoter la LED correspondant à la ville sélectionnée par l'utilisateur. Cette LED arrêtera de clignoter lorsque le retard sera nul, c'est à dire lorsque le fuseau horaire aura bien été changé.

Etape 10 : Fonction Aiguilles

On créé la fonction Aiguilles qui va indiquer au moteur s'il doit se mettre en mode Avance Rapide tant que le retard ne sera pas nul.

Etape 11 : Fonction Moteur

Enfin, on créé la fonction moteur qui fait tourner le moteur rapidement tant que le retard n'est pas nul (signifiant que le fuseau horaire sélectionné n'a pas encore été atteint).

Etape 12 : Code Complet

Et voici le code complet !

Fichiers :

Partager:

Recevez une fois par mois les meilleurs tutoriels Déco dans votre boîte mail


Ces tutoriels devraient vous plaire

DIY : suspension en bois flotté et bocaux
Une cabane pour enfant en palettes
Le décapsuleur mural collecteur !

KylianT

Suivre

Vues: 14
J'aime: 1

Découvrez d'autres tutoriels de

KylianT

Découvrez tous les tutoriels partagés sur Oui Are Makers

Powered by Oui Are Makers