Obsah:

Pridajte k svojmu Raspberry Pi sieťový port WIZ820io / USR -ES1 - Wiznet W5500: 10 krokov
Pridajte k svojmu Raspberry Pi sieťový port WIZ820io / USR -ES1 - Wiznet W5500: 10 krokov

Video: Pridajte k svojmu Raspberry Pi sieťový port WIZ820io / USR -ES1 - Wiznet W5500: 10 krokov

Video: Pridajte k svojmu Raspberry Pi sieťový port WIZ820io / USR -ES1 - Wiznet W5500: 10 krokov
Video: ВНЕЗЕМНЫЕ ВСТРЕЧИ (Шокирующие встречи с пришельцами и НЛО) 2024, November
Anonim
Pridajte k svojmu Raspberry Pi sieťový port WIZ820io / USR -ES1 - Wiznet W5500
Pridajte k svojmu Raspberry Pi sieťový port WIZ820io / USR -ES1 - Wiznet W5500

Čiastočne kvôli môjmu záujmu o niečo také a čiastočne kvôli môjmu záujmu o Codesys som už nejaký čas myslel na to, aby som skúsil pripojiť druhý port sieťového rozhrania k Raspberry Pi. Takže pri iných projektoch som premýšľal, čítal, porovnával, plánoval a nakupoval, aby som konečne mohol ísť ďalej a niečo vybudovať.

Áno - viem.. Existuje niekoľko systémov pripravených na spustenie „na kľúč“, ktoré by robili niečo podobné, ale v skutočnosti žiadny z nich nebol natoľko lákavý, aby ma oddelil od mojich peňazí.

V skutočnosti mám nízke znalosti a skúsenosti s operačnými systémami Raspberry Pi a Linux / Raspberry Pi IOS (Raspian) (lepšie sa mi darí vo svete Windows a Android), nemám žiadne hlboké znalosti o sieťach (dokážem zaistiť, aby veci fungovali) a budovať siete, ale okrem toho som už trochu nad hlavou) a práve som začal vyrábať obvodové dosky. Iste nie som programátor.

Akonáhle som sa konečne rozhodol pohnúť sa vpred s touto myšlienkou niečoho vybudovať, a rozhodol som sa použiť modul WIZ820io / USR -ES1, ktorý je založený na integrovanom obvode Wiznet - W5500. Tento modul môže komunikovať s Raspberry Pi (a inými MCU) pomocou štandardnej zbernice SPI. Navyše je napájaný 3,3 VDC, takže predstavuje pre moje Raspberry Pi nulové riziko poškodenia.

Pri navrhovaní dosky plošných spojov som sa rozhodol postaviť ju v správnej konfigurácii „HAT“(tvar a schopnosť) a okrem pridania obvodov pre modul „WIZ820io som pridal aj niekoľko ďalších položiek, ktoré sa v tomto NEPOUŽÍVAJÚ. sieťový projekt, ale ktorý môžem a v budúcnosti budem používať aj na iné projekty.

Doska, ktorú som navrhol / postavil, obsahuje nasledujúce položky.

1 - Zásuvka na držanie modulu Wiznet - „WIZ820io - ethernetový port (na to som vyrobil vlastný Eagle Footprint).

2 - A 30 mm - 5 VDC chladiaci ventilátor pre procesor Raspberry Pi (na to som vyrobil vlastný Eagle Footprint).

3 - Pamäťový čip „CAT24C32“na udržanie požiadaviek na kompatibilitu HAT (toto ešte nie som naprogramované) (na to som vyrobil vlastný Eagle Design Block).

4 - Mini prevodník úrovne MAX3232 - UART - TTL na RS -232 pripojený k UART0 (na to som vyrobil vlastnú Eagle Footprint).

5 - Červená LED (GPIO24), žltá LED (GPIO23) a zelená LED (GPIO22) sa používa na cvičenia v oblasti semaforu - programovania v Pythone.

6 - Zelená LED (GPIO18) a zelená LED (GPIO27) - na cvičenia programovania a odstraňovanie problémov.

7 - Hmatový prepínač pripojený k GPIO25 - na cvičenia programovania a riešenie problémov (na to som vyrobil vlastnú Eagle Footprint). UPOZORNENIE, že toto GPIO bude použité aj s WIZ820io.

Ako som už uviedol vyššie, tento návod sa bude zaoberať iba položkou č. 1 v tomto zozname. Všetky ostatné položky, ktoré som pridal na tabuľu, sú tam z iných dôvodov, ktoré nesúvisia s týmto projektom sieťového rozhrania.

Zásoby

Raspberry Pi - Použil som starší Raspberry Pi 3B. Na tom nie je nič zlé. Ten môj má mŕtvy port HDMI, takže ho spustím „bez hlavy“pomocou programu TeamViewer, aby som sa k nemu dostal. Funguje to. Silne mám podozrenie, že väčšina verzií Raspberry Pi bude fungovať s týmto Instructable PROVIDING, ktorý umožňuje prevádzkovať novšie verzie Raspberry Pi IOS (Raspian).

Predtým, ako to všetko spustím, som samozrejme aktualizoval operačný systém:

sudo apt-get aktualizácia

sudo apt-get upgrade

WIZ820io / USR -ES1 - Dokumentácia k tomuto je k dispozícii online od OEM

Doska PC - Na návrh dosky plošných spojov som použil Autodesk Eagle a vygeneroval som súbory Gerber potrebné pre JLCPCB na zostavenie dosky s obvodmi. Ako už bolo uvedené vyššie, tiež som pridal pamäťový čip "CAT24C32", aby sa zachovali požiadavky na kompatibilitu HAT.

Krok 1: Raspberry Pi 3b

Raspberry Pi 3b
Raspberry Pi 3b

Pokiaľ ide o Raspberry Pi, tento projekt som urobil pomocou štandardného Raspberry Pi 3b spolu s najnovšou verziou Raspberry Pi IOS (Raspian), ktorú som si mohol stiahnuť a nainštalovať.

Nič zvláštne tam. Túto jednotku vlastním už niekoľko rokov a fungovala mi väčšinou dobre (no - výstup videa HDMI je mŕtvy, takže som nútený bežať bez hlavy pomocou programu TeamViewer). Nemali by ste to robiť.

Mám podozrenie, že akékoľvek RPi by sa malo dať pripojiť k WIZ820io / USR -ES1 - Wiznet W5500 a aby to fungovalo, rovnako ako mnoho ďalších značiek súťaží na tom istom trhu (Beagle Bone, Orange, Tinker atď.) A používať podobný modelový operačný systém Linux.

S niektorým z nich mám NULOVÉ skúsenosti. S Raspberry mám málo skúseností - pozrite sa, kam som sa dostal:)

Krok 2: Pripojenie modulu Wiznet WIZ820io k zbernici GPIO Raspberry Pi

Prepojenie modulu Wiznet WIZ820io so zbernicou Raspberry Pi GPIO Bus
Prepojenie modulu Wiznet WIZ820io so zbernicou Raspberry Pi GPIO Bus
Prepojenie modulu Wiznet WIZ820io so zbernicou Raspberry Pi GPIO Bus
Prepojenie modulu Wiznet WIZ820io so zbernicou Raspberry Pi GPIO Bus
Prepojenie modulu Wiznet WIZ820io so zbernicou Raspberry Pi GPIO Bus
Prepojenie modulu Wiznet WIZ820io so zbernicou Raspberry Pi GPIO Bus

Prezrite si priložené obrázky.

Modul Wiznet WIZ820io poskytuje dva rady po 6 pinoch, na ktoré je možné prepojiť.

Riadky sú označené „J1“a „J2“.

Dátový list, ktorý poskytujú, má veľmi pekný farebne odlíšený diagram každého kolíka. Tento diagram vám má pomôcť pri pripájaní týchto pinov k vašim pinom Raspberry PI GPIO. Sú celkom vhodné ako zápas NAME for NAME.

Pinout Raspberry Pi nájdete tu: pinout.xyz

Tieto kolíky som spojil nasledovne (pozri priložený obrázok):

Pretože som vyrobil skutočnú dosku s obvodmi, všetky uzemnenia (GND) boli spojené dohromady. To isté platí pre kolíky na 3,3 V - moja obvodová doska ich spojila.

Niekoľko poznámok..

1. - J2 Pin #5 - RSTn - Pripojil som to k RPi GPIO #17 (Pin #11) - To bolo varovné. Neverím, že sa používa.

2. - J1 Pin # 6 - INTn - Ten je pripojený k GPIO25 (Pin # 22). Je to potrebné, pretože v kroku konfigurácie Raspberry Pi IOS sa na to odvoláme.

3. - J1 - kolík č. 5 - SCNn - je pripojený k Raspberry Pi „CS0“(kolík č. 24). Účinne to dáva tomuto modulu adresu „modulu 0“na zbernici RPi SPI. V kroku konfigurácie Raspberry Pi IOS sa na to budeme odvolávať.

Krok 3: Moja obvodová doska

Moja obvodová doska
Moja obvodová doska
Moja obvodová doska
Moja obvodová doska
Moja obvodová doska
Moja obvodová doska

V prílohe je schéma Eagle „Point to Point“, ktorú som vymyslel a pomocou ktorej som vygeneroval Gerberove súbory.

Pripojené sú aj obrázky z „obvodovej dosky“, ktorú som pre tento projekt zostavil.

Táto doska bude akceptovať množstvo rôznych produktov Wiznet v štýle WIZ820io.

Krok 4: Konfigurácia Raspberry Pi IOS (predtým Raspian) - položky v priečinku „boot“

Konfigurácia Raspberry Pi IOS (predtým Raspian) - Záznamy v
Konfigurácia Raspberry Pi IOS (predtým Raspian) - Záznamy v

Aby Raspberry Pi na svojej zbernici SPI „videlo“novo nainštalovaný modul WIZ820io na svojej zbernici SPI, je potrebné ho na to upozorniť, aby sa s ním dokázal vysporiadať počas „bootovania“.

Za týmto účelom jednoducho pridáme dva riadky do:../../boot/config.txt

Najprv.. Pomocou panela / okna terminálu ==> ls

cd../boot, prejdite na../boot a zadajte zoznam (ls) adresára

Odkazujte na priložený obrázok.. Tam musíte vyhľadať a potvrdiť prítomnosť dvoch záznamov - zakrúžkoval som ich červenou farbou.

Jeden je súbor s názvom: "config.txt"

Druhým je priečinok s názvom: „prekrytia“

== == == ==

Keď potvrdíte prítomnosť oboch týchto záznamov, môžete pokračovať k ďalšiemu kroku

Krok 5: Konfigurácia Raspberry Pi IOS (predtým Raspian) - položky v adresári „prekrytia“

Konfigurácia Raspberry Pi IOS (predtým Raspian) - položky v
Konfigurácia Raspberry Pi IOS (predtým Raspian) - položky v
Konfigurácia Raspberry Pi IOS (predtým Raspian) - Záznamy v
Konfigurácia Raspberry Pi IOS (predtým Raspian) - Záznamy v
Konfigurácia Raspberry Pi IOS (predtým Raspian) - položky v
Konfigurácia Raspberry Pi IOS (predtým Raspian) - položky v

Zmeniť adresár na adresár „prekrytia“

Typ: prekrytia CD

Po stlačení klávesu „Enter“sa dostanete do priečinka „prekrytia“(pozri priložený obrázok).

Vytvorte zoznam obsahu adresára.

Typ: ls

Po stlačení klávesu „Enter“by ste mali vidieť dlhý zoznam obsahu tohto adresára. Zoznam môže byť abecedný.

(pozri priložené obrázky (2 z)). Všimnite si, že takmer VŠETKY súbory sú pomenované s príponou: *.dtbo, môžete si tiež všimnúť niekoľko pomenovaných s príponou: *.dtb

Toto sú VŠETKY prekrývajúce súbory „Device Tree“

Musíte potvrdiť prítomnosť dvoch súborov „prekrytia“(pozri priložené súbory s obrázkami).

1. - súbor s názvom: anyspi.dtbo (na tento účel bude možno potrebné použiť posúvač na pravom okraji okna, aby ste sa posunuli späť na začiatok a našli abecedne zoradené anyspi.dtbo).

2. - súbor s názvom w5500.dtbo

== == ==

Ak môžete potvrdiť, že sú prítomné oba tieto súbory, ste v dobrej kondícii a môžete sa vrátiť do adresára../boot.

Zadajte: cd../ po stlačení klávesu ENTER by ste sa mali dostať späť do adresára / boot.

Zoznam adresárov na potvrdenie: napíšte: ls a stlačte kláves ENTER

Krok 6: Konfigurácia Raspberry Pi IOS (predtým Raspian) - Upraviť súbor s názvom: Config.txt

Konfigurácia Raspberry Pi IOS (predtým Raspian) - Upraviť súbor s názvom: Config.txt
Konfigurácia Raspberry Pi IOS (predtým Raspian) - Upraviť súbor s názvom: Config.txt
Konfigurácia Raspberry Pi IOS (predtým Raspian) - Upraviť súbor s názvom: Config.txt
Konfigurácia Raspberry Pi IOS (predtým Raspian) - Upraviť súbor s názvom: Config.txt
Konfigurácia Raspberry Pi IOS (predtým Raspian) - Upraviť súbor s názvom: Config.txt
Konfigurácia Raspberry Pi IOS (predtým Raspian) - Upraviť súbor s názvom: Config.txt

V adresári../boot teraz môžeme pracovať na niekoľkých malých úpravách súboru s názvom: config.txt

Najprv zavoláme editor „nano“ako „super používateľa“(sudo)

sudo = 'superužívateľ'

nano je textový editor, ktorý budeme používať

a ako už bolo uvedené, config.txt je súbor, ktorý chceme upraviť.

Zadajte: sudo nano config.txt a stlačte kláves ENTER.

Zobrazí sa editor a zobrazí sa obsah súboru config.txt. Ak sa editor neotvorí alebo sa otvorí prázdny, ukončite program (ak je v nano) a znova skontrolujte pravopis.

Ak všetko dobre dopadlo, mali by ste vidieť niečo ako na druhom priloženom obrázku. „nano“bude zobrazovať samotný „vrch“súboru. budete musieť prejsť úplne nadol.

V spodnej časti súboru pridajte dve nižšie uvedené „výkazy dtoverlay“:

dtoverlay = anyspi, spi0-0, dev = "w5500", rýchlosť = 30000000dtoverlay = w5500

Znovu skontrolujte všetok pravopis a ak sa zhoduje, stlačením dvoch klávesov „Ctrl-x“operáciu ukončíte.. a uložením a ukončením odpovedajte primerane.

== == == ==

Pri nasledujúcom spustení (a pri všetkých ďalších spusteniach, ak tam zostanú tieto dva príkazy), bude operačný systém teraz vyžadovať aj prekrytie s názvom „anyspi“a prekrytie s názvom „w5500“.

Prekrytie „anyspy“pripravuje operačný systém na použitie zbernice SPI0-0 (na ktorú sme predtým fyzicky pripojili WIZ820io. „-0“ho určuje na použitie adresy „0“-pripomíname, že sme predtým pripojili pin WIZ820io #J1-6 „CEO“RPi GIPO (pin #24).

Prekrytie „w5500“operačnému systému hovorí, ako sa vysporiadať s integrovaným obvodom W5500 umiestneným v module WIZ820io. Tiež definuje použitie RPi GPIO25 (pin #22) ako signálu INTn. Ešte raz si pripomeňme, že sme toto spojenie predtým vytvorili.

Tento druh informácií možno nájsť v rôznych súboroch, ako napríklad v tomto prípade na GITHub.

== == ==

Čas na reštartovanie RPI a vykonanie všetkých týchto opatrení.

Krok 7: Reštartovali sme. Dúfam, že sa usmievaš

Reštartovali sme. Dúfam, že sa usmievaš
Reštartovali sme. Dúfam, že sa usmievaš
Reštartovali sme. Dúfam, že sa usmievaš
Reštartovali sme. Dúfam, že sa usmievaš

Ak všetko prebehlo dobre, vaše RPi sa malo normálne reštartovať. Usmej sa

Čas na kontrolu, či IOS načítal dva nové prekrývajúce súbory a či rozpoznáva pripojený modul WIZ820io.

Znova otvorte okno „Príkaz“.

Tentoraz na výzvu zadajte príkaz ifconfig (alebo použite novší príkaz „ip“) a stlačte kláves Enter.

Pravdepodobne dostanete dlhú odpoveď, takže sa budete musieť posunúť späť hore.

V hornej časti vyhľadajte dve sekcie:

Jeden s názvom eth0 a druhý s názvom: eth1 - pozri priložený obrázok.

V mojom systéme je eth0 ethernetový port na RPI. eth1 je nový ethernetový port WIZ820io.

== == ==

Ak vidíte dva porty, tak aj RPI. Všimnite si na priloženom obrázku, eth1 odoslal pakety a bez chýb.

Testoval som to tak, že som odpojil pôvodný kábel portu a pomocou prehliadača prešiel na YouTube a ďalšie webové stránky. Funguje to. Tiež som to "pingl" z niekoľkých rôznych zariadení a funguje to.

== == ==

Ak nevidíte eth1 (alebo niečo podobné) - iné ako eth0 na RPI3 alebo RPi4, skúste sa vrátiť späť a dvakrát skontrolujte, či bol súbor config.txt správne upravený a uložený. Uistite sa, že sú dve prekrytia na mieste a pravopis je správny (žiadne veľké písmená tam, kde ich nemám - v tomto systéme rozhodujú veľké písmená).

== == ==

Ak sú tieto dva porty prítomné, je možné, že bude potrebné vykonať trochu viac konfiguračnej práce … na ďalší krok….

Krok 8: Konfigurácia Raspberry Pi IOS (predtým Raspian) - nastavenie adresy IP

Toto je trochu mimo môjho domu s kolesami, takže v tejto chvíli nemôžem poskytnúť usmernenie.

Vedzte, že existuje nespočetné množstvo webových stránok, videí YouTube a diskusných panelov, ktoré poskytujú tento druh informácií.

ale.. možno budete chcieť skontrolovať a urobiť tu pár vecí.

1 - Dvakrát skontrolujte IP adresu, ktorú váš nový port aktuálne má. bolo to priradené vašim serverom DHP, alebo je to predvolená adresa IP - niečo v rozsahu: 169.254.xxx.yyy? Je to nieco ine ??

2- Chcete statickú (pevnú) IP adresu alebo dynamickú IP adresu (priradenú vašim serverom DHCP).

Skontrolujte prepínač / smerovač, ku ktorému je pripojený váš RPI.. vidí váš nový port? môže to "ping"? (ak to urobíte, odpojte pôvodný kábel portu - v opačnom prípade vás RPi môže oklamať).

Pomocou ifconfig (alebo novšieho príkazu „ip“) zistíte, že prichádzajúce a odchádzajúce údaje vyzerajú „normálne“(takpovediac) a bez neprimeraného počtu chýb.

== == ==

Nakoniec.. Verím, že w5500.dtbo priraďuje modulu WIZ820io / W5500 adresu MAC.. ale nemôžem s istotou povedať, či sa to stane. Okamžite som o tom nemohol nájsť podrobnosti.

Zdá sa mi, že pri každom spustení je priradená iná adresa MAC. Mne osobne sa to nepáči, a preto sú veci, ktoré je možné urobiť pre nastavenie adresy Mac (program „macchanger“napríklad alebo jeho nastavenie pomocou príkazov ip / ifconfig). Ak niekto z vás nájde riešenie „boot-up“/ „crontab“, rád by som sa dozvedel, ako to robíte, ak ste otvorení zdieľaniu.

Moju vidíte na obrázku.. Keď vyhľadám dodávateľa adresy Mac pre eth0 ==> b827eb, príde mi to ako Raspberry Pi Foundation. Predajca pre eth1 ==> fa9770 je neznámy, takže bol očividne v určitom okamihu vygenerovaný na mojom Pi.

Krok 9: Záver

Ďakujeme, že ste si prečítali tento návod.

Cez tento malý projekt som sa toho dosť naučil.

Ak máte otázky alebo by ste mali záujem o kúpu jednej z dosiek, ktoré som nalíčil (či už osadené alebo nie), mám niekoľko doplnkov, ktoré sú na predaj a o ktorých môžeme diskutovať.

V každom prípade vás žiadam, aby ste zanechali pripomienky, navrhli opravy (preklepy alebo metódy alebo ??)

Ak si to urobíte sami, určite by ma veľmi potešili fotky, ako ste to zvládli, a vaše konečné výsledky / účel.

Vďaka.

P. S.: Ďakujem tomuto chlapcovi za vedenie a nápady.

Krok 10: Súbory DTBO

Dva súbory na pridanie do priečinka „prekrytia - potrebné pre kroky č. 4 a č. 5

Odporúča: