Connexion Ethernet avec le Microchip ENC28J60 intégré
L'intégré ENC28J60 est un contrôleur Ethernet avec interface pour Bus SPI. Il est conçu pour être utilisé avec de petits systèmes, généralement basés sur des microcontrôleurs.
Su Bus SPI peut fonctionner jusqu'à 20 MHz et la connexion Ethernet a une vitesse maximale de 10 Mbit/s (10BASE-T) modes pris en charge Duplex (Full-Duplex) et Semi-duplex (Half-Duplex) avec détection et correction automatiques de la polarité. Bien que 10 Mbit/s puisse sembler un faible débit par rapport au réseau GigaBit Ethernet ce qui est le plus courant aujourd'hui, mais il suffit largement d'intégrer un petit appareil microcontrôlé dans un réseau, par exemple, pour remplir des fonctions telles qu'un objet de IoT (Internet des objets, Internet des objets)
Il fonctionne à 3,3 V bien qu'il tolère les signaux de 5 V, ce qui le rend très facile à intégrer avec différents microcontrôleurs ainsi qu'à travailler avec eux pendant le prototypage ou les tests.
Comprend en interne un tampon configurable en réception/émission, un FIFO circulaire pour la réception et accès direct à la mémoire (DMA) pour rationaliser le mouvement des données. Il est capable de faire le matériel sommes de contrôle et autres opérations de communication typiques Ethernet son intégration au niveau logiciel dans un projet est donc très simple.
La configuration typique nécessite, en plus d'un oscillateur de 25 MHz (un cristal avec ses condensateurs correspondants), un connecteur et des transformateurs Ethernet, qui sont souvent encapsulés avec d'autres composants tels que des résistances ou des LED pour signaler l'état de la liaison et de la réception/transmission. dans un bloc contenant le connecteur RJ45.
Il est fabriqué uniquement pour montage en surface (CMS/CMS) en paquets de 28 broches SPDIP (un DIP avec une densité de broches plus élevée), SSOP, SOIC y QFN Par conséquent, pour réaliser des tests ou des prototypes, nous travaillons généralement avec des modules comme ceux de l'image précédente, dont, en outre, les unités individuelles sont facilement disponibles, par rapport au module intégré lui-même, qui est généralement disponible sur le marché en grandes séries.
|
||||||
Vcap | → | 01 | 28 | ← | Vrai | |
Vss | → | 02 | 27 | → | LEDA | |
CLKOUT | ← | 03 | 26 | → | LEDB | |
INT | ← | 04 | 25 | ← | Vdddoc | |
NC | ← | 05 | 24 | → | OSC2 | |
SO | ← | 06 | 23 | ← | OSC1 | |
SI | → | 07 | 22 | ← | Vssosc | |
SCK | → | 08 | 21 | ← | Vsspll | |
CS | → | 09 | 20 | ← | Vddpll | |
RÉINITIALISER | → | 10 | 19 | ← | Vddrx | |
Vssrx | → | 11 | 18 | ← | Vsstx | |
TPIN- | → | 12 | 17 | → | TPOUT+ | |
TPIN+ | → | 13 | 16 | → | TPOUT- | |
RBIAS | → | 14 | 15 | ← | Vddtx | |
En plus de (1) l'alimentation électrique, une fois l'unité intégrée montée, (2) les connexions seront exposées. Ethernet à travers l'extrémité du connecteur RJ45 et pour la partie microcontrôlée de l'ensemble le Bus SPI (MOSI/MISO/SCLK/CS) et (3) gérés directement par le microcontrôleur ou une autre partie de l'ensemble électronique peut être connecté INT, qui peut être utilisé comme WOL (Wake-On-LAN) ou réveil à distance via le réseau (Remote Wake-up), RÉINITIALISER et une connexion à l'horloge externe CLKOUT.
A titre d'exemple, pour réaliser ces connexions entre un module avec le module intégré ENC28J60 et une assiette Arduino Les valeurs du tableau suivant sont à suivre en fonction du type de plaque.
ENC28J60 | Arduino UNO | Arduino MÉGA/DUE | Arduino Leonardo |
MISO (SO) | MISO (broche 12) | MISO (broche 50) | MISO (connecteur ICSP) |
MOSI (OUI) | MOSI (broche 11) | MOSI (broche 51) | MOSI (connecteur ICSP) |
SCK | SCK (broche 13) | SCK (broche 52) | SCK (connecteur ICSP) |
RÉINITIALISER | RÉINITIALISER | RÉINITIALISER | RÉINITIALISER |
INT | INT0 (broche 2) | INT4 (broche 2) | INT0 (broche 2) |
SS (CS) | SS (broche 10)* | SS (broche 53)* | broche 10* |
Vdd (3,3 V) | 3V3 | 3V3 | 3V3 |
Vss (GND) | GND | GND | GND |
En général, les connexions sont celles auxquelles on pourrait s'attendre d'après ce qui a été dit (et la logique), mais il existe quelques différences entre les cartes. Dans le cas d Arduino Leonardo, sauf si la broche SS a été soudée manuellement sur la carte (il est courant d'ajouter les broches 22-CTS et 8-SS) la broche 10 est utilisée, qui n'a pas cette affectation, elle devra donc être prise en compte dans le logiciel de contrôle. Par contre, il n'est pas indispensable d'utiliser la broche "standard" pour sélectionner (activer) le périphérique esclave mais la plupart des librairies Ethernet pour gérer celui intégré s'attendent à utiliser cette broche (et à cet effet) donc elles auront à modifier en cas contraire et dans certains cas (certaines bibliothèques) lors de l'utilisation de la carte Leonardo.
Une autre considération à prendre en compte correspond également à la plaque Leonardo et l'utilisation du connecteur ICSP à la place de ceux correspondants (des blocs latéraux) sur la plaque Arduino UNO
Poster un commentaire