Constitution
des adresses IP, MAC et du PORT des
applications à base d'ENC28J60
:
Pour l'ensemble
des projets Ethernet disponibles sur
le site, le programme du microcontrôleur
gérant le circuit ENC28J60 permet de répondre aux requêtes entrantes
qui utilisent le transport UDP (serveur
de type UDP). Pour ce faire, il vérifie
l'adresse IP de destination
et le numéro de PORT et si ces deux paramètres sont ceux attendus,
le dispositif peut renvoyer des informations par UDP au PC
distant ayant entamé le dialogue.
Par
défaut, tous les projets disponibles
sur le site sont paramétrés
par défaut de la manière suivante
: Adresse IP : 192.168.0.9 PORT : 5030
Ces deux paramètres
seront modifiables par l'utilisateur
afin de configurer les applications
en fonction des paramètres réseaux de leur Modem-ADSL routeur de
type Box (Freebox, LiveBox, etc....)
ou bien encore de leur Modem Câble.
Les applications à base d'ENC28J60
peuvent parfois entrer en conflit avec
un autre périphérique
de votre réseau domestique si
tous deux utilisent par exemple la même adresse IP (imprimante
réseau, PC, etc...). Dans ce
cas, il faudra déconnecter momentanément votre périphérique réseau
(imprimante, etc....) puis modifier
l'IP de l'application
à base d'ENC28J60 pour supprimer
ce conflit. Afin de vous simplifier
cette tâche,
un logiciel présenté
et téléchargeable un peu
plus bas sur cette page,
vous permet de modifier l'adresse IP et/ou
le PORT et/ou d'attribuer une
nouvelle adresse MAC afin d'harmoniser
la cohabitation de
tous vos périphériques
à base d'ENC28J60 connectés à votre réseau.
De
plus, le logiciel permet également
de connaitre le numéro de révision du silicium
de votre propre ENC28J60 afin de sélectionner
la bonne valeur de la résistance
Rbias en broche 14 du circuit.
L'adresse
MAC diffère pour chaque projets à base d'ENC28J60 présentés
sur le site de
la façon suivante : Adresse
MAC d'un projet du site : B0
: FA
: AF
: 00
: XX
: YY
(valeurs
en hexadécimal).
La partie fixe B0
: FA
: AF
: 00
reste
identique à toutes les applications
présentes sur le site. La partie variable XX
est incrémentée d'une
unité pour chaque nouvelle application.
La première application est XX=01,
la seconde
XX=02,
etc... La dernière partie variable
(octet de poids faible de l'adresse
MAC) YY
est
modifiable par l'utilisateur. Elle
vaut 00 par défaut pour toutes les applications.
Si l'utilisateur désire connecter
plusieurs exemplaires de
la même carte (application
à base d'ENC28J60) sur son réseau,
il faudra affecter une valeur à YY
différente pour
chacune des différentes cartes.
C'est le même logiciel dont
nous parlions précédemment
qui permet de modifier aussi l'octet de poids faible
de l'adresse MAC.
Logiciel "Config
du ENC28J60" pour le paramétrage des applications
à base d'ENC28J60 :
Le
logiciel "Configuration du ENC28J60"
permet de connaître le numéro
de révision du silicium du circuit
mais aussi de modifier l'adresse IP, la MAC et le numéro
du PORT pour l'ensemble des applications Ethernet présentes sur le site.

Aspect
du logiciel "Config du ENC28J60"
Téléchargement
du logiciel "Config du ENC28J60"
:
Systèmes d'exploitation (OS)
compatibles
:
8, Seven,
Vista
et XP. Non testé
sous les autres OS.
Exemples
de modification des paramètres
d'une application à base ENC28J60
:
Modification
de l'adresse IP et du numéro
de PORT :
Conditions
initiales :
Votre
PC doit être configuré
comme faisant partie de votre réseau.
Les réseaux avec IP fixes (pas
DHCP) sont vivement recommandés.
Toutefois, si vous utilisez pour votre
PC une IP dynamique (DHCP), assurez-vous
que votre application à base
d'ENC28J60 soit dans une zone d'IP fixe (voir
votre routeur ou Modem Box).
Connectez
votre application à base d'ENC28J60 à votre
réseau domestique avec l'aide
d'un câble Ethernet droit relié
à votre Modem ADSL Routeur Switch de
type Box (ici une Freebox). En revanche,
si vous reliez votre application directement
à votre PC, utilisez un câble
Ethernet croisé.

Comme
pour toutes
les applications présentées
sur ce site,
les paramètres de l'application
par
défaut
sont toujours : Adresse IP : 192.168.0.9 PORT : 5030 Adresse MAC : B0
: FA
: AF
: 00
: XX
: 00
XX=01
pour le premier projet, XX=02 pour le
second projet, etc...
Assurez-vous
que l'ensemble de vos périphériques
Ethernet du commerce déjà
connectés au routeur ne puissent entrer
en conflit avec votre application. Cela
n'est pas le cas de notre exemple dans le croquis ci-dessus, où
nous
avons deux PC dont les adresses IP locales
192.168.0.5 et 192.168.0.6 sont différentes
de l'adresse IP locale de notre application
192.168.0.9. Donc aucun conflit possible
sur le réseau et nous pouvons
conserver
les paramètres par défaut
de l'application à base d'ENC28J60.
Toutefois,
afin de vous montrer
comment
utiliser le logiciel "Configuration
du ENC28J60"
nous allons modifier
les paramètres
IP, PORT et MAC par défaut dans
les exemples suivants.
Logiciel
"Configuration du ENC28J60"
:
Lancez
le logiciel "Configuration du ENC28J60"
comme ci-dessous :

Lors
du lancement du logiciel, votre parefeu
(firewall) intégré à
Windows ou un autre peut vous demander
si les trames UDP sont autorisées.
Si vous refusez vous ne pourrez pas
communiquer avec votre interface.
Afin
de pouvoir communiquer avec l'application
à base d'ENC28J60, entrez les
deux
paramètres principaux avec
leurs valeurs par défaut, tels que
:
Adresse IP : 192.168.0.9 PORT : 5030
ou
plus simplement, il vous suffit de cliquer sur le bouton "Défaut"
comme ci-dessous
:

Note
:
L'adresse MAC est pour le moment vide
"xx:xx:xx:xx:xx:xx"
car c'est l'application à base
d'ENC28J60 qui envoie son adresse MAC lorsque
la communication est établie.
Afin
d'amorcer la communication, cliquez
sur le bouton "Connexion au ENC28J60"
et quelques instants après, deux
cas de figure peuvent se présenter
:
Si
la communication a échoué,
vous obtenez après un laps de
temps de deux secondes le message d'avertissement
suivant :

Dans
ce cas, vous devez vérifier
si l'application à base d'ENC28J60 est bien sous tension,
si l'adresse IP et le PORT sont bien les valeurs par défaut. En effet, si vous
avez jadis modifié ces
deux paramètres
ou l'un des deux, la communication
ne peut pas s'effectuer avec les valeurs
par défaut, mais uniquement avec
les paramètres que vous aviez utilisés
!
Si
la communication a réussi, vous
obtenez instantanément sur l'écran le message
suivant :

Notez
la présence du numéro
en décimal de révision
du silicium de
votre ENC28J60.
Ici la valeur 5
correspondant
à la
valeur binaire %00000101
fait référence
à la révision
B5
du ENC28J60 d'après
le document [
ReRev. B5 Silicium Errata de Microchip
].
Pour la valeur
5,
Microchip recommande d'utiliser
une résistance
Rbias de
2,32k
à 1%
connectée à
la broche 14
du ENC28J60.
En
fonction du numéro
de révision
de votre propre ENC28J60
il vous faut adapter
la valeur
de la
résistance Rbias
selon
les recommandations de Microchip.
Voir page [
ENC28J60]
pour connaitre toutes les valeurs possibles
de cette résistance
en fonction des révisions
du circuit.
|
La
communication est désormais établie
avec notre application. Cliquez sur le bouton
OK et vous constatez immédiatement
l'augmentation horizontale
de la fenêtre du logiciel
comme
ci-dessous :

Sur
la partie gauche, le
logiciel indique vos paramètres
en cours d'utilisation,
l'adresse IP, le numéro de
PORT et désormais
l'adresse MAC transmise par l'application.
Dans la recopie d'écran ci-dessous,
l'application utilisée possède
l'adresse
MAC suivante : B0:FA:AF:00:01:00.

L'adresse MAC est également
affichée parmi le récapitulatif.
Notez que le zéro
superflus du poids faible de l'octet de l'adresse MAC
ne s'affiche pas. Au lieu d'avoir 00, le logiciel affiche 0. Ceci est tout
à fait normal, comme sur la recopie
d'écran suivante :

Elle
correspond bien à l'adresse MAC
: B0:FA:AF:00:01:00 en hexadécimal
pour cette application.
Sur
la partie droite, le
logiciel vous donne la possibilité
de saisir d'autres valeurs pour
les trois paramètres principaux :
l'adresse IP, le PORT et le poids faible de l'adresse MAC
comme ci-dessous :

L'utilisateur
peut modifier différentes paramètres
:
La valeur du poids faible de l'adresse MAC
peut-être remplacée par
une autre valeur hexadécimale comprise
entre 00 et FF. Si vous souhaitez entrer
la valeur 5, vous pouvez écrire
aussi bien 05 ou 5, le résultat est
identique. Nous y reviendrons un peu
plus loin, mais le changement de l'adresse
MAC de l'application Ethernet nécessite par la suite un reboot (débrancher
et rebrancher l'alimentation) de votre Modem
ADSL Routeur de type Box.
La valeur de l'adresse IP locale peut-être
remplacée par une autre. Les trois
premiers nombres doivent être compris entre 0 et 255 et le dernier entre 0 et 254 (par exemple : 192.168.0.254)
car une adresse ne peut jamais se terminer par 255.
Le logiciel retranscrit
automatiquement dans les champs les
3 premières valeurs utilisées
pour vous connecter à l'application,
ici les valeurs 192, 168 et 0.
La valeur du PORT (protocole UDP) peut
également être modifiée.
Sa valeur doit être comprise entre
0 et 65535.
Exemple
de modifications
de l'adresse IP et du numéro
de PORT :
Dans
cet exemple, nous conservons l'adresse
MAC par défaut, mais
en revanche
nous attribuons une nouvelle adresse
IP : 192.168.0.15 et un nouveau PORT
: 2000. Pour ce faire, il
vous suffit de remplir les champs comme
ci-après :

Lorsque
les modifications ont été
effectuées, il
vous suffit de cliquer sur le bouton "Transfert
des nouveaux paramètres au ENC28J60" afin
de mémoriser les nouveaux paramètres
dans la mémoire EEPROM du
microcontrôleur pilotant le ENC28J60 de l'application.
Un
court laps de temps après, le
logiciel ouvre une fenêtre qui récapitule l'ensemble des modifications apportées
et qu'il convient de noter sur un papier.

Vous
pouvez désormais refermer
le logiciel "
Configuration du ENC28J60".
Les nouveaux paramètres placés en EEPROM
ne
seront appliqués qu'après avoir coupé puis remis sous tension l'application
équipée du ENC28J60.
Désormais
votre
application
utilise l'adresse IP
: 192.168.0.15
pour un numéro de PORT:
2000
comme ci-après. L'adresse MAC
reste inchangée.

Si
vous souhaitez à nouveau vous connecter à votre application
avec le logiciel "Configuration du ENCJ60",
il faudra saisir vos nouveaux paramètres
comme ci-dessous :

Cliquez ensuite
sur
le bouton "Connexion au ENC28J60"
afin d'établir la communication
avec le périphérique comme
ci-dessous :

Procédez
de la même
manière que précédemment
si
vous souhaitez modifier
un ou plusieurs paramètres de
votre application
à base d'ENC28J60.
Modification
de l'adresse MAC, de l'adresse IP et
du numéro de PORT :
Supposons
que nous disposions de deux exemplaires
identiques
d'une même application (application
n°1 et application n°2) à base
d'ENC28J60.
Ces deux applications disposent
donc par défaut, de la même
IP, du même PORT et aussi du même
numéro d'adresse MAC comme ci-dessous :

L'architecture
présentée ci-dessus
ne peut pas fonctionner,
car d'une part l'adresse
IP et
le PORT
sont
identiques,
mais également l'adresse MAC. Ainsi
et de façon arbitraire, nous
allons conserver les paramètres
par défaut
pour l'application
n°1
et nous allons modifier
tous les paramètres
de l'application n°2.
Afin
de modifier
les paramètres de
l'application n°2,
nous déconnectons du réseau
l'application n°1
et nous conservons seulement l'application
n°2
connectée comme ci-dessous :

Les
paramètres par
défaut de
l'application
n°2
sont :
Adresse IP : 192.168.0.9
PORT 5030
Adresse MAC B0:FA:AF:00:01:00
Nous
allons affecter à cette application
n°2
les nouveaux
paramètres
suivants :
Adresse IP : 192.168.0.10
PORT 1000
Adresse MAC B0:FA:AF:00:01:01 Lancez
le logiciel 'Configuration
du ENC28J60'
comme nous l'avons vu précédemment.

Entrez
le paramètres par défaut
ou bien
cliquez sur le bouton "Défaut"
et vous obtenez :

Cliquez
ensuite sur le bouton "Connexion
au ENC28J60' afin d'établir le
dialogue avec l'application. Si tout
ce passe bien, vous obtenez :

Cliquez
sur le bouton OK entrainant
l'agrandissement de la
fenêtre sur le plan horizontal
comme ci-dessous :

Désormais,
remplissez
les différents champs avec les
nouveaux paramètres MAC, IP et
PORT comme ci-dessous :
Adresse IP : 192.168.0.10
PORT 1000
Adresse MAC B0:FA:AF:00:01:01 (valeurs hexadécimales)

Pour
l'adresse MAC vous pouvez écrire
en hexadécimal 01
ou 1
dans le champ. Le résultat est
identique.
Afin
de mémoriser
les nouveaux paramètres
au sein de l'EEPROM du microcontrôleur
gérant votre ENC28J60, cliquez sur le bouton "Transfert
des nouveaux paramètres au ENC28J60".
Vous obtenez ensuite la fenêtre
ci-dessous :

Les
nouveaux
paramètres IP,
MAC
et PORT
sont désormais placés
dans la mémoire EEPROM
du microcontrôleur pilotant
le ENC2J60.
Ils seront appliqués
qu'après avoir coupé puis remis sous tension l'application
n°2 équipée
du ENC28J60.
Lorsque vous modifiez l'adresse MAC
de votre application, il faut rebooter votre Modem ADSL Routeur de type Box pour
que la nouvelle adresse MAC soit correctement
prise en compte par le routeur. Ainsi
à la remise sous tension, votre routeur associe
désormais la nouvelle adresse
MAC : B0:FA:AF:00:01:01
au périphérique n°2
disposant
de l'adresse IP: 192.168.0.10
et du PORT : 1000.
L'application
n°2 et
votre routeur
ayant été tous les deux
remis
sous tension,
vous pouvez désormais reconnecter
l'application
n°1 à
votre réseau comme ci-dessous
:

N'oubliez pas
de conserver une trace écrite
de vos paramètres pour l'ensemble
des applications à
base d'ENC28J60. Si vous perdez vos
paramètres, la seule solution
pour les retrouver est de lire
avec un programmateur
de PIC la zone EEPROM du
microcontrôleur
gérant
le circuit ENC28J60 comme ci-dessous
:
 Logiciel
Pickit2. Les
valeurs indiquées sont celles
des paramètres par défaut, avec
IP:192.168.0.9, Port 5030 et MAC (LSB)
= 00
Comment
retrouver vos paramètres
de connexion en cas de perte de l'IP
et du numéro de PORT :
Comme
nous l'avons vu précédemment,
il est vivement recommandé de noter
sur un papier vos paramètres,
IP et PORT. Malgré tout, si vous
perdez vos paramètres, suivez
scrupuleusement la méthode décrite
ci-après afin de retrouver vos
paramètres programmés
en mémoire EEPROM dans le microcontrôleur
PIC contrôlant votre ENC28J60. Vous pourrez éventuellement
les modifier pour revenir aux paramètres
par défaut.
La méthode présentée
ci-après est risquée car
en cas de mauvaise manipulation du
logiciel PicKit2, vous pouvez
effacer le
contenu de la mémoire programme
du microcontrôleur. Alors, prudence et suivez
les explications suivantes à
la lettre !
Disposant
du programmateur [
Prog PIC / EEPROM
USB V2 ],
retirez
le microcontrôleur
de l'application Ethernet (par exemple
un PIC18F252) et positionnez
le
circuit sur le support dédié
de votre
programmateur de PIC USB V2 comme
ci-après :

Lancez
le logiciel PicKit2 et quelques
instants après, vous obtenez
l'image suivante :

Vous
devez ensuite décocher impérativement
le
"Enabled"
de la zone "Program
Memory"
comme encadré ci-dessous :

Désormais,
seule la partie EEPROM Data (au
bas de l'écran) peut-être
lue et modifiée
sans affecter le contenu protégé
de la zone "Program Memory".
Afin
de relire le contenu de l'EEPROM
Data, cliquez
sur le bouton READ
et patientez quelques secondes :

Quelques
instants après, vous obtenez
:

Dans
la zone EEPROM Data, voici les 7
octets
au format hexadécimal représentatifs
du paramétrage de l'application
Ethernet, IP,
PORT
et adresse MAC.
C0
A8 00 09 13 A6 00 en hexadécimal
correspond aux paramètres de
connexion par
défaut. En
effet, voici comment déchiffrer
ces valeurs :
Adresse IP : $C0
= 192 (en décimal) $A8
= 168 (en décimal)
$00
= 0 (en décimal) $09
= 9 (en décimal) Soit
l'adresse IP par défaut : 192.168.0.9.
Le numéro de PORT : $13
et $A6 deux octets sur 8
bits. En les
associant on forme un mot sur 16
bits
et nous obtenons : $13A6
= 5030 en décimal, soit le numéro
du PORT par défaut.
L'octet de poids faible de l'adresse
MAC : $00
soit
l'adresse MAC par défaut : B0:FA:AF:00:XX:00.
(XX est
différent pour chaque application
présentée sur le site
internet).
Si
vous souhaitez modifier une ou plusieurs
de ces valeurs, cliquez sur la valeur
à modifier, par exemple $09 qui
correspond à la dernière
valeur de l'adresse IP. La valeur s'affiche
désormais en inverse vidéo
comme ci-dessous
:

Saisissez
la nouvelle valeur, par exemple $15
:

$15
en hexadécimal donne 21 en décimal.
Assurez-vous
d'avoir toujours
le "Enabled"
décoché de "Program Memory",
puis
cliquez sur le bouton Write afin
de programmer la nouvelle valeur en
mémoire EEPROM du microcontrôleur. En revanche,
la zone programme "Program Memory"
ne sera pas modifiée.

Lorsque
l'opération est effectuée,
les nouveaux paramètres de votre
applications sont désormais les
suivants :
Adresse IP : $C0
= 192 (en décimal) $A8
= 168 (en décimal) $00
= 0 (en décimal) $15
=21 (en
décimal) Soit
l'adresse IP par défaut : 192.168.0.15
Le numéro de port reste inchangé
: $13
et $A6 deux octets sur 8
bits. En les
associant on forme un mot sur 16
bits
et nous obtenons : $13A6
= 5030 en décimal, soit le numéro
du PORT par défaut.
L'octet de poids faible de l'adresse
MAC : $00
soit
l'adresse MAC par défaut : B0:FA:AF:00:XX:00.
(XX dépend de l'interface présentée).
|