Connessione Ethernet con Microchip ENC28J60 integrato
L'integrato ENC28J60 è un controllore Ethernet con interfaccia per Autobus SPI. È progettato per essere utilizzato con piccoli sistemi, solitamente basati su microcontrollori.
Su Autobus SPI può funzionare fino a 20 MHz e la connessione Ethernet ha una velocità massima di 10 Mbit/s (10BASE-T) modalità di supporto Duplex (Full-Duplex) e Semi-duplex (Half-Duplex) con rilevamento e correzione automatica della polarità. Anche se 10 Mbit/s possono sembrare una velocità bassa rispetto alla rete GigaBitEthernet che è il più comune oggi, ma è più che sufficiente integrare in una rete un piccolo dispositivo microcontrollato, ad esempio, per svolgere funzioni come un oggetto di IoT (Internet delle cose, Internet delle cose)
Funziona a 3,3 V sebbene sia tollerante ai segnali a 5 V, rendendo molto facile l'integrazione con diversi microcontrollori e il lavoro con esso durante la prototipazione o il test.
Internamente comprende a bufferizzare configurabile per ricezione/trasmissione, a FIFO circolare per l'accoglienza e accesso diretto alla memoria (DMA) per semplificare lo spostamento dei dati. È in grado di eseguire l'hardware checksum e altre tipiche operazioni di comunicazione Ethernet quindi la sua integrazione a livello software in un progetto è molto semplice.
La configurazione tipica richiede, oltre a un oscillatore da 25 MHz (un cristallo con i relativi condensatori), un connettore e trasformatori Ethernet, che sono spesso incapsulati insieme ad altri componenti come resistori o LED per segnalare il collegamento e lo stato di ricezione/ricezione. in un blocco contenente il connettore RJ45.
È prodotto solo per montaggio superficiale (SMT/SMD) in pacchetti da 28 pin SPDIP (un DIP con maggiore densità di pin), SSOP, SEC y QFN Pertanto, per realizzare test o prototipi, di solito lavoriamo con moduli come quelli nell'immagine precedente, di cui, inoltre, le singole unità sono facilmente disponibili, rispetto al modulo integrato stesso, che di solito è sul mercato in grandi lotti.
|
||||||
Vcap | → | 01 | 28 | ← | Vero | |
Vss | → | 02 | 27 | → | DÀ | |
CLKOUT | ← | 03 | 26 | → | LEDB | |
INT | ← | 04 | 25 | ← | Vddosc | |
NC | ← | 05 | 24 | → | OSC2 | |
SO | ← | 06 | 23 | ← | OSC1 | |
SI | → | 07 | 22 | ← | Vssosc | |
SCK | → | 08 | 21 | ← | Vsspll | |
CS | → | 09 | 20 | ← | Vddpll | |
RESET | → | 10 | 19 | ← | Vddrx | |
Vssrx | → | 11 | 18 | ← | Vsstx | |
PIN- | → | 12 | 17 | → | TPOUT+ | |
PIN+ | → | 13 | 16 | → | TPOUT- | |
RBIAS | → | 14 | 15 | ← | Vddtx | |
Oltre a (1) l'alimentatore, una volta montata l'unità integrata, (2) i collegamenti saranno esposti. Ethernet attraverso l'estremità del connettore RJ45 e per la parte microcontrollata dell'assieme il Autobus SPI (MOSI/MISO/SCLK/CS) e (3) gestiti direttamente dal microcontrollore o da un'altra parte del gruppo elettronico possono essere collegati INT, che può essere utilizzato come WOL (Wake-On-LAN) o sveglia remota tramite rete (Remote Wake-up), RESET e una connessione all'orologio esterno CLKOUT.
Ad esempio per effettuare questi collegamenti tra un modulo con l'integrato ENC28J60 e un piatto Arduino I valori della tabella seguente vanno seguiti a seconda del tipo di piastra.
ENC28J60 | UNO Arduino | Arduino MEGA/DUE | Arduino Leonardo |
MISO (SO) | MISO (pin 12) | MISO (pin 50) | MISO (connettore ICSP) |
MOSI (SI) | MOSI (perno 11) | MOSI (perno 51) | MOSI (connettore ICSP) |
SCK | SCK (pin 13) | SCK (pin 52) | SCK (connettore ICSP) |
RESET | RESET | RESET | RESET |
INT | INT0 (pin 2) | INT4 (pin 2) | INT0 (pin 2) |
SS (CS) | SS (perno 10)* | SS (perno 53)* | perno 10* |
Vdd (3,3 V) | 3V3 | 3V3 | 3V3 |
Vss (GND) | GND | GND | GND |
In generale i collegamenti sono quelli che ci si aspetterebbe in base a quanto detto (e alla logica) ma ci sono alcune differenze tra le schede. In caso di Arduino Leonardo, a meno che il pin SS non sia stato saldato manualmente sulla scheda (è normale aggiungere i pin 22-CTS e 8-SS) viene utilizzato il pin 10 che non ha questa assegnazione, quindi dovrà essere considerato nel software di controllo. D'altronde non è indispensabile utilizzare il pin "standard" per selezionare (attivare) il dispositivo slave ma la maggior parte delle librerie Ethernet per gestire quello integrato prevedono di utilizzare quel pin (e per quello scopo) quindi avranno da modificare in caso contrario ed in alcuni casi (alcune librerie) quando si utilizza la scheda Leonardo.
Un'altra considerazione a cui bisogna prestare attenzione corrisponde anche alla targa Leonardo e l'uso del connettore ICSP al posto di quelli corrispondenti (dei blocchetti laterali) presenti sulla piastra UNO Arduino
Invia commento