Après plus d'un an de travail (en partant de zéro en conception de circuits), je peux enfin mettre en service mon tout premier périphérique : un DIP-switch !
(DIP = Dual In Line package : le format des circuit intégré).


Avant d'entrer dans le pourquoi du comment du DIP switch, un petit schéma pour se remettre en tête le schéma général de fonctionnement des entrées/sorties USB.

Le composant 68HC908JB8 fait l'interface entre le PC et les périphériques. Il est paramétré en 8 entrées / 3 sorties.
Chaque sortie a un rôle spécifique :

- 1ère sortie = EP2_PC0 (EP2 = End point 2)
  > Un compteur à 6 sorties y est branché - chaque famille de périphérique (néons, ventilateurs, etc) sera branchée sur une des sorties
- 2ème sortie = EP2_PE1
  > Cette sortie permet de faire fonctionner les compteurs secondaires (dans la famille de périphériques "néons", un sous-compteur CMOS4017 permettra de commander jusqu'à 10 néons indépendants)
- 3ème sortie = EP2_PD0
  > Cette sortie envoi le signal au périphérique commandé (allumage, extinction des néons par exemple)



Alors, pourquoi est-ce que le 1er périphérique est un DIP switch ?...

Pour une raison que j'ignore et que je ne souhaite pas élucider, le composant 68HC908JB8 présente un comportement aléatoire sur ses 3 sorties. Lors de la connexion de ce composant au PC, la 1ère sortie est parfois EP2_PE1 ou EP2_PD0 au lieu de EP2-PC0. Il fallait donc trouver un moyen de déterminer quelle sortie est EP2-PC0.
Un méthode simple consiste à placer un élément de signalisation. C'est le rôle du DIP-switch qui détermine l'adresse de la sortie EP2_PC0.

Au niveau logiciel il suffit d'effectuer un scan pour localiser le DIP switch (configuré dans la section de configuration du logiciel : voir l'impression d'écran) et en déduire le nom réel des 3 sorties EP2.

Désormais la base logicielle et électronique de la "serre USB" est posée et validée.
Les périphériques suivants vont (enfin !) pouvoir être développés.

2010 04 27 - APPLI SERRE - MENU CONFIG

Configuration des périphériques : type de compteurs, code DIP switch etc.


Menu test : scan du DIP switch identifiant la sortie EP2-PC0


Carte du dessus : interface compteur / DIP-switch (prochainement miniaturisée !!)
Carte du bas : DIP-switch