Połączenie Ethernet ze zintegrowanym Microchipem ENC28J60

Połączenie Ethernet ze zintegrowanym Microchipem ENC28J60

Połączenie Ethernet ze zintegrowanym Microchipem ENC28J60

Zintegrowany ENC28J60 jest administratorem Ethernet z interfejsem dla Autobus SPI. Przeznaczony jest do stosowania w małych systemach, zwykle opartych na mikrokontrolerach.

Spis treści

    Su Autobus SPI może pracować z częstotliwością do 20 MHz, a połączenie Ethernet ma maksymalną prędkość 10 Mbit/s (10BASE-T) tryby pomocnicze Dupleks (pełny dupleks) i półdupleks (półdupleks) z automatycznym wykrywaniem i korekcją polaryzacji. Chociaż 10 Mbit/s może wydawać się niską prędkością w porównaniu do sieci GigaBit Ethernet co jest obecnie najbardziej powszechne, ale w zupełności wystarczy, aby zintegrować małe urządzenie mikrosterowane z siecią, na przykład w celu wykonywania funkcji takich jak obiekt IoT (Internet rzeczy, Internet rzeczy)

    Działa przy napięciu 3,3 V, chociaż jest tolerancyjny na sygnały 5 V, dzięki czemu bardzo łatwo można go zintegrować z różnymi mikrokontrolerami, a także pracować z nim podczas prototypowania lub testowania.

    Podłączenie do MCU ENC28J60 Ethernet SPI 10BASE-T

    Wewnętrznie zawiera: bufor konfigurowalny do odbioru/nadawania, a FIFO okólnik do odbioru i bezpośredni dostęp do pamięci (DMA) w celu usprawnienia przepływu danych. Jest w stanie wykonać sprzęt sumy kontrolne i inne typowe operacje komunikacyjne Ethernet więc jego integracja na poziomie oprogramowania w projekcie jest bardzo prosta.

    Typowa konfiguracja wymaga, oprócz oscylatora 25 MHz (kryształu z odpowiednimi kondensatorami), złącza i transformatorów Ethernet, które często są hermetyzowane razem z innymi komponentami, takimi jak rezystory lub diody LED, w celu raportowania stanu połączenia i odbioru/odbioru. w bloku zawierającym złącze RJ45.

    ENC28J60 Moduły Ethernet SPI 10BASE-T

    Jest produkowany tylko dla montaż powierzchniowy (SMT/SMD) w obudowach 28-pinowych SPDIP (DIP o większej gęstości pinów), SSOP, SEC y QFN Dlatego też do przeprowadzenia testów czy prototypów najczęściej pracujemy z modułami takimi jak te na poprzednim obrazku, z których w dodatku poszczególne jednostki są łatwo dostępne w porównaniu do samego modułu integrowanego, który zazwyczaj jest dostępny na rynku w dużych partiach.

         

    Zintegrowany ENC28J60

         
    Vcap 01 28 vdd
    Vss 02 27 DAJE
    WYJŚCIE 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 Vddpl
    RESET 10 19 Vddrx
    Vssrx 11 18 Vsstx
    TPIN- 12 17 TPOUT+
    TPIN+ 13 16 TPOUT-
    RBIAS 14 15 Vddtx
               

    Oprócz (1) zasilania, po zamontowaniu zintegrowanej jednostki, (2) odsłonięte zostaną połączenia. Ethernet przez koniec złącza RJ45 oraz dla mikrokontrolowanej części zespołu Autobus SPI (MOSI/MISO/SCLK/CS) i (3) zarządzane bezpośrednio przez mikrokontroler lub można podłączyć inną część zespołu elektronicznego INT, które można wykorzystać jako WOL (Wake-On-LAN) lub zdalne budzenie przez sieć (Remote Wake-up), RESET oraz podłączenie do zewnętrznego zegara CLKOUT.

    symboliczny schemat połączeń ENC28J60

    Przykładowo aby wykonać takie połączenia pomiędzy modułem z integrą ENC28J60 i talerz Arduino Należy kierować się wartościami z poniższej tabeli w zależności od rodzaju płyty.

    ENC28J60 Arduino UNO Arduino MEGA/DUE Arduino Leonardo
    MISO (SO) MISO (pin 12) MISO (pin 50) MISO (złącze ICSP)
    MOSI (TAK) MOSI (pin 11) MOSI (pin 51) MOSI (złącze ICSP)
    SCK SCK (pin 13) SCK (pin 52) SCK (złącze ICSP)
    RESET RESET RESET RESET
    INT INT0 (pin 2) INT4 (pin 2) INT0 (pin 2)
    SS (CS) SS (pin 10)* SS (pin 53)* pin 10*
    Vdd (3,3 V) 3V3 3V3 3V3
    VSS (GND) GND GND GND

    Ogólnie rzecz biorąc, połączenia są takie, jakich można by się spodziewać na podstawie tego, co zostało powiedziane (i logiki), ale istnieją pewne różnice między płytami. W przypadku Arduino Leonardo, chyba że pin SS został ręcznie przylutowany na płytce (często dodawane są piny 22-CTS i 8-SS) używany jest pin 10, który nie ma takiego przypisania, dlatego należy go uwzględnić w oprogramowaniu sterującym. Z drugiej strony nie jest konieczne używanie „standardowego” pinu do wybierania (aktywowania) urządzenia podrzędnego, ale większość bibliotek Ethernet do zarządzania zintegrowanym oczekuje użycia tego pinu (i do tego celu), więc będą miały modyfikować w przypadku odwrotnym oraz w niektórych przypadkach (niektóre biblioteki), gdy płyta jest używana Leonardo.

    Modyfikacja Arduino Leonardo polegająca na dodaniu pinów SS i CTS

    Kolejna kwestia, na którą należy zwrócić uwagę, dotyczy również talerza Leonardo i użycie złącza ICSP zamiast odpowiednich (z bocznych bloków) na płycie Arduino UNO

    Zamieść komentarz

    Być może przegapiłeś