Horloge numérique 8 chiffres

5
(1)

runHorloge numérique 8 chiffres basée sur un ATMega8.
Elle affiche les heures, minutes, secondes et centièmes. 4 boutons servent à régler l’heure.
Possibilité d’extension par l’usage de seulement 3 boutons.

Matériel:
1 plaque bakélite en bandes 200x100mm
8 résistances 220 ohms
8 transistors BC337 ou BC327 (voir source)
1 régulateur 5v positif 7805
4 boutons poussoir miniatures
1 condensateur plastique 100nF
2 condensateurs céramique 22pF
1 condensateur chimique 47µF 16V
1 microcontroleur ATMega8 version DIP
1 quartz 3.276800Mhz
8 afficheurs 7 segments à cathode commune
Beaucoup de fil de câblage multibrins.

Les deux vis sont optionnelles. Le tout nécessite une alimentation d’au moins 6.5V (même si à 3V elle fonctionne toujours à peu près correctement).
Puisque les plaques bakélite ne font pas plus de 38 bandes de large, il faut couper deux bandes pour le haut de 2 x 4 afficheurs, une bande pour le bas de 4, et une plus grosse aire pour le bas des 4 derniers et les composants.pcb
L’affichage se fait par multiplexage, d’où le nombre important de connections à faire sur les afficheurs. Les 8 transistors permettent de choisir quel afficheur activer sur PORTB et PORTC (qui sert aussi à lire l’état des boutons). PORTD permet d’allumer les segments voulus.

La dérive totale de l’horloge ne devrait pas excéder 2s par jour (peut être réduite encore en écrivant un meilleur firmware, j’ai l’impression que l’interruption de Timer0 empêche parfois celle de Timer1 et fait alors sauter des « ticks ». Si son prescaler est monté à 64, ça aiderait peut être mais le rafraichissement tomberait à 25Hz… Utiliser Timer0 pour les ticks et Timer1 avec un compare match a 0x80 ?).

Timer0 donne la fréquence de rafraichissement: 3276800Hz / 8 prescaler / 256 valeur max du compteur / 8 afficheurs = 200Hz.
Timer1 donne le « tick » pour le centième de seconde: 3276800Hz / 1024 prescaler / 32 valeur du compare match A = 100Hz.

Schéma (clic):
schemathb
Routage:
veroroute
Noms des boutons, connections segments et connections sélection, masses, +5v, contrôle:
verorouteclr
Assemblage:
veroroute3d

Firmware 1.0, binaire et source C AVRStudio4.
Bouton A: arrêter.
Bouton B: démarrer.
Bouton C: incrémenter les heures.
Bouton D: incrémenter les minutes.

Source: furrtek.free.fr | CC

Cet article a-t-il été utile ?

Cliquez sur une étoile pour l’évaluer !

Note moyenne 5 / 5. Nombre de votes: 1

Aucun vote pour l'instant ! Soyez le premier à évaluer cet article.

Visité 15 fois, 1 visite(s) aujourd’hui

Publications similaires

  • Minuterie longue durée

    5 (1) C’est une minuterie longue durée ingénieuse, offrant une polyvalence d’utilisation pour contrôler l’allumage ou l’extinction programmée de divers appareils. Grâce à ce dispositif, il est possible d’automatiser l’activation/désactivation

  • Commande simple d’un servo-moteur (NE555)

    2.3 (3) Comment piloter de manière simple un servo-moteur ? En faisant appel à un NE555, bien évidemment ! Le circuit Prenons l’exemple de l’automatisation d’une barrière à l’aide d’un

  • Contrôleur de vitesse d’un moteur à courant continu

    0 (0) Le montage est basé sur le circuit intégré NE555 pour construire un multivibrateur astable. Le circuit produit une onde carrée avec une amplitude égale à la tension d’alimentation.

  • Horloge composée de 3 dominos

    5 (1) Une Horloge sympa dispose d’un beau design original avec 3 dominos qui change de valeur pour afficher l’heure Ce montage est basé sur un kit Arduino avec un