Lisage oma Raspberry Pi -le WIZ820io / USR -ES1 - Wiznet W5500 võrgupord: 10 sammu
Lisage oma Raspberry Pi -le WIZ820io / USR -ES1 - Wiznet W5500 võrgupord: 10 sammu
Anonim
Lisage oma Raspberry Pi -le võrguport WIZ820io / USR -ES1 - Wiznet W5500
Lisage oma Raspberry Pi -le võrguport WIZ820io / USR -ES1 - Wiznet W5500

Osaliselt tänu minu huvile midagi sellist teha ja osaliselt huvi pärast Codesysile olen juba mõnda aega mõelnud, et proovida ühendada teine võrguliidese port Raspberry Pi -ga. Nii et teisi projekte tehes olen mõelnud, lugenud, võrdlenud, planeerinud ja ostnud, et lõpuks ometi edasi minna ja midagi üles ehitada.

Jah - ma tean.. seal on saadaval mõned käivitusvalmis süsteemid, mis võiksid midagi sarnast teha, kuid tegelikult polnud ükski neist piisavalt köitev, et mind oma rahast eraldada.

Tegelikkuses on mul vähe teadmisi ja kogemusi Raspberry Pi ja Linux / Raspberry Pi IOS (Raspian) kohta (mul läheb Windowsi ja Androidi maailmas paremini), puuduvad põhjalikud teadmised võrgustike loomisest (saan asjad toimima panna) ja ehitada võrke, kuid peale selle olen ma natuke üle pea) ja olen alles alustanud trükkplaatide tegemist. Kindlasti ei ole ma programmeerija.

Kui ma lõpuks otsustasin selle ideega midagi üles ehitada, edasi minna ja otsustasin kasutada WIZ820io / USR -ES1 moodulit, mis põhineb Wiznet - W5500 integreeritud vooluringil. See moodul saab standardse SPI -siini abil suhelda Raspberry Pi -ga (ja teiste MCU -dega). Lisaks töötab see 3,3 V alalisvooluga, seega kujutab see minu Raspberry Pi -le nullvigastust.

Trükkplaadi projekteerimisel otsustasin selle ehitada õigesse "HAT" konfiguratsiooni (kuju ja võimalused) ning lisaks WIZ820io mooduli vooluringi lisamisele lisasin ka hulga muid elemente, mida selles ei kasutata võrgustiku projekt, kuid mida saan ja kavatsen tulevikus kasutada ka teiste projektide jaoks.

Minu kavandatud / ehitatud plaadil on järgmised elemendid.

1 - pistikupesa Wizneti hoidmiseks - WIZ820io - Etherneti pordimoodul (tegin selleks kohandatud Eagle Footprint).

2 - 30 mm - 5 VDC jahutusventilaator Raspberry Pi protsessori jaoks (tegin selleks kohandatud Eagle Footprint).

3 - "CAT24C32" mälukiip HAT -i ühilduvusnõuete säilitamiseks (see pole veel minu poolt programmeeritud) (tegin selleks kohandatud Eagle Design Blocki).

4 - UART0 -ga ühendatud mini MAX3232 - UART - TTL -RS -232 taseme muundur (tegin selleks kohandatud Eagle Footprint).

5 - Punane LED (GPIO24), kollane LED (GPIO23) ja roheline LED (GPIO22), mida kasutatakse valgusfoori - Pythoni programmeerimisharjutuste jaoks.

6 - Roheline LED (GPIO18) ja roheline LED (GPIO27) - programmeerimisharjutuste tegemiseks ja tõrkeotsinguks.

7 - GPIO25 -ga ühendatud kombatav lüliti - programmeerimisharjutuste tegemiseks ja tõrkeotsinguks (tegin selleks kohandatud Eagle Footprint). TÄHELEPANU, et seda GPIO -d kasutatakse ka koos WIZ820io -ga.

Nii nagu ma varem märkisin, käsitleb see juhendatav ainult selle loendi üksust nr 1. Kõik muud üksused, mille tahvlile lisasin, on muudel põhjustel, mis pole selle võrguliidese projektiga seotud.

Tarvikud

Raspberry Pi - kasutasin vanemat Raspberry Pi 3B. Selles pole midagi halba. Minul on küll surnud HDMI -port, nii et käivitan selle "peata", kasutades selleks TeamVieweri juurdepääsu. See töötab. Kahtlustan, et enamik Raspberry Pi versioonidest töötab selle juhendiga, TINGIMUSEKS, et nad saavad käitada Raspberry Pi IOS (Raspian) uuemaid versioone.

Enne selle kõigega alustamist värskendasin muidugi operatsioonisüsteemi:

sudo apt-get update

sudo apt-get upgrade

WIZ820io / USR -ES1 - selle dokumentatsioon on saadaval OEM -ist Internetis

PC -plaat - kasutasin trükkplaadi kujundamiseks ja JLCPCB jaoks trükkplaadi ehitamiseks vajalike Gerberi failide loomiseks Autodesk Eagle'i. Nagu varem märgitud, lisasin HAT -i ühilduvusnõude säilitamiseks ka "CAT24C32" mälukiibi.

Samm: Raspberry Pi 3b

Vaarika Pi 3b
Vaarika Pi 3b

Mis puudutab Raspberry Pi, siis tegin selle projekti standardse Raspberry Pi 3b abil koos Raspberry Pi IOS (Raspian) uusima versiooniga, mille sain alla laadida ja installida.

Ei midagi erilist seal. Olen seda seadet paar aastat omanud ja see on minu jaoks enamasti hästi toiminud (noh - HDMI videoväljund on surnud, nii et olen sunnitud TeamVieweri abil peata töötama). Te ei peaks seda tegema.

Ma kahtlustan, et iga RPi peaks saama ühendada WIZ820io / USR -ES1 - Wiznet W5500 -ga ja selle toimima panna, samuti paljud teised kaubamärgid konkureerivad samal turul (Beagle Bone, Orange, Tinker jne) ja kasutavad sarnast Linuxi põhine OS.

Mul on NULLA kogemusi ühega neist. Mul on vaarikaga vähe kogemusi - vaadake, kuhu see mind viis:)

Samm: ühendage Wiznet WIZ820io moodul Raspberry Pi GPIO siiniga

Wiznet WIZ820io mooduli liidestamine Raspberry Pi GPIO siiniga
Wiznet WIZ820io mooduli liidestamine Raspberry Pi GPIO siiniga
Wiznet WIZ820io mooduli liidestamine Raspberry Pi GPIO siiniga
Wiznet WIZ820io mooduli liidestamine Raspberry Pi GPIO siiniga
Wiznet WIZ820io mooduli liidestamine Raspberry Pi GPIO siiniga
Wiznet WIZ820io mooduli liidestamine Raspberry Pi GPIO siiniga

Vaadake lisatud pildid üle.

Wiznet WIZ820io moodul pakub liidesega kahte rida 6 tihvti.

Ridad on märgistatud vastavalt "J1" ja "J2".

Nende pakutaval andmelehel on iga tihvti väga kena värvikoodiga skeem. Selle skeemi eesmärk on aidata teil ühendada need tihvtid oma Raspberry PI GPIO tihvtidega. Nad sobivad päris hästi NAME nimele NAME.

Raspberry Pi pinouti leiab siit: pinout.xyz

Ühendasin need tihvtid järgmiselt (vt lisatud pilti):

Muidugi, kuna ma tegin tegeliku trükkplaadi, olid kõik maad (GND) omavahel ühendatud. Sama lugu on ka 3.3V tihvtidega - minu trükkplaat ühendas need omavahel.

Paar tähelepanekut..

1. - J2 pin #5 - RSTn - ühendasin selle RPi GPIO #17 -ga (pin #11) - see oli ettevaatlik. Ma ei usu, et seda kasutatakse.

2. - J1 Pin # 6 - INTn - See on ühendatud GPIO25 -ga (Pin # 22). See on vajalik, kuna Raspberry Pi IOS -i seadistamisetapis viitame sellele.

3. - J1- Pin # 5 - SCNn - See on ühendatud Raspberry Pi "CS0" -ga (Pin # 24). Tegelikult annab see moodul RPi SPI siinil "mooduli 0" aadressi. Jällegi viitame sellele Raspberry Pi IOS -i seadistamisetapis.

3. samm: minu trükkplaat

Minu trükkplaat
Minu trükkplaat
Minu trükkplaat
Minu trükkplaat
Minu trükkplaat
Minu trükkplaat

Lisatud on Eagle'i "Point to Point" skemaatiline skeem, mille ma koostasin ja millega Gerberi failid genereerisin.

Lisatud on ka pildid "trükkplaadist", mille ma selle projekti jaoks koostasin.

See plaat võtab vastu mitmeid erinevaid WIZ820io stiilis Wizneti tooteid.

Samm 4: Raspberry Pi IOS (endine Raspian) seadistamine - kirjed kausta "boot"

Raspberry Pi IOS (endine Raspian) konfiguratsioon - kirjed
Raspberry Pi IOS (endine Raspian) konfiguratsioon - kirjed

Et Raspberry Pi saaks oma SPI -siinile äsja paigaldatud WIZ820io moodulit "näha", tuleb IOS -i teadvustada, et see saaks sellega "BOOT Up" ajal hakkama.

Selleks lisame lihtsalt kaks rida:../../boot/config.txt

Esiteks.. Terminali paani / akna kasutamine ==> ls

cd../boot, navigeerige../boot ja loetlege kataloog (id)

Viidake lisatud pildile. Seal peate otsima ja kinnitama kahe sissekande olemasolu - ma olen need punasega ümber joonistanud.

Üks neist on fail nimega "config.txt"

Teine on kaust nimega "ülekatted"

== == == ==

Kui olete mõlema kirje olemasolu kinnitanud, võite jätkata järgmise sammuga

Samm: Raspberry Pi IOS (endine Raspian) konfigureerimine - kirjed kataloogis „Overlay”

Raspberry Pi IOS (endine Raspian) konfiguratsioon - kirjed
Raspberry Pi IOS (endine Raspian) konfiguratsioon - kirjed
Raspberry Pi IOS (endine Raspian) konfiguratsioon - kirjed
Raspberry Pi IOS (endine Raspian) konfiguratsioon - kirjed
Raspberry Pi IOS (endine Raspian) konfiguratsioon - kirjed
Raspberry Pi IOS (endine Raspian) konfiguratsioon - kirjed

Muuda kataloog ülekatete kataloogiks

Tüüp: cd ülekatted

Pärast sisestusklahvi vajutamist suunatakse teid kausta "ülekatted" (vt lisatud pilti).

Loetlege kataloogi sisu.

Tüüp: ls

Pärast sisestusklahvi vajutamist peaksite nägema selle kataloogi sisu pikka loendit. Nimekiri võib olla tähestikuline.

(vt lisatud pilte (2)). Pange tähele, et peaaegu KÕIK failid on nimega laiendiga: *.dtbo, võite märgata ka mõnda nimega laiendiga: *.dtb

Need on KÕIK „Seadmepuu” ülekattefailid

Peate kinnitama kahe ülekattega faili olemasolu (vt lisatud pildifailid).

1. - fail nimega: anyspi.dtbo (selle puhul peate võib -olla kasutama akna paremas veerus olevat kerimisriba, et kerida üles ja leida tähestikulises järjekorras anyspi.dtbo).

2. - fail nimega w5500.dtbo

== == ==

Kui saate kinnitada, et mõlemad failid on olemas, olete heas vormis ja saate naasta kataloogi../boot.

Tippige: cd../ pärast ENTER klahvi vajutamist suunatakse teid tagasi kataloogi / boot.

Loetlege kinnitamiseks kataloog: tippige: ls ja vajutage klahvi ENTER

6. samm: Raspberry Pi IOS (endine Raspian) seadistamine - muutke faili nimega: Config.txt

Raspberry Pi IOS (endine Raspian) konfiguratsioon - muutke faili nimega: Config.txt
Raspberry Pi IOS (endine Raspian) konfiguratsioon - muutke faili nimega: Config.txt
Raspberry Pi IOS (endine Raspian) konfiguratsioon - muutke faili nimega: Config.txt
Raspberry Pi IOS (endine Raspian) konfiguratsioon - muutke faili nimega: Config.txt
Raspberry Pi IOS (endine Raspian) konfiguratsioon - muutke faili nimega: Config.txt
Raspberry Pi IOS (endine Raspian) konfiguratsioon - muutke faili nimega: Config.txt

Nüüd saame kataloogis../boot teha paar väikest muudatust failis nimega: config.txt

Esmalt kutsume "nano" redaktorit "superkasutajaks" (sudo)

sudo = 'superkasutaja"

nano on tekstiredaktor, mida me kasutame

ja nagu märgitud, on config.txt fail, mida soovime muuta.

Tüüp: sudo nano config.txt ja lööge ENTER.

See avab redaktori ja kuvab faili config.txt sisu. Kui redaktor ei avane või avaneb tühjana, siis väljuge (kui on nano -režiimis) ja kontrollige oma õigekirja.

Kui kõik läks hästi, peaksite nägema midagi sarnast teisel lisatud pildil. "nano" kuvab faili "ülaosa". peate allapoole kerima.

Lisage faili allservas kaks alltoodud dtoverlay avaldust:

dtoverlay = anyspi, spi0-0, dev = "w5500", kiirus = 30000000 dtoverlay = w5500

Kontrollige veel kord õigekirja ja kui see sobib, vajutage väljumiseks kahte klahvi "Ctrl-x". Salvestamiseks ja väljumiseks vastake õigesti.

== == == ==

Järgmisel käivitamisel (ja kõigi nende käivituste puhul, kui need kaks avaldust sinna jäävad) kutsub opsüsteem nüüd ka ülekatte nimega "anyspi" ja ülekatte nimega "w5500".

Kattekiht „anyspy” valmistab operatsioonisüsteemi ette SPI0-0 bussi kasutamiseks (see on koht, kus me varem WIZ820io füüsiliselt ühendasime. „-0” määrab selle kasutama aadressi „0”-tuletage meelde, et ühendasime eelnevalt WIZ820io tihvti #J1-6 RPi GIPO "tegevjuhile" (tihvt 24).

Ülekate "w5500" ütleb operatsioonisüsteemile, kuidas toimida WIZ820io moodulis asuva integraallülitusega W5500. Samuti määratleb see INTn signaalina RPi GPIO25 (pin #22) kasutamise. Tuletame veel kord meelde, et tegime selle ühenduse varem.

Sellist teavet võib leida erinevatest failidest, nagu see üks näide GITHubist.

== == ==

Aeg RPI taaskäivitada ja see kõik jõustuda.

Samm: oleme taaskäivitanud. Loodan, et naeratate

Oleme taaskäivitanud. Loodan, et naeratate
Oleme taaskäivitanud. Loodan, et naeratate
Oleme taaskäivitanud. Loodan, et naeratate
Oleme taaskäivitanud. Loodan, et naeratate

Kui kõik läks hästi, oleks teie RPi pidanud normaalselt uuesti käivitama. Naerata.

Aeg kontrollida, kas IOS laadis kaks uut ülekattefaili ja kas see tunneb ära lisatud WIZ820io mooduli.

Avage uuesti käsuaken.

Seekord tippige käsureale ifconfig (või kasutage uuemat käsku "ip") ja vajutage sisestusklahvi.

Tõenäoliselt saate pika vastuse, nii et peate kerima tagasi ülespoole.

Tagasi ülaosas otsige kahte jaotist:

Üks nimega eth0 ja teine nimega eth1 - vaata lisatud pilti.

Minu süsteemis on eth0 RPI Etherneti port. eth1 on uus WIZ820io Etherneti port.

== == ==

Kui näete kahte porti, siis on see ka RPI. Teade lisatud pildil, eth1 on saatnud pakette ja seda ilma vigadeta.

Olen seda testinud, ühendades lahti algse pordikaabli ja kasutades brauserit YouTube'i ja muude veebisaitide külastamiseks. See töötab. Olen seda ka "pinginud" mõnest erinevast seadmest ja see töötab.

== == ==

Kui te ei näe RP1 -l või RPi4 -l eth1 (või midagi sarnast) - va eth0, proovige minna tagasi ja kontrollida, kas konfiguratsioonifaili config.txt on õigesti redigeeritud ja salvestatud. Veenduge, et kaks ülekatet on paigas ja õigekiri õige (ärge mingeid suuri tähti, kui mul neid pole - suurtähed on selles süsteemis olulised).

== == ==

Kui kaks porti on olemas, võib olla vaja natuke rohkem konfigureerimistööd teha … edasi järgmise sammu juurde….

Samm 8: Raspberry Pi IOS (endine Raspian) seadistamine - IP -aadressi seadistamine

See on minu roolikambrist natuke väljas, nii et praegu ei saa ma juhiseid anda.

Lihtsalt teadke, et seda tüüpi teavet pakuvad lugematud veebisaidid, YouTube'i videod ja teadetetahvlid.

aga.. võiksite siin kontrollida ja teha mõnda asja.

1 - Kontrollige veel kord oma uue pordi IP -aadressi. kas selle määras teie DHP -server või on see vaikimisi IP - midagi vahemikku: 169.254.xxx.yyy? Kas see on midagi muud ??

2- Kas soovite staatilist (fikseeritud) IP-aadressi või dünaamilist IP-aadressi (määratud teie DHCP-serveri poolt).

Kontrollige lülitit / ruuterit, millega teie RPI on ühendatud.. kas see näeb teie uut porti? kas see võib "pingutada"? (kui teete seda, ühendage kindlasti algne pordikaabel lahti - muidu võib RPi teid petta).

Kasutage ifconfig'i (või uuemat käsku "ip"), et näha, kas andmed tulevad ja lähevad (nii -öelda) "normaalseks" ja ilma liigse arvu vigadeta.

== == ==

Lõpuks.. ma usun, et see on w5500.dtbo, mis määrab WIZ820io / W5500 moodulile MAC -aadressi.. kuid ma ei saa kindlalt öelda, kas see juhtub just seal. Ma ei suutnud selle kohta kohe üksikasju leida.

Minu jaoks tundub, et iga kord, kui see käivitatakse, määratakse erinev MAC -aadress. Mulle isiklikult see ei meeldi ja järelikult on Mac -aadressi seadistamiseks (näiteks programm "macchanger" või ip / ifconfig käskude kaudu) palju asju, mida saab teha. Kui keegi teist leiab sellele "alglaadimise" / "crontab" lahenduse, oleks mul hea meel kuulda, kuidas te seda teete, kui olete avatud jagamisele.

Pildil näete minu oma.. Kui otsin Mac-aadressi müüjalt eth0 ==> b827eb, ilmub see Raspberry Pi sihtasutusena. Eth1 ==> fa9770 müüja on tundmatu, nii et ilmselgelt loodi see mingil hetkel minu Pi -l.

9. samm: järeldus

Täname, et uurisite seda juhendit.

Selle väikese projektiga töötades õppisin üsna palju.

Kui teil on küsimusi või olete huvitatud ühe minu valmistatud plaadi ostmisest (asustatud või mitte), on mul mõned lisad, mis on müügil ja mida saame arutada.

Igal juhul soovitan teil kommenteerida, soovitada parandusi (kirjavigu või meetodeid või ??)

Kindlasti, kui teete selle endale, oleks mul väga hea meel näha fotosid selle kohta, kuidas te sellega toime tulite, ja teie lõpptulemusi / eesmärki.

Tänan.

P. S.: Tänan seda kaaslast juhendamise ja ideede eest.

Samm: DTBO -failid

Kaks faili, mida lisada oma ülekatete kausta - vajalik sammudeks 4 ja 5