Electronique > Réalisations > Affichage / Mesure > Décompteur 003

Dernière mise à jour : 03/11/2008

Présentation

Le décompteur présenté ici est doté de 80 LED bicolores (rouge / vert) associées à deux afficheurs 7 segments permettant un décomptage des secondes avec une valeur de départ comprise entre 2 et 60.

decompteur_003_pcb_3d_a
Vue 3D du circuit, avec ses 80 LED, afficheurs et circuits intégrés

Son fonctionnement est le suivant :
- programmation du nombre de secondes à décompter (entre 2 et 60)
- déclenchement sur disparition d'une tension de +12V
- défilement des 80 LED en couleur verte, du point de départ jusqu'à la dernière seconde.
- défilement des 80 LED en couleur rouge, durant la dernière seconde.

Avertissement
Même s'il est bien avancé, il s'agit d'un projet qui pour l'instant n'est pas validé, et je ne sais pas encore s'il verra réellement le jour. Côté électronique, il fonctionne très bien. Mais côté logiciel (le circuit utilise un PIC 16F628), les résultats obtenus ne me conviennent pas encore tout à fait, même si cela est presque finalisé. Il faut dire que je suis encore débutant avec les PICs, et que je n'ai pas encore les bons réflexes pour les bonnes routines ;-)

Schéma

Si ce schéma ne comportait aucune partie répétitive, il ferait presque peur (l'aggrandir ou l'imprimer pour le voir mieux).

decompteur_003

D'un point de vue électronique, c'est terminé et c'est fonctionnel.

Vérification du fonctionnement

Le fonctionnement de l'électronique et du PIC a été simulé sous Proteus, mais aucune mise en oeuvre physique n'a confirmé la théorie. Je ne peux donc certifier à 100 % que le fonctionnement est fiable, même si les résultats de la simulation sont conformes à ce que j'attendais. Une petite note concernant la simulation : le PIC tourne à 20 MHz, et le système complet demande beaucoup de ressources si j'opère une simulation avec des modèles standards de LED, qui sont modélisées de façon analogique et non numérique (il y en a tout de même 160, 80 rouges et autant de vertes) : à cause de ces LED, une seconde de rendu demande plus de deux minutes de simulation ! Pour contourner ce problème, j'ai remplacé toutes les LED par les segments d'un modèle d'afficheur travaillant en "numérique" (allumé ou éteint, aucun intermédiaire en terme de luminosité), et là, la simulation peut s'effectuer en temps réel.

decompteur_003_disp_001

Comme il n'y a que sept segments par afficheur, il me manque une LED sur huit, mais cela n'a aucune importance, le rendu est tout de même parfait pour vérifier le bon fonctionnement. Ca, c'est pour la vérification visuelle. La vérification des timings a été effectuée via graphe, je constate un écart de plusieurs millisecondes au final. Mais ce point n'est pas très critique pour moi, et je pense pouvoir compenser un peu les écarts observés (lié à la fréquence du signal d'horloge obtenue par le TIMER0 du PIC qui n'est pas tout à fait de 1000 Hz) par un ajustage léger de la fréquence de l'oscillateur à quartz (ajout d'un petit condensateur ajustable).

Le programme et le code source

Code source en langage MikroPascal
Decompteur_003 - 16F628 (14/10/2008)
Si vous souhaitez recevoir par la poste un PIC préprogrammé et prêt à utiliser, merci de consulter la page PIC - Sources.

Le circuit imprimé

Le double face s'impose ici, je n'ai pas même eu le courage de chercher à le faire en simple face...

images2/electronique_decompteur_003_pcb_composants.gif