Ethernet-anslutning med Microchip ENC28J60 integrerad
Den integrerade ENC28J60 är en styrenhet ethernet med gränssnitt för SPI buss. Den är designad för att användas med små system, vanligtvis baserade på mikrokontroller.
Su SPI buss kan arbeta på upp till 20 MHz och Ethernet-anslutningen har en maximal hastighet på 10 Mbit/s (10BASE-T) stödjande lägen Duplex (Full Duplex) och Semi-duplex (Halv Duplex) med automatisk polaritetsdetektion och korrigering. Även om 10 Mbit/s kan tyckas vara en låg hastighet jämfört med nätverket GigaBit Ethernet vilket är det vanligaste idag, men det räcker mer än väl att integrera en liten mikrokontrollerad enhet i ett nätverk för att till exempel utföra funktioner som ett objekt av IoT (Internet of Things, Internet of Things)
Den fungerar på 3,3 V även om den är tolerant mot 5 V-signaler, vilket gör den mycket enkel att integrera med olika mikrokontroller samt arbeta med den under prototypframställning eller testning.
Innehåller internt en buffert konfigurerbar för mottagning/sändning, a FIFO cirkulär för mottagning och direkt minnesåtkomst (DMA) för att effektivisera datarörelsen. Det är kapabelt att göra hårdvaran kontrollsummor och andra typiska kommunikationsoperationer ethernet så dess integration på mjukvarunivå i ett projekt är mycket enkel.
Den typiska konfigurationen kräver, förutom en 25 MHz oscillator (en kristall med motsvarande kondensatorer), en kontakt och Ethernet-transformatorer, som ofta är inkapslade tillsammans med andra komponenter såsom motstånd eller lysdioder för att rapportera länk och mottagnings-/mottagningsstatus. i ett block som innehåller anslutningen RJ45.
Den är endast tillverkad för ytmontering (SMT/SMD) i 28-stiftspaket SPDIP (en DIP med högre stiftdensitet), SSOP, SEC y QFN För att utföra tester eller prototyper arbetar vi därför vanligtvis med moduler som de i föregående bild, av vilka dessutom enskilda enheter är lättillgängliga, jämfört med själva den integrerade modulen, som vanligtvis finns på marknaden i stora partier.
|
||||||
Vcap | → | 01 | 28 | ← | vdd | |
Vss | → | 02 | 27 | → | GER | |
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 | |
ÅTERSTÄLLA | → | 10 | 19 | ← | Vddrx | |
Vssrx | → | 11 | 18 | ← | Vsstx | |
TPIN- | → | 12 | 17 | → | TPOUT+ | |
TPIN+ | → | 13 | 16 | → | TPOUT- | |
RBIAS | → | 14 | 15 | ← | Vddtx | |
Förutom (1) strömförsörjningen, när den integrerade enheten är monterad, (2) kommer anslutningarna att exponeras. ethernet genom kontaktens ände RJ45 och för den mikrokontrollerade delen av sammansättningen SPI buss (MOSI/MISO/SCLK/CS) och (3) som hanteras direkt av mikrokontrollern eller en annan del av den elektroniska enheten kan anslutas INT, som kan användas som WOL (Wake-On-LAN) eller fjärrväckning via nätverk (Remote Wake-up), ÅTERSTÄLLA och en anslutning till extern klocka CLKOUT.
Som ett exempel, för att göra dessa anslutningar mellan en modul med den integrerade ENC28J60 och en tallrik Arduino Värdena i följande tabell bör följas beroende på typ av skylt.
ENC28J60 | Arduino UNO | Arduino MEGA/DUE | arduino leonardo |
MISO (SO) | MISO (stift 12) | MISO (stift 50) | MISO (ICSP-kontakt) |
MOSI (JA) | MOSI (stift 11) | MOSI (stift 51) | MOSI (ICSP-kontakt) |
SCK | SCK (stift 13) | SCK (stift 52) | SCK (ICSP-kontakt) |
ÅTERSTÄLLA | ÅTERSTÄLLA | ÅTERSTÄLLA | ÅTERSTÄLLA |
INT | INT0 (stift 2) | INT4 (stift 2) | INT0 (stift 2) |
SS (CS) | SS (stift 10)* | SS (stift 53)* | stift 10* |
Vdd (3,3V) | 3V3 | 3V3 | 3V3 |
Vss (GND) | GND | GND | GND |
Generellt sett är kopplingarna de som kan förväntas baserat på vad som har sagts (och logik) men det finns vissa skillnader mellan brädorna. I fallet med arduino leonardo, om inte SS-stiftet har löds manuellt på kortet (det är vanligt att lägga till stift 22-CTS och 8-SS) pin 10 används, som inte har denna tilldelning, så det kommer att behöva beaktas i styrmjukvaran. Å andra sidan är det inte nödvändigt att använda "standard"-stiftet för att välja (aktivera) slavenheten, men de flesta av Ethernet-biblioteken för att hantera den integrerade förväntar sig att använda det stiftet (och för det ändamålet) så att de kommer att ha ändras i motsatsfall och i vissa fall (vissa bibliotek) när tavlan används Leonardo.
En annan hänsyn som måste beaktas motsvarar också plattan Leonardo och användningen av kontakten ICSP istället för motsvarande (av sidoblocken) på plattan Arduino UNO
Post kommentar