Dernière mise à jour :
05/10/2014
Présentation
Ce chronomètre est une version améliorée et plus précise du
chronomètre
001.
Tout comme son ancêtre, il permet un comptage entre 00h00'00'' et
23h59'59'', et utilise six
afficheurs
à LED sept segments 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 secondes ou des
heures : suppression des deux afficheurs des secondes pour un affichage
compris entre 00h00' et 23h59', ou suppression des deux afficheurs des
heures pour un affichage compris entre 00'00'' et 23'59''. Version avec
PIC 16F628A associé à un décodeur TTL sept
segments de
type SN7447. Une version de chronomètre qui travaille au
centième de seconde près est présentée
à la page
chronomètre
001c.
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, avec arrêt comptage.
Schéma
On utilise ici deux circuits intégrés qui fonctionnent
sous 5 V et qui sont couplés à six afficheurs sept segments à anode commune.
Fonctionnement général
Le PIC est programmé pour
délivrer une
interruption du Timer1 toutes les secondes (en fait les interruptions ont lieu toutes les
50 ms et sont comptées par paquets de 20). Si le chronomètre
est
démarré (pression du bouton-poussoir 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 (pression sur le bouton-poussoir SW2/PAUSE), le compteur ne reçoit plus rien mais
conserve sa valeur en cours, qui reste affichée. Une nouvelle pression sur SW1/START redémarre le comptage là où il
était arrêté. La pression du bouton SW3/MR (RAZ) remet le compteur à zéro et arrête le comptage.
Multiplexage
L'affichage
est de type multipléxé, les afficheurs sont allumés les uns après les
autres (assez rapidement pour que l'oeil ne s'en rende pas compte), 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 300 Hz
pour chaque afficheur, ce qui
permet de ne pas voir les segments scintiller. Le multiplexage d'affichage est rythmé par les interruptions du Timer0.
Choix du type d'horloge
Le choix d'utiliser un quartz est justifié pour obtenir une meilleur précision, ma
première version sans quartz
était vraiment trop imprécise et finalement peu exploitable. Il est
vrai qu'au départ je m'attendais à
quelques écarts, mais pas à tant que ça (merci à ceux qui avaient
réalisé cette première version et qui m'en avaient fait un retour).
Logiciel du PIC
Code source (MikroPascal Pro V6.3x) et fichier binaire compilé *.hex
disponible dans l'archive suivante.
Chronomètre
001b - 16F628A (05/10/2014)
Si
vous souhaitez recevoir par la poste un PIC préprogrammé
et prêt à utiliser, merci de consulter la page
PIC - Sources.
Prototypes
Réalisé de mon côté avec ma platine EasyPic7 et mon afficheur quatre digits sept segments.
Mon prototype
Comme l'afficheur que j'ai utilisé ne possède que 4 digits, j'ai
procédé en deux étapes : minutes et secondes, puis ensuite heures et
minutes.
Prototype de Jean-Paul L
Prototype de Jean-Paul, qui fournit même les fichiers de son typon. Merci à lui !
Typon de Jean-Paul L.
Circuit imprimé
Non réalisé.
Historique
05/10/2014
- Modification du logiciel pour éliminer le scintillement des afficheurs (portage multiplexage dans interruption Timer0).
- Ajout photos du prototype de Jean-Paul L., qui en passant met gracieusement à disposition le type de son circuit. Merci !
06/12/2009
- Première mise à disposition.