Téléchargement des logiciels pour
Windows et Android dédiés à la gestion de l'interface :
Les
commandes sont extrêmement
simples à maitriser puisqu'elles reposent sur un transfert UDP de différentes chaines de caractères
ASCII prédéfinies.
Les chaînes sont envoyées vers l'interface 16
sorties dès que vous pressez l'un des boutons des logiciels présentés ci-dessous. Vous
trouverez la liste complète des chaines de caractères un peu plus bas sur
cette page...
Logiciel pour :
La
gestion de l'interface s'effectue au moyen d'un petit programme
d'application écrit avec Borland Delphi 7 nommé "Interface Ethernet 16 sorties".
Consultez la page [ Indy sous Delphi 7 ] afin d'installer le composant nommé
"Indy" vous permettant sous Delphi
de modifier le code source pour l'adapter selon vos besoins.
Le logiciel "Interface Ethernet 16 sorties" est compatible avec
, Seven, Vista et XP et il n'a pas
été testé sous les OS antérieurs.

L'ensemble code source du programme Delphi et le fichier exécutable sont librement téléchargeables
ci-après. Le
code source est commenté et vous n'aurez aucun mal à le modifier selon vos critères personnels
d'utilisation.
Téléchargement des fichiers sources Borland Delphi et du
fichier exécutable : 364ko
Téléchargement du code source au
format TEXTE : 21.5 ko
Logiciel pour :
La
gestion de l'interface s'effectue au moyen d'un programme
d'application écrit sous Basic4Android nommé "Interface Ethernet 16 OUT".
Consultez la page [ Applications Android ] pour en savoir plus sur le
compilateur Basic4Android afin d'adapter le logiciel selon vos
besoins.
Le logiciel "Interface Ethernet 16 OUT" est compatible avec tous les
supports (Smartphone, tablette tactile, etc...) fonctionnant sous Android 2.2 ou supérieur.

L'ensemble du code source et le fichier compilé Apk sont librement téléchargeables
ci-après. Le
code source est commenté et vous n'aurez aucun mal à le modifier selon vos critères personnels
d'utilisation.
Téléchargement
des fichiers sources Basic4Android et du fichier Apk : 700ko
Téléchargement du code source au format TEXTE : 14 ko
Paramètres Ethernet par défaut
après programmation du microcontrôleur :
Lorsque
vous insérez pour la première fois le microcontrôleur programmé dans son
support, les paramètres
réseaux par défaut
inscrits en
mémoire sont les
suivants :
Adresse IP :
192.168.0.9
Numéro du PORT : 5030
Adresse MAC : B0 : FA : AF : 00 : 01 : 00
Vous pouvez modifier à loisir ces trois paramètres si par exemple un de vos
périphériques Ethernet dispose lui aussi de la même adresse IP ou bien encore, si vous souhaitez
connecter à votre réseau plusieurs exemplaires de l'interface 16 sorties. En effet, n'oubliez pas
que l'adresse
IP de
l'interface Ethernet 16 sorties ne peut en aucun cas être la même que celle de
votre PC ou de
tout autre dispositif connecté à votre réseau sous peine de conflit
d'IP. Chaque
adresse doit
être unique sur un réseau !
Pour ce faire, lisez attentivement la page [ Configuration
du ENC28J60 ] vous expliquant comment utiliser le
logiciel "Config
du ENC28J60"
permettant de modifier
les paramètres (IP, PORT et MAC) de votre
interface 16 sorties. Il vous permet également de connaitre le numéro de révision du silicium de votre ENC28J60 afin de
déterminer exactement la valeur de la résistance R7 (nommée Rbias sur la datasheet de Microchip). Téléchargez et installer ce logiciel sur votre disque dur,
vous en aurez besoin dans la suite de ce paragraphe.

Aspect du logiciel "Config du ENC28J60" permettant
de connaitre le
numéro de révision du circuit
et éventuellement de modifier les caractéristiques IP, PORT et MAC
de votre interface 16 sorties.
Votre réseau local dit
également "domestique" :
Les
réseaux à IP
fixe (non DHCP)
sont recommandés pour connecter ce type d'interfaces. Ainsi, votre PC
dispose toujours de la même adresse IP comme par exemple : 192.168.0.5. Si vous utilisez néanmoins
un serveur
DHCP afin
d'attribuer dynamiquement
les adresses IP sur vos PC, assurez-vous que l'interface 16 sorties soit dans une zone d'IP fixe (voir mode d'emploi de votre
routeur).
Si vous souhaitez piloter votre interface 16 sorties via le réseau Internet depuis n'importe où dans le monde, assurez-vous de laisser passer les trames UDP au niveau de votre routeur. Pour ce faire, lisez attentivement la page [ Configuration
routeur ] où vous trouverez un exemple de
configuration d'un routeur intégré à un modem ADSL de type Freebox...
Lors du lancement du logiciel
de gestion de l'interface
16 sorties ou
bien lors du lancement du logiciel "Configuration du ENC28J60", votre pare-feu (firewall) intégré à Windows peut
vous demander si les
trames UDP sont autorisées. Il faudra bien entendu autoriser ces trames UDP à transiter sur votre PC. Si vous refusez vous ne pourrez pas communiquer avec votre interface.
Connexion de l'interface à
votre réseau domestique selon deux types de Modem ADSL :
Connectez votre interface 16 sorties à votre réseau domestique au moyen d'un câble Ethernet droit.

Ci-après
voici deux
illustrations
possibles de connexion de l'interface à un modem ADSL dont le mode routeur est activé. Il existe d'autres configurations
possibles comme par exemple l'usage d'un Routeur externe (Netgear,
Linksys, etc...) relié lui-même à un modem ADSL avec le mode routeur
inactif...
Si votre Modem ADSL type Box dispose de plusieurs connecteurs Ethernet de type RJ45, reliez votre interface 16 sorties à l'un des connecteurs RJ45 libres
au moyen d'un câble Ethernet droit.
Assurez-vous
d'avoir le mode routeur
activé sur votre
Modem ADSL.

Configuration réseau avec un Modem ADSL équipé de plusieurs connecteurs Ethernet.
Le mode
Routeur a été
activé dans la configuration interne du Modem ADSL.
Si votre Modem ADSL ne dispose que d'une seule prise Ethernet RJ45 (déjà reliée à votre PC), il vous
suffit d'acheter dans le commerce un Switch vous permettant d'accroitre le
nombre de connecteurs Ethernet à 4, 5
ou 8 et plus encore selon les modèles.
Comme précédemment, assurez-vous d'avoir le mode routeur activé sur votre Modem ADSL.

Configuration réseau avec un Modem ADSL équipé d'un seul connecteur Ethernet.
L'ajout d'un Switch est donc nécessaire afin d'y relier le PC et l'interface 16 sorties.
Le mode
Routeur a été
activé dans la configuration interne du Modem ADSL.
Détermination provisoire de la
résistance R7 (Rbias) associée à votre ENC28J60 :
Comme
nous l'avons vu dans les chapitres [ Configuration ENC28J60 ] et chapitre [ ENC28J60 ], le ENC28J60 a subi au fil des années de sa production des corrections matérielles internes au niveau du silicium. L'une de ces corrections porte sur
la valeur à attribuer à la résistance
référencée R7 de notre application nommée Rbias
par Microchip.

Pour mémoire, nous rappelons que la
résistance R7 est directement associée à la stabilité de la connexion réseau de votre interface 16 sorties à et votre routeur. Une mauvaise
valeur peut entrainer des déconnexions aléatoires
de l'interface auprès
par votre routeur.
Afin de déterminer le numéro de révision du
silicium de l'ENC28J60 que vous avez entre vos mains, nous utilisons le
logiciel nommé "Config du ENC28J60". Or ce logiciel communique uniquement via une
connexion réseau, il nous faut donc dans un premier temps choisir au hasard l'une des deux valeurs possibles pour R7: soit une résistance de 2,32k à 1% ou bien une de 2,74k à 1%.
Ainsi et de façon totalement arbitraire, soudez provisoirement sur le
circuit imprimé de l'interface 16 sorties, une résistance R7 de 2,74k à 1%. Elle vous permet de vous connecter au réseau durant quelques instants même si sa
valeur était incorrecte. En revanche, si vous connaissez déjà le numéro de révision de votre ENC28J60, soudez la bonne valeur de R7.
Vérifications préalables avant
la mise sous tension de votre interface :
Conditions initiales :
Assurez-vous de ne
pas avoir de
court-circuit
sur l'ensemble de la platine. Vérifiez également l'absence de microcoupures sur la partie cuivrée du circuit
imprimé.
Connectez la
platine à une source
d'alimentation en +12V et sans placer aucun circuit intégré sur les supports, mesurez toutes les tensions présentes sur les différentes broches des supports.
Assurez-vous
d'obtenir les tensions requises +5V et
+3,3V en vous
aidant du schéma
de principe
téléchargeable au bas de la page [ Réalisation ]. Si tous les potentiels mesurés sont normaux,
coupez l'alimentation et insérer tous les circuits intégrés dans
leurs supports respectifs.
Mise sous tension :
Votre interface étant connectée à votre réseau
domestique au
moyen d'un cordon
RJ45 de type droit, appliquez une tension continue comprise entre +8V et +20V sur le bornier d'alimentation K2. Une tension de +12V est un bon compris.

Instantanément, la
led rouge ON référencée D4 doit s'illuminer. Deux secondes après la mise sous tension, la led
verte D1 nommée statut (Link) doit s'allumer en feu fixe si la connexion réseau est correctement détectée. Si elle reste éteinte votre interface n'a pas été
détectée sur le réseau et dans ce cas, vérifiez vos branchements, le
câble Ethernet, le Modem et les éléments qui lui sont associés.
Si tout c'est bien
passé, après l'illumination de la led verte D1, la led jaune D2 nommée activation (Act) peut s'illuminer un
très court
instant avant
que D1 et D2 ne s'éteignent tous les deux durant environ 1 secondes. C'est durant ce court laps de temps
que le microcontrôleur récupère le numéro de révision du silicium de l'ENC28J60.
Passé
ce délai on recommence le cycle de démarrage. La led verte D1 s'allume en feu fixe puis la led jaune D2 s'illumine de courts instants de façon aléatoire. Cette led témoigne de la communication quasi-permanente de l'interface avec le routeur auquel
cas ce dernier la considèrerait comme déconnectée du réseau. Bien entendu, dès qu'un
utilisateur agit sur l'interface via le logiciel de gestion
(téléchargeable ci-dessus) la led D2 clignote également en synchronisme attestant du transfert de données en UDP.

Cette animation tente de reproduire approximativement
la séquence de démarrage de l'interface Ethernet.
Détermination exacte de la
résistance R7 à 1% :
Si vous connaissez
le numéro de révision de votre circuit ENC28J60, vous pouvez sauter ce paragraphe et il vous suffit de souder directement la bonne valeur de la résistance R7 sur votre circuit imprimé.
Dans le cas contraire,
suivez les explications suivantes.
Ayant téléchargé et
installé le logiciel "Config du ENC28J60" disponible à la page
[ Configuration
ENC28J60 ], lancez ce dernier sur votre
PC.

Cliquez
sur le bouton "Défaut' permettant d'inscrire automatiquement les paramètres par
défaut de connexion avec l'interface.

Cliquez ensuite sur le
bouton "Connexion
au ENC28J60"
et si tout ce passe bien, vous obtenez un message informatif attestant de
la bonne
communication avec votre interface. Ce message contient également le numéro de révision de votre circuit ENC28J60 comme ci-après :

Pour
les exemplaires dont nous disposons, le numéro de révision de notre ENC28J60 est 5.
D'après le
tableau ci-après déjà vu à la page [ ENC28J60 ], il suffit de lire la valeur de la
résistance R7 correspondante au numéro de
révision. Dans notre cas, la valeur 5 correspond à la Rev B5, donc nous souderons une résistance de R7 = 2,32k à 1% sur le circuit imprimé de
l'interface Ethernet.
|
Rev B1
|
Rev B4
|
Rev B5
|
Rev B7
|
Valeurs en décimal
(Registre EREVID)
|
2
|
4
|
5
|
6
|
Datasheets Errata
|
[
Rev B1 ]
|
[
Rev B4 ]
|
[
Rev B5 ]
|
[
Rev B7 ]
|
Valeur de Rbias (1%)
|
2,74k
|
2,74k
|
2,32k
|
2,32k
|
Vous pouvez arrêter
le logiciel. Désormais votre interface 16 sorties est totalement fonctionnelle avec ses paramètres
réseaux par défaut inscrits en mémoire :
Adresse IP :
192.168.0.9
Numéro du PORT : 5030
Adresse MAC : B0 : FA : AF : 00 : 01 : 00
Communication avec le
logiciel de gestion sous Windows pour l'interface Ethernet
:
Lancez le logiciel
"Interface
Ethernet 16 sorties" disponible en téléchargement au début de cette page
pour .

Afin de tester le bon fonctionnement des
différentes sorties de l'interface depuis votre réseau domestique, connectez 16 leds couplées à leurs résistances de
limitation en courant (470
ohms) sur les 16 sorties comme sur la photo ci-dessous. Les différentes leds seront alimentées en +5V en positionnant le cavalier SW1 sur la position +5V.

Cliquez
sur l'image ci-dessus pour l'agrandir
En
cliquant sur le différents boutons numérotés S1, S2, S3, etc... du logiciel de gestion
de l'interface, vous pouvez allumer ou éteindre
les différentes leds. Le logiciel met à votre
disposition plusieurs types de commandes possibles : ON, OFF, Toggle (bistable), Impulsionnel, toutes les sorties à l'état haut ou à l'état bas.

Référez-vous
au code source du programme écrit sous Delphi pour en savoir plus sur les chaînes de caractères ASCII
utilisées pour chacune des touches et aux tableaux présents ci-après où sont listés l'ensemble des différentes
commandes ASCII possibles.
Note : N'oubliez pas de consulter la page [ Configuration
routeur ] si vous souhaitez par la suite
piloter depuis n'importe
où dans le monde
l'interface 16 sorties via le réseau Internet que ce soit depuis un PC ou bien depuis un Smartphone via le réseau 3G.
Monté en température des
principaux composants :
Après plusieurs dizaines de minutes d'utilisation de l'interface 16 sorties, le circuit ENC28J60 référencé U1 doit être à peine tiède au touché. Le microcontrôleur PIC18F252
référencé U3 reste froid. Le régulateur 7805 référencé U4 devient rapidement chaud tandis que
le régulateur LM2937-3.3 référencé U5 reste tiède.
Tout échauffement excessif
du circuit ENC28J60 n'est pas normal. Dans ce cas, coupez immédiatement
l'alimentation électrique et vérifiez le circuit imprimé puis les
tensions d'alimentation en ayant retiré de son support préalablement le
circuit.

Protocole de communication
ASCII utilisé pour piloter l'interface 16 sorties :
Afin
de piloter sélectivement les 16 sorties, différentes commandes composées d'une suite de caractères ASCII ont été définies. Ces caractères
sont envoyés
en UDP sur le réseau en direction de l'interface pour une adresse IP (192.168.0.9 par
défaut) et un PORT (5030 par défaut) que vous aurez préalablement
déterminés.
Si l'on souhaite piloter correctement
l'interface, il faudra veiller à respecter scrupuleusement la syntaxe des différentes suites
ASCII.
Cinq groupes de commandes différentes ont
été retenus pour chacune des 16 sorties :
un
groupe de commandes ASCII pour mettre à l'état bas la sortie considérée : mode OFF.
un
groupe de commandes ASCII pour mettre à l'état haut la sortie considérée : mode ON.
un
groupe de commandes ASCII permettant de basculer entre deux états : mode TOGGLE.
un
groupe de commandes ASCII pour mettre à l'état bas simultanément toutes
les sorties.
un
groupe de commandes ASCII pour mettre à l'état haut simultanément toutes
les sorties.
Groupe de commandes ASCII
permettant d'affecter un état bas sur une sortie déterminée :
Commandes ASCII
|
Sorties mises à l'état bas
|
S01F
|
S1
|
S02F
|
S2
|
S03F
|
S3
|
S04F
|
S4
|
S05F
|
S5
|
S06F
|
S6
|
S07F
|
S7
|
S08F
|
S8
|
S09F
|
S9
|
S10F
|
S10
|
S11F
|
S11
|
S12F
|
S12
|
S13F
|
S13
|
S14F
|
S14
|
S15F
|
S15
|
S16F
|
S16
|
Groupe
de commandes ASCII permettant
d'affecter un état
haut sur une sortie déterminée :
Commandes ASCII
|
Sorties mises à l'état haut
|
S01N
|
S1
|
S02N
|
S2
|
S03N
|
S3
|
S04N
|
S4
|
S05N
|
S5
|
S06N
|
S6
|
S07N
|
S7
|
S08N
|
S8
|
S09N
|
S9
|
S10N
|
S10
|
S11N
|
S11
|
S12N
|
S12
|
S13N
|
S13
|
S14N
|
S14
|
S15N
|
S15
|
S16N
|
S16
|
Groupe de commandes ASCII
permettant de basculer entre deux états logiques en sortie :
Commandes ASCII
|
Sorties basculées
|
S01T
|
S1
|
S02T
|
S2
|
S03T
|
S3
|
S04T
|
S4
|
S05T
|
S5
|
S06T
|
S6
|
S07T
|
S7
|
S08T
|
S8
|
S09T
|
S9
|
S10T
|
S10
|
S11T
|
S11
|
S12T
|
S12
|
S13T
|
S13
|
S14T
|
S14
|
S15T
|
S15
|
S16T
|
S16
|
Commande ASCII permettant de
mettre à l'état bas toutes les sorties simultanément :
Si
vous souhaitez désactiver toutes les sorties S1 à S16, il vous suffit d'envoyer à
l'interface la commande ASCII suivante :
Commandes ASCII
|
Sorties mises à l'état bas
|
F$
|
S1 à S16
|
Commande ASCII permettant de
mettre à l'état haut toutes les sorties simultanément :
Si
vous souhaitez activer toutes les sorties S1 à S16, il vous suffit d'envoyer à
l'interface la commande ASCII suivante :
Commandes ASCII
|
Sorties mises à l'état haut
|
N$
|
S1 à S16
|
L'interface Ethernet refuse de
répondre aux sollicitations :
Si vous n'arrivez pas à vous
connecter via le logiciel "Config du ENC28J60" à votre
interface 16 sorties depuis votre réseau local, vérifiez si vous avez bien
la led verte D1 nommée "Statut" allumée en feu fixe et si la led
jaune D2 nommée "Activité" clignote de temps à autre de façon aléatoire.
Si la première
constatation se vérifie, assurez-vous d'avoir utilisé le bon numéro de PORT et la bonne adresse IP et vérifiez également votre pare-feu intégré à Windows pouvant bloquer
les requêtes UDP.

De plus, avec l'aide d'un oscilloscope et lorsqu'aucun câble RJ45 n'est connecté sur l'embase K1 de l'interface, assurez-vous
d'obtenir en permanence les différents signaux émis par le microcontrôleur aux
allures suivantes
sur les différentes broches du circuit intégré U1 (ENC28J60) comme ci-dessous :
Broche 6 (SO ou MISO) du circuit
U1 (Time/Div 10µs) :

Cliquez sur l'image ci-dessus pour
l'agrandir 
Broche 7 (SI ou MOSI) du
circuit U1 (Time/Div 10µs) :

Cliquez sur l'image ci-dessus pour l'agrandir

Broche 8 (SCK) du circuit U1
(Time/Div 10µs) :

Cliquez sur l'image ci-dessus pour
l'agrandir 
Broche 9 (CS) du circuit U1
(Time/Div 10µs) :

Cliquez sur l'image ci-dessus pour
l'agrandir 
|