Ebben a cikkben egy digitális voltméter készítek egy raspberry pi pico (pimoroni pico explorer) segítségével.
Google fordító segítségével, fordítottam az segítő oldalt és ez alapján készítem el a digitális voltmérőt.
Feladat:
- Rapberry Pi (röviden: RP) pico összekapcsolása egy Arduino-s ethernet eszközzel
- Funduino ethernet shield W5100
- másik eszköz LAN8720A, amiről a példa ír, aztán még megpróbálom egy W5500 -al is
- Ethernet modulhoz csatlakozási lehetőségek és elnevezései a piros áthúzott részt nem lehet még használni, át kell néznem!. Szürkével kiemeltem ami a pimoroni pico explorer specifikus lesz!
-
Ethernet modul megnevezése Ethernet megnevezések RP Pico megnevezés RP Pico GPIO RP Pico PIN RP GPIO RP PIN Arduino UNO Arduino MEGA Arduino Nano HR911105A Wiznet W5100 W5100 W5100 W5100 W5100 W5100 W5100 W5100 ENC28J60 V+5, VCC power 3.3 V 3.3 V OUT 2 5V (van 5V-os kimenet) 5V 5V GND, G Ground Ground GND 38 6 GND GND GND MO, MOSI, SI, DIN, TX Data input GP3 (SP10 TX) SP1x_TX GP10 14 GPIO10 D11 D51 D11 SCK, CLK, SCLK, CK Clock GP2 (SP10 SCK) SP1x_SCK GP15 20 GPIO23 D13 D53 D13 MI, MISO, SO, DON, RX Data outpu GP4 (SP10 RX) SP1x_RX GP6 9 GPIO09 D12 D52 D12 CS, SS, NSS, CRS Chip select CRS (RX0 + 2) GP8 11 GPIO24 D10 D10, D53 D10 INT nINT / RETCLK, REFCLK0 GP20 26 GPIO25 RST Reset D09 D09 RESET LAN 8720 W5500, WIZ850io, W5100 (tesztelem még) oldal How to add Ethernet to Raspberry Pi Pico - Raspberry Pi oldal How to add W5500 Ethernet to Raspberry Pi Pico (Python) - 1 - Hackster.io Pico RP20401 LAN8720 Pico megnevezés pimoroni explorer Pico GP Pico PIN W5500 WIZ850io W5100 Pin 9 GP6 RX0 SP11_RX SP10_RX, GP4, PIN6 GP12 PIN16 MISO MISO MISO, MO Pin 10 GP7 RX1 (RX0 + 1 ) Pin 11 GP8 CRS (RX0 + 2) SP11_CSn SP10_CSn, GP5, PIN7 GP13 PIN17 SCNn SCNn SCNn, NSS Pin 14 GP10 TX0 SP11_TX SP10_TX, GP7, PIN10 GP11 PIN15 MOSI MOSI MOSI, MI Pin 15 GP11 TX1 (TX0 + 1) Pin 16 GP12 TX-EN (TX0 + 2) Pin 19 GP14 MDIO Pin 20 GP15 MDC Pin 26 GP20 nINT / RETCLK SP11_SCK SP10_SCK, GP2, PIN4 GP10 PIN14 SCLK SCLK SCLK, SCK, "SOK" 3V3 (OUT) — VCC 3.3V 3.3V 3.3V 3.3V 3.3V Pin 38 GND GND GND GND 3,8,13,18,23,28,33,38 GND GND GND
- RP pico "programozása", hogy működjön az ethernet modul segítség innen
- alapok az induláshoz (linux)
- parancsok:
- cd build
- cmake ..
- make
- soros monitor paramcs
- minicom -D /dev/ttyACM0
- minicom -b 115200 -o -D /dev/ttyACM0
- példák a pico-hoz
- Git-clone, ha nem menne a git clone parancs (git clone Ez az e-mail-cím a szpemrobotok elleni védelem alatt áll. Megtekintéséhez engedélyeznie kell a JavaScript használatát.:sandeepmistry/pico-rmii-ethernet.git), akkor "git clone https://github.com/sandeepmistry/pico-rmii-ethernet.git" működhet.
- a "git submodule update --init" szükséges, hogy letöltse a megfelelő dolgokat a "make" elött!
- Mivel nincs még LAN8720 ezért nem működik a w5100 -al, de keresem a megoldást ... :)
- A pimoroni explorer bekötésénél át kell írni majd a .h -t
Raspberry pi pico oldalak:
Raspberry Pi Pico specifications – Raspberry Pi
Buy a Raspberry Pi Pico – Raspberry Pi
Overview | Getting Started with Raspberry Pi Pico and CircuitPython | Adafruit Learning System
Pinouts | Getting Started with Raspberry Pi Pico and CircuitPython | Adafruit Learning System
GitHub - raspberrypi/pico-feedback
A pimoroni Pico Explorer -t használtam:
a kijelző A, B, X, Y, -t használtam nyomógombokhoz
button_A = machine.Pin(12, machine.Pin.IN, machine.Pin.PULL_UP)
button_B = machine.Pin(13, machine.Pin.IN, machine.Pin.PULL_UP)
button_X = machine.Pin(14, machine.Pin.IN, machine.Pin.PULL_UP)
button_Y = machine.Pin(15, machine.Pin.IN, machine.Pin.PULL_UP)
A kijelző ST 7789, Pico - a vibrant 1.14" (240x240) IPS LCD
LCD MOSI, MOSI = machine.Pin(19)
LCD SCLK, SCK = machine.Pin(18)
LCD CS, CS = machine.Pin(17)
LCD DC, MISO = machine.Pin(16)
Ethernet modul
How to add Ethernet to Raspberry Pi Pico - Raspberry Pi
How to add a reset button to your Raspberry Pi Pico - Raspberry Pi
LAN8720 ETH Board Ethernet module, 10/100 Ethernet Transceiver LAN8720 onboard (waveshare.com)
GitHub - sandeepmistry/pico-rmii-ethernet
Working With the Funduino W5100 Ethernet Module. - Instructables
- január vége közelében a Raspberry Pi Alapítvány bombát dobott a Pico bevezetésével, amely belépett a mikrovezérlők világába.
Rengeteg képesség és egy áttörő árcédula mindenki figyeli a Picót, és ma ezt a kis csodát vetem át a lépésein.
Tehát húzzuk ki a MicroPythont, mert ma MINDENT programozni fogunk egy Raspberry Pi Pico készülékre a MicroPython használatával. Meglátjuk, hogy négy dollár értékű mikrokontroller kap-e manapság!
Bevezetés
Az, hogy a Raspberry Pi Alapítvány emberei kiadták a mikrovezérlőt, önmagában hatalmas bejelentés volt, miután a világ legnépszerűbb egykártyás számítógépének gyártói soha nem fejezték ki érdeklődésüket a mikrovezérlők iránt.
De nemcsak a Raspberry Pi Pico bejelentése lepett meg, hanem az, hogy exkluzív Raspberry Pi szilícium köré épült, még inkább megdöbbentő volt. Ahelyett, hogy a meglévő kódra és az ESP32 vagy SAMD21 alapú konstrukciók támogatására épülnének, saját mikrovezérlőjük létrehozását választották.
Tehát amikor a Picóról van szó, mindannyian a nulláról indulunk.
A Raspberry Pi rengeteg műszaki dokumentációt tett közzé, valamint egy remek útmutatót a Start Start with MicroPython néven a Raspberry Pi Pico programhoz . Puhafedeles változatban és PDF-formátumban is letölthető.
De különben jelenleg nincs sok „valós” információ a Picóról. Kétségtelen, hogy ez hamarosan megváltozik, főleg, hogy a Raspberry Pi más gyártókat, köztük az Adafruit engedélyt adott az RP2040 chip használatára saját tervezésükben. Ennek több kódot és fejlesztő eszközt kellene hoznia.
Addig is lássuk, mit tudhatunk meg a Picóról, ha egy csomó dolgot összekapcsolunk vele!
Málna Pi Pico
A Pico egy apró tábla, körülbelül akkora, mint egy Arduino Nano. Mint minden Raspberry Pi termék, a csomagolás is elég minimális, sőt, ez csak egy műanyag csomagolásban lévő Pico, amelyet maga vágott le egy csomagcsíkról. Rendeljen hasonló csomagokat snackekből vagy cukorkákból, amelyeket ömlesztve vásárolhat meg.
Nézd meg a Pico Board-ot
A Pico tábla minden, amit négy dollárjáért kap, nem azt jelenti, hogy ez nem nagyszerű vásárlás, de ha divatos csomagolást vagy dokumentációt keres, akkor máshol keresse meg.
A hasonló árú Seeeduino XIAO-val ellentétben nincsenek fejléc-csapok a táblához csomagolva, ezért ezeket Önnek kell ellátnia. Ez egy jól elkészített kártya, amely SMD alkatrészként is használható, és közvetlenül egy nyomtatott áramköri lapra forrasztható.
Felülnézet
Felülről a Pico így néz ki:
A kártya legfontosabb jellemzője az egyik végén található microUSB csatlakozó. Ezt használják mind a kommunikációra, mind pedig a Pico áramellátására.
A microUSB csatlakozó mellé egy fedélzeti LED van szerelve, amely belső kapcsolatban van a GPIO 25 tűvel. Érdemes megjegyezni, hogy ez az egyetlen LED a teljes Pico kártyán.
A BOOTSEL nyomógombos kapcsoló kissé lejjebb van felszerelve a LED-től, lehetővé teszi a Pico rendszerindítási módjának megváltoztatását, hogy a MicroPython-ot betölthesse rá, és elvégezhesse az áthúzás programozást.
A tábla alján három kapcsolat látható, ezek egy soros Debug opcióra vonatkoznak, amelyet ma nem fogunk felfedezni, de a haladó fejlesztők számára érdekes lehet.
A tábla közepén az egész agya, az RP2040 MCU található, amelynek jellemzőit rövid időn belül megvizsgáljuk.
Földi csapok
A táblán több földelő csatlakozás található, közülük nyolc, valamint egy további a 3 tűs Debug csatlakozón.
Ezek a csapok könnyen észrevehetők, egyenletesen helyezkednek el és négyszögletesek, szemben a többi csatlakozással lekerekített.
A 33. érintkező egyik földelő csatlakozását szintén analóg földnek nevezik
Power Pins
A Pico egy 3,3 voltos logikai eszköz, azonban a beépített feszültségátalakítónak és szabályozónak köszönhetően számos tápegységgel táplálható.
Az összes tápellátással kapcsolatos érintkezőt az alaplap egyik részében tapogatják meg, közel a microUSB csatlakozóhoz.
- VBUS - Ez a microUSB busz tápellátása, 5 voltos. Ha a Picót nem a microUSB csatlakozó táplálja, akkor itt nem lesz kimenet.
- VSYS - Ez a bemeneti feszültség, amely 2 és 5 volt közötti lehet. A fedélzeti feszültségátalakító 3,3 voltra változtatja a Pico esetében.
- 3V3 - Ez egy 3,3 voltos kimenet a Pico belső szabályozójától. Használható további alkatrészek áramellátására, biztosítva, hogy a terhelést 300ma alatt tartsa.
Van néhány bemenet is, amelyek lehetővé teszik a Pico áramellátásának vezérlését.
- 3V3_HU - Ezzel a bemenettel letilthatja a Pico belső feszültségszabályozóját, amely kikapcsolja a Pico-t és az általa működtetett alkatrészeket.
- RUN - Ez a vonal engedélyezheti vagy letilthatja az RP2040 mikrovezérlőt, és visszaállíthatja azt is.
GPIO csapok
A Raspberry Pi Pico táblán 26 kitett GPIO kapcsolat található.
Elég jól vannak elrendezve sorrendben, a GPIO 22 és a GPIO 26 között van egy „rés” (ezeket a „hiányzó” csapokat belsőleg használják).
Nagyon jó, hogy ezeknek a csapoknak több funkciója van, és akár 16-ot is beállíthat PWM-hez.
Két I2C busz, két UART és két SPI busz létezik, ezek konfigurálhatók a legkülönbözőbb GPIO csapok használatára.
Analóg csapok
A Pico három analóg-digitális átalakítóval rendelkezik, ráadásul egy negyedik is van, amelyet belsőleg használnak fedélzeti hőmérséklet-érzékelőhöz.
Az ADC-k 12 bites felbontással rendelkeznek.
Külső pontos feszültségreferenciát is megadhat az ADC_VREF csapon. Az egyik alapot, a 33. érintkező ADC_GND-jét használjuk alappontként erre a hivatkozásra.
RP2040 mikrovezérlő
A Raspberry Pi Pico az Alapítvány új chipje, az RP2040 mikrokontroller köré épül. Lenyűgöző specifikációkkal rendelkezik:
- Kétmagos 32 bites ARM Cortex-M0 +
- 48MHz-en fut, de 133MHz-re is túlhúzható
- 30 GPIO tű (26 kitéve)
- Támogatja az USB Host vagy Device módot
- 8 Programozható I / O (PIO) állapotgépek
Az RP2040 legfeljebb 16 MB flash-memóriát képes támogatni, bár a Picóban csak 4 MB van.
A Raspberry Pi nagyon sok tervet tervez erre a chipre, és sok más gyártónak is engedélyt adott rá.
A Pico programozása
A Picóval a két programozási nyelv egyikével kezdheti el.
- MicroPython - A Python részhalmaza, a MicroPython egy értelmezett nyelv, amely kifejezetten mikrovezérlők számára készült.
- C ++ - Sok mikrovezérlő felhasználó ismeri a C ++ szoftvert, mivel azt az Arduino és az ESP32 táblákon használják.
Bár nagyon vágyom arra, hogy a C ++ programot használjam a Picóval, hogy kivonjam belőle a teljesítmény minden utolsó grammját, mégis úgy döntöttem, hogy azt csinálom, amit a legtöbb ember csinál, és használom a MicroPythont. A fejlesztés ezen korai szakaszában a C ++ eszközei még mindig megkapják az utolsó simításokat, és várom, hogy a Pico bekerüljön a PlatformIO és az Arduino IDE fórumkollekciókba, ami gyanítom, hogy hamarosan megjelenik.
Első lépések a Picóval
Kezdjük tehát a Picóval.
Amikor megkapjuk a Pico deszkánkat, műanyag tartóba csomagoljuk, további alkatrészek nélkül. Hacsak nincs terve a Pico felületre történő felszerelésére, vagy ha egyetlen célja a fedélzeti LED villogása, vagy a Pico USB-kulcsként történő használata, akkor szüksége van néhány tűre.
A Picónak 40 csapja van, mindkét oldalon 20. További három csapot használunk a Debug porthoz.
A szabványos férfi fejléc csapok 40 tűs csíkokban kerülnek forgalomba, így az egyik szalag felére tehető, hogy a Pico csapoként használhassa. Ha azt szeretné, hogy a Debug csatlakozón legyenek csapok, akkor egy másik 3 tűs mal fejlécre van szükség, akár egyenes, akár 90 fokos.
Pico forrasztása
Mielőtt elkezdenénk programozni a Pico-t, egy kis forrasztást kell végeznünk!
A Dupont férfi fejléc csapoktól eltekintve megfelelő forrasztópáka és néhány forrasztóanyag kell. A vasnak finom csúcsa kell, hogy legyen egy tisztább szivacs és tartó.
Szüksége lesz egy módszerre is, amellyel a Pico csapjait a helyén tartja, miközben forrasztja őket, mivel azokat pontosan 90 fokos szögben kell felszerelni a táblához, hogy egy forrasztatlan kenyérlapba illeszkedjenek.
Számos kísérletben forrasztatlan kenyérlapot használnak a csapok rögzítéséhez, és bár ez működik, fennáll annak a veszélye, hogy a kárt vagy kőforrasztást okozhat. Ha azonban van egy régebbi kenyérlemezed, amely jobb napokat látott, akkor azt tűtartóként használhatod fel!
Személy szerint szeretek pár darab olcsó perfboard, perforált kísérleti deszkát használni. Az „olcsó” kifejezés alatt azt az egyoldalas cuccot értem, amelynek nincsenek átfedő lyukai, csak az egyik oldalán csak csupasz réz van.
Két darab ebből a cuccból kiválóan alkalmas a csapok megfogására, ezt sokat használom, amikor egy kis modult vagy mikrokontrollert kell forrasztanom.
Hozza fel a vasalót hőmérsékletre, melegítse fel a csapszeg csatlakozóját, és helyezze a forrasztást a másik oldalra, soha ne közvetlenül a vasalóra. Melegítse az alkatrészeket, ne a forrasztást.
Ha meg szeretné forrasztani a 3 tűs csatlakozót a Debughoz (opcionális), akkor valószínűleg először ezt kell tennie. Ezek a csapok a GPIO csapokkal ellentétes irányba néznek. Egy kis post-it jegyzettömböt használtam a tábla egyenes tartásához, mivel a Debug csatlakozó sajnos nem egyezik meg a GPIO csapokkal egy 0,1 hüvelykes rácson.
Utána már csak 40 csap forrasztásáról volt szó, egyszerre 20-at! Ez valóban nem tart túl sokáig, csak annyi forrasztót használjon, amennyi szükséges, hogy elkerülje a forrasztóhidakat, és ha végzett, ellenőrizze munkáját.
A Pico tisztítása forrasztás után
Szeretem megtisztítani a NYÁK -imat, miután forrasztottam őket, hogy megszabaduljak a forrasztástól és a gyantától, amely a forrasztás magjában volt. Barnás foltként jelenik meg a forrasztási csatlakozások körül.
Ez a lépés teljesen választható, mivel a fluxus és a gyanta nincs káros hatással az alkatrészek működésére vagy élettartamára. Csak jobban néz ki IMHO!