Table des matières:

Horloge numérique analogique : 4 étapes (avec images)
Horloge numérique analogique : 4 étapes (avec images)

Vidéo: Horloge numérique analogique : 4 étapes (avec images)

Vidéo: Horloge numérique analogique : 4 étapes (avec images)
Vidéo: Test de l'Horloge Numérique Calendrier avec Date Jour Et Heure Lemnoi 2024, Juillet
Anonim
Image
Image
Construire l'horloge
Construire l'horloge

La raison de la fabrication de cette horloge était que mon horloge IKEA d'origine ne fonctionnait plus et j'ai vraiment aimé le boîtier de cette horloge. J'ai trouvé que c'était un gaspillage de jeter l'horloge et j'ai décidé de la réutiliser pour une horloge analogique/numérique.

J'aurais pu faire une horloge standard mais j'ai décidé de faire quelque chose de différent. Comme toute autre horloge, elle affiche l'heure mais pas de manière standard. À l'aide de 60 LED bicolores rouges/vertes, l'horloge indique l'heure. Les LED rouges sont utilisées pour afficher les heures et les LED vertes indiquent les minutes. Les secondes sont indiquées par une LED jaune (rouge + verte) marche et par une LED jaune clignotante au centre de l'horloge.

Il faut un peu de pratique pour savoir lire l'horloge. Étant donné que les LED sont utilisées pour afficher à la fois les heures et les minutes, il faut une manière spéciale de présenter l'heure. L'heure est affichée sous la forme d'une barre de LED où la barre la plus longue affiche soit les heures, soit les minutes. Si la barre la plus longue est présentée par les heures, la barre la plus courte présente les minutes en vert et la partie restante montre les heures en rouge. Afin de rendre l'horloge plus lisible dans les cas où les barres sont courtes, j'ai ajouté un indicateur d'heure utilisant la LED rouge. Si les minutes deviennent plus grandes que les heures, les barres permutent, c'est-à-dire que toutes les minutes vertes précédentes deviennent rouges pour afficher les heures et la partie restante affichera les minutes, donc en fait presque tout le vert devient rouge et inversement.

Il est un peu difficile d'expliquer comment cela fonctionne, alors s'il vous plaît regardez la vidéo. En raison du multiplexage des LED, il semble que les LED clignotent dans la vidéo. Ceci n'est capturé que par la caméra, pas par l'œil humain.

Comme toujours, j'ai construit ce projet autour de mon microcontrôleur préféré le PIC, en utilisant le langage de programmation JAL mais vous pouvez également utiliser un Arduino.

Étape 1: les dessins

Au total, j'ai fait trois versions différentes de l'horloge avant d'être satisfait. Ces versions ont été conçues comme suit:

  1. Utilisation d'un cristal standard de 20 MHz pour le PIC. Avec cette conception, l'horloge était désynchronisée 1 seconde après une journée de fonctionnement. C'était trop. À côté de cela, le temps a été perdu lorsque vous avez éteint l'horloge car il n'y avait pas de batterie de secours dans la conception.
  2. Utilisation d'un module d'horloge DS1302. La bonne chose à propos de ce module est qu'il dispose d'une batterie de secours afin que le temps ne soit pas perdu lorsque vous éteignez l'horloge. Lorsque j'ai testé l'horloge avec ce module, l'horloge était désynchronisée de 7 secondes ! après un jour. Je pense que cela est causé soit par un mauvais cristal, soit par une mauvaise conception de PCB.
  3. Utilisation d'un module d'horloge DS3231. Ce module dispose également d'une batterie de secours et il est plus précis que le DS1302. L'horloge a bien fonctionné avec ce module, donc je l'ai utilisé pour la conception finale. De ce fait, le PIC n'avait plus besoin de cristal.

La conception complète est établie en trois schémas:

  1. Contrôleur d'horloge utilisant le PIC
  2. Pilote de led utilisant des registres à décalage
  3. 60 LED bicolores

Étape 2: Composants requis

Vous devez disposer des composants suivants pour ce projet:

  • Un morceau de planche à pain
  • Microcontrôleur PIC 16F1823
  • 3 registres à décalage 74HC595
  • 1 barrette de transistors Darlington ULN2803A
  • Prises IC: 1 * 14 broches, 3 * 16 broches, 1 * 18 broches
  • Module d'horloge DS3231
  • 2 boutons poussoirs
  • Résistances: 2*33k, 8*100 Ohm, 8*47 Ohm
  • 1 condensateur électrolytique 100 uF/16V
  • 4 condensateurs 100 nF
  • LED: 60 2 mm bicolore (rouge/vert), 1 5 mm jaune
  • Prise jack 3 mm
  • Adaptateur 5 Volts, par exemple celui qui sert à recharger un Smartphone. Assurez-vous qu'il s'agit d'une véritable alimentation de 5 volts.
  • Facultatif: en-têtes pour connecter les pièces externes à la maquette
  • Fil et pince à dénuder Kynar
  • Un boîtier pour votre horloge.

Voir les diagrammes schématiques sur la façon de connecter les composants. Il nécessite pas mal de soudure, notamment pour connecter les 60 LED. Des diagrammes schématiques sont inclus dans le fichier zip.

Étape 3: Construire l'horloge

Construire l'horloge
Construire l'horloge
Construire l'horloge
Construire l'horloge

Jetez un œil aux photos sur la façon dont je construis l'horloge. J'ai commencé par retirer les éléments internes de l'horloge d'origine après quoi j'ai percé 60 trous de 2 mm pour les LEDs bicolores dans la plaque avant. Ensuite, j'ai peint la plaque avant en noir et j'ai ajouté un morceau de plastique pour couvrir le trou où se trouvaient les aiguilles d'origine de l'horloge. Maintenant, une LED jaune est située à cette position.

Ensuite, j'ai monté les 60 LED, utilisé de la colle chaude pour les maintenir à leur emplacement et les ai connectées les unes aux autres avec du fil Kynar. Enfin, j'ai assemblé la maquette avec tous les composants.

Sur le capot arrière, j'ai monté les deux boutons-poussoirs et la prise d'alimentation. Oubliez la plaque supplémentaire que j'ai collée au dos comme le montre la photo. J'ai ajouté cela parce que dans ma première conception, les boutons poussoirs étaient situés là mais je devais les déplacer car je devais ajouter le module DS3231 et je ne pouvais trouver un endroit où ces boutons étaient que lorsque j'ai fait ma première conception.

Étape 4: Le logiciel

Comme déjà mentionné, le logiciel est écrit pour un PIC16F1823 en utilisant le langage de programmation JAL. Le PIC fonctionne sur une horloge interne de 32 MHz. Comme mentionné précédemment, la synchronisation de l'horloge est effectuée par le module d'horloge DS3231.

Le logiciel effectue les tâches principales suivantes:

  • Initialisation du module DS3231 à l'aide d'une interface I2C. Le module va générer un signal de 1 seconde qui est connecté à la broche d'interruption du PIC. Le PIC utilise cette interruption de 1 seconde pour lire l'heure du module DS3231.
  • Pilotage des 60 LED bicolores via les registres à décalage. Dans le diagramme schématique, on peut voir que les LED sont connectées dans une matrice de 16 par 8. Cela réduit le nombre de fils nécessaires pour connecter toutes les LED. Cette conception matricielle nécessite que le PIC ait besoin de multiplexer les LED pour pouvoir les allumer individuellement. Le multiplexage des LED se fait sur une base d'interruption où la fréquence de rafraîchissement est de 70 Hz donc invisible à l'œil humain.
  • Manipulation des boutons-poussoirs. Ceux-ci sont utilisés pour régler l'heure, un pour régler les heures et un pour régler les minutes. Il faut appuyer sur les deux boutons pour activer le mode de mise à l'heure. Lorsque le mode de réglage de l'heure est sélectionné, la led jaune sera allumée en continu. Après 5 secondes de non-utilisation des boutons-poussoirs, l'horloge revient au fonctionnement normal de l'heure et la LED jaune commence à clignoter.

Voir la deuxième vidéo sur la façon de régler l'heure.

Le fichier source JAL et le fichier Intel Hex pour la programmation du PIC sont joints dans le fichier zip. Si vous souhaitez utiliser le microcontrôleur PIC avec JAL - un langage de programmation de type Pascal - visitez le site Web de JAL.

Amusez-vous à construire votre propre projet et attendez vos réactions avec impatience.

Conseillé: