Monithor ethernetu

Połączenie stm32 z ENCJ2860 z wykorzystaniem uIP (+ telnet)

Monitor etheretu to sniffer ramek etheretwych, który swoje wyjście kieruje na wyświetlacz KS0108. Oparty jest o płytkę deweloperską Nucleo i moduł ENCJ2860.

Moduł ten to najłatwiejszy sposób na podłączenie każdego urządzenia elektroniczego do sieci. Warunek jest jeden - z modułem komunikujemy się za pomocą SPI. Bariera wejścia do świata IoT nie jest więc zaporowa (nie jest nią również cena - kilkanaście pln/szt), a otrzywana użyteczność - naprawdę wartościowa.

Moduł ENCJ2860 ma na pokładzie warstwy PHY i MAC, do tego na płytce umieszczono gniazdo RJ-45 i złącze 8-pinowe. Zasilanie 3,3V - standard w dzisiejszych czasach. Za obsługę warstwy sieciowej odpowiada w moim przypadku uIP - otwarty, lekki protokół, gotowy spółpracować nawet ze skromnymi 8-bitowcami.

Uruchomienie całości jest sprawą intuicyjną - inicjalizujemy moduł ENCJ2860 poprzez ustawienie odpowiednich wpisów w rejestrach, podajemy adresy IP (lokalny i zdalne), jeszcze inicjalizacja telnetu i wyświetlacza i możemy nasłuchiwać podlądać przychodzące ramki i komunikować się z modułem za pomocą protokołu Telnet. Dalszym krokiem mogłoby być napisanie programu wykorzystującego komunikacje za pomocą socketów.

ethernet encj2860 stm32 Tomasz Pluta ethernet encj2860 stm32 porady

ethernet encj2860 stm32 kurs ethernet encj2860 poradnik stm32
Powyżej: galeria zdjęć encj2860 i stm32.

Poniższy fragment kodu przedstawia procedure inicjalizacji modułu ENCJ2860. Aby moduł był wstanie odbierać i wysyłać pakiety należy zainicjalizować budory nadawcze i odbiorcze, przypisać adres MAC do modułu i ustawić filtracje.

Wszystkie rejestry dość dobrze opisane są w datasheet modułu. Poprawną konfigurację potwierdza świecenie się zielonej diody w obudowie gniazda RJ-45.

TAGS: ethernet, uiP, encj2860, uiP DMA, FreeRTOS