Dernière mise à jour :
29/08/2010
Présentation
Un second arbitre électronique, capable de "surveiller" 7 joueurs
et basé sur l'emploi d'un microcontrôleur de type PIC 18F2420.
Tout comme pour l'
Arbitre 001
(version plus simple pour 4 joueurs maximum), ce montage permet de
départager le joueur le plus rapide parmi tous ceux qui appuient
(presque) en même temps sur des boutons poussoir. Pour ceux qui ont une
allergie reconnue aux composants programmables, le remède se trouve en
page
Arbitre 003.
Schéma
Un peu plus de composants que pour l'arbitre
001, difficile de faire autrement. Mais tout de même, si vous enlevez
les leds et les boutons poussoirs, il ne reste pas grand chose...
Principe général de fonctionnement
Le
circuit comporte 7 boutons poussoir, un pour chaque joueur. Le nombre
de joueurs peut être inférieur à 7, mais ne peut descendre en-dessous
de 1. Sur un top départ qui dépend de l'application envisagée, les
joueurs doivent le plus rapidement possible appuyer sur leur bouton
poussoir (vous pouvez appeler ça un champignon, ça ne me dérange pas).
Dès l'instant où un bouton a été enfoncé, le numéro du joueur qui a
appuyé en premier s'affiche, et les boutons poussoirs des autres
joueurs ne sont plus pris en compte. Au bout de quelques secondes, et à
la condition que le mode Reset automatique est activé, le système
revient en mode d'attente et est prêt pour un nouveau tour. Si le mode
Reset automatique n'est pas activé, il est nécessaire de faire un reset
manuel en appuyant sur un bouton poussoir de remise à zéro.
Mais le schéma comporte 8 boutons et non 7 !
C'est
vrai. A l'origine j'espérais pouvoir rendre ce montage compatible 8
joueurs. En fait cela serait possible mais avec une perte de réactivité
de l'ensemble. Les sept entrées utilisées sont en effet capable de
déclancher une interruption et la huitième n'en est pas capable. Ce
montage reste donc limité à un nombre de 7 joueurs maximum. En tout cas
tant que je ne change pas d'avis !
Mode de Reset
La
remise à zéro (reset) peut s'effectuer de façon
automatique et/ou manuelle, selon la position de l'inverseur SW10
-
SW10 vers masse (RA3 à l'état logique bas) : remise à zéro
manuelle. Dans ce mode il faut appuyer sur le bouton poussoir SW9 pour
revenir en mode d'attente d'appui sur les boutons poussoirs des joueurs.
-
SW10 vers +5 V (RA3 à l'état logique haut) : remise à zéro automatique.
Dans ce mode, le reset se fait automatiquement, au bout d'un temps
ajustable par l'utilisateur.
Delai du reset automatique
Le
délai qui s'écoule entre le moment où un joueur a appuyé sur son bouton
et le reset automatique dépend de la position du curseur du
potentiomètre RV1. Le délai est minimal (environ 100 ms) quand le
curseur est côté masse et est maximal (environ 10 s) quand le curseur
est côté +5 V. Le principe de fonctionnement de ce délai ajustable est
fort simple : au moment où le reset automatique entre en action, le
logiciel du PIC lit la tension présente sur la broche RA0/AN0 du
PIC, configurée pour l'occasion en entrée analogique. La valeur
lue est comprise entre 0 (pour 0 V) et 1023 (pour +5 V), et cette
valeur est multipliée par 10 pour donner le temps de retard directement
exploitable en ms. Par exemple, une tension de 2,5 V (curseur RV1 au
centre) correspond à une valeur de 511, qui une fois multipliée par 10
conduit à un délai de 5 secondes environ. Dans tous les cas, un délai
de 100 ms est ajouté à la valeur calculée, ce qui permet tout de même
de voir le résultat (nombre du joueur gagnant) même quand le
potentiomètre RV1 est en position minimale. Si le délai maximal de 10 s
vous convient, vous pouvez câbler l'entrée de mesure RA0/AN0
directement sur le +5 V et vous passer du potentiomètre RV1. Et si tout
ça ne vous convient pas du tout, il ne vous reste qu'à modifier le code
source fournit et à recompiler le tout.
Mode d'affichage
L'affichage du joueur gagnant peut se faire de deux façons et dépend de la position de l'inverseur SW11.
- SW11 vers masse (RA2 à l'état logique bas) : affichage d'une led parmi les 7 (ou 8)
-
SW11 vers +5 V (RA2 à l'état logique haut) :
affichage en clair du numéro sur un afficheur standard 7
segments.
Attention, il
n'est pas possible de câbler en même temps les leds et
l'afficheur sept segments ! Il faut choisir l'un ou l'autre de ces deux
modes d'affichage.
Affichage géant
A la place d'un afficheur sept segments classique, vous pouvez utiliser
un afficheur géant, tel que présenté à la
page
Afficheur leds sept segments 002.
Pour montrer au public (frères, soeurs, cousins), ce sera tout de même plus commode...
Codes source et fichiers compilés
Tous les fichiers utiles sont
contenus dans l'archive zip dont le lien suit. Code en Pascal, écrit et
compilé avec la version V3.20 Pro de MikroPascal.
Arbitre
002 - 18F2420 - Pour 7 joueurs (05/04/2010)
Si vous souhaitez recevoir par la poste un PIC
préprogrammé et prêt à utiliser, merci de
consulter la page
PIC - Sources.
Circuit imprimé
Non réalisé. Vue 3D uniquement faite pour donner un apperçu des composants utilisés.