Dernière mise à jour : 19/12/2010
Présentation
Ce chronomètre est une petite variation du chronomètre 001b.
Il permet un comptage au centième de seconde près et non
plus à la seconde près.

En revanche, il n'affiche plus
les heures et s'arrête de compter à 99 minutes 59 secondes
99 centièmes de secondes. Tout comme son ancètre 001b, la
précision est celle permise par son oscillateur à quartz,
donc suffisante pour grand nombre d'applications. Là encore il
est fait usage de six afficheurs
à leds sept segments à anode commune câblés pour fonctionner en mode
multiplexé.
Il est possible de ne conserver que quatre afficheurs sur les six si
l'affichage souhaité ne nécessite pas la présence des minutes. Version avec
PIC 16F628A associé à un décodeur TTL sept segments de
type SN7447.
Caractéristiques principales
- Entrée START, pour démarrage depuis zéro ou pour reprise sur pause.
- Entrée PAUSE pour arrêt avec mémorisation valeur en cours.
-
Entrée MR (Memory Reset) pour remise à zéro générale.
Avertissements
J'ai testé pratiquement ce montage après l'avoir simulé avec succès, mais
seulement avec quatre afficheurs sur les six (secondes et centièmes).
Je ne pense pas que l'affichage des minutes pose problème mais je
préfère signaler que le test n'a pas été complet.
Schéma
Usage de deux circuits intégrés fonctionnant tous deux
sous 5 V, couplés à six afficheurs sept segments et six transistors
courants.

Vous ne serez sans doute pas surpris de retrouver un schéma quasiment identique à celui du chronomètre 001b.
Les différences principales résident dans le logiciel du PIC et dans la base de
temps portée à 8 MHz (quartz externe 8 MHz contre précédement 4 MHz interne). Deux condensateurs ont en outre
été ajoutés sur les poussoirs START et PAUSE, nous
en reparlerons plus loin.
Fonctionnement général
Le PIC est programmé pour
délivrer une
interruption toutes les 10 ms, c'est ce qui permet la précision
au centième de seconde. Si le chronomètre
est
démarré (appui
sur la touche SW1 / START ou commande via un transistor à
collecteur ouvert par exemple), les interruptions incrémentent
un compteur et l'affichage est mis à jour. Si le
chronomètre est en mode pause (appui sur le poussoir SW2 /
PAUSE), le compteur ne reçoit plus rien mais
conserve sa valeur en cours, qui reste affichée. Un nouvel appui
sur SW1 / START redémarre le comptage là où il
était arrêté. L'appui sur le bouton
SW3 / MR (RAZ) remet le compteur à zéro. Du fait que l'on
souhaite une précision au centième de seconde, il est
hors de question d'utiliser des routines logicielles d'anti-rebond sur
les poussoirs START et PAUSE qui durent plusieurs dizaines de ms. J'ai
donc opté pour un debouncing (anti-rebond logiciel) de seulement
10 ms, avec des condensateurs de 100 nF en parallèle sur les
poussoirs en question. De cette façon, on conserve une
précision de 1 centième de seconde sur la mise en route
et sur l'arrêt du comptage. Ce qui signifie que la
précision de l'affichage entre START et PAUSE sera de 2
centièmes de seconde. Pour la remise à zéro, point
besoin de cette précision temporelle.
Start et Pause par barrière lumineuse
Ce montage a été conçu pour chronométrer un
parcours d'obstacles
(agility et éducation canine). Les tops de départ et
d'arrivé peuvent
être donnés par appui sur des boutons poussoir mais je
conseille
l'utilisation d'une barrière lumineuse au départ et
à l'arrivée pour
"uniformiser" les temps de réaction du circuit pour chaque
"participant". Une simple impulsion commandant un transistor
monté en
émetteur commun fera parfaitement l'affaire : commande arrivant
sur la base d'un transistor NPN (2N2222 ou BC108 par exemple),
émetteur du transistor à la masse et collecteur sur
l'entrée START ou STOP du PIC. En somme, émetteur et collecteur du
transistor se retrouvent en parallèle sur le bouton poussoir et font office d'interrupteur.

Une
solution assez "classe" consiste à utiliser le faisceau laser d'un
pointeur laser 1 mW premier prix pour constituer la ou les barrières lumineuses.
Voir page Barrière lumineuse 001 pour un exemple pratique.
Multiplexage
L'affichage
est de type multipléxé, les afficheurs sont allumés les uns après les
autres, ce qui permet d'économiser de l'énergie et de limiter le nombre
de fils de câblage. Pour plus de détails, merci de vous reporter à la
page Affichage
et multiplexage.
La fréquence de raffraichissement est de l'ordre de 100 Hz
pour chaque afficheur (environ 600 Hz pour les six), ce qui
permet de ne pas voir les segments scintiller.
Logiciel du PIC
Code source (format MikroPascal Pro V3.80) et fichier binaire compilé *.hex
disponible dans l'archive suivante.
Chronomètre
001c - 16F628A (19/12/2010)
Si
vous souhaitez recevoir par la poste un PIC préprogrammé
et prêt à utiliser, merci de consulter la page PIC - Sources.
Prototype
Réalisé sur plaque sans soudure, avec les liaisons qui vont bien vers la platine EasyPic4.

Comme
dit en avertissement, tests effectués avec quatre afficheurs seulement
sur les six normalement requis, secondes et centièmes de secondes.
Circuit imprimé
Non réalisé.
Corrections et remarques
19/12/2010
-
Mise à jour du code logiciel d'une part pour éviter que les afficheurs
éclairent moins quand on appuie sur les boutons Start ou Pause, mais
surtout pour que le comptage ne soit pas ralenti quand l'impulsion de
démarrage perdure. A l'origine il fallait une impulsion de durée
comprise entre 10 et 15 ms, désormais l'impulsion peut durer
tant qu'on veut, du moment qu'elle s'arrête avant l'arrivée de
l'impulsion de STOP.