Zakaj je GPIO Zero boljši od RPi.GPIO za projekte Raspberry Pi

Zakaj je GPIO Zero boljši od RPi.GPIO za projekte Raspberry Pi

Raspberry Pi je popoln računalnik za učenje. OS Raspbian, ki temelji na Linuxu, ima vgrajen Python, zaradi česar je odličen prvi sistem za kodirnike začetnike. Njegovi vhodno -izhodni zatiči splošnega namena (GPIO) olajšujejo ustvarjalcem začetnike, da eksperimentirajo s projekti DIY elektronike.





Še posebej enostavno je, če uporabljate knjižnice kod, ki nadzorujejo te zatiče, priljubljena knjižnica Python RPi.GPIO pa je odličen primer takšne knjižnice. Toda ali je to najboljša pot za začetnike? Pridružite se nam pri raziskovanju.





Kaj je GPIO Zero?

Knjižnica GPIO Zero je knjižnica Python za delo z zatiči GPIO. Napisal ga je Vodja skupnosti Raspberry Pi Ben Nuttall . Ker je intuitiven in prijazen, racionalizira kodo Python za večino običajnih primerov uporabe Raspberry Pi.





Z združevanjem preprostih praks poimenovanja in opisnih funkcij je GPIO Zero bolj dostopen začetnikom za razumevanje. Tudi izkušenim uporabnikom knjižnice RPi.GPIO je morda všeč-in da bi razumeli, zakaj, poglejmo, kako se RPi.GPIO primerja z GPIO Zero.

Kaj je narobe z RPi.GPIO?

Nič. Prav nič. RPi.GPIO je v začetku leta 2012 izdal razvijalec Ben Croston. To je robustna knjižnica, ki uporabnikom omogoča nadzor nad zatiči GPIO iz kode. Odlikuje ga v skoraj vsak projekt začetnik smo pokrili.



moja opravilna vrstica ne deluje v sistemu Windows 10

Kljub široki uporabi RPi.GPIO nikoli ni bil zasnovan za končne uporabnike. To je dokaz dobrega oblikovanja RPi.GPIO, da ga kljub temu uporablja toliko začetnikov.

Kaj je dobrega pri GPIO Zero?

Ko ste učenje kode Python , se naučite, da mora biti enostaven za branje in čim krajši. Cilj GPIO Zero je zajeti obe točki. Zgrajen na vrhu RPi.GPIO kot vmesnik za jezike, poenostavlja nastavitev in uporabo GPIO.





Razmislite o naslednjem primeru nastavitve in vklopa LED:

Zgornja koda bi morala biti vsem znana uporabljali svoj Pi za nadzor LED .





Knjižnica RPi.GPIO je uvožena in razglašen je pin za LED. Nastavljena je vrsta postavitve zatičev (način BCM in BOARD razloženo v našem vodniku GPIO ), pin pa je nastavljen kot izhod. Nato se zatič vklopi.

Ta pristop je smiseln, vendar je način GPIO Zero veliko preprostejši:

GPIO Zero ima modul za LED, uvožen na začetku. To pomeni, da lahko deklarirate številko PIN in pokličete led.on () metoda.

kje kupiti rabljene računalniške dele

Zakaj je pristop GPIO Zero boljši?

Obstaja nekaj razlogov, zakaj je ta način dela izboljšanje RPi.GPIO.

Prvič, izpolnjuje zahtevo 'enostavno berljivo, čim krajše'. Čeprav so nastavitveni stavki RPi.GPIO dovolj enostavni za razumevanje, niso nujni. LED bo vedno izhod, zato GPIO Zero nastavi zatiče v ozadju. Rezultat so le tri vrstice kode za nastavitev, nato pa prižgite LED.

Morda boste opazili, da v primeru GPIO Zero ni nastavljenega načina plošče. Knjižnica uporablja samo številčenje Broadcom (BCM) za nožice. Oblikovalec knjižnice Ben Nuttall pojasnjuje, zakaj je leta 2015 Intervju RasPi.tv :

'Oštevilčevanje plošč se morda zdi preprostejše, vendar bi rekel, da nove uporabnike prepriča, da so vsi zatiči splošnega namena-in niso. Priključite LED na pin 11, zakaj ne bi priključili še nekaj na nožice 1, 2, 3 in 4? No 1 je 3V3. 2 in 4 sta 5V. Pomanjkanje zavedanja, kakšen je namen zatičev, je lahko nevarno. '

Tako povedano, je smiselno uporabiti številke BCM. Glede na to, da bo GPIO Zero v prihodnje standard v dokumentaciji Raspberry Pi, se ga je vredno naučiti!

Je GPIO Zero dejansko boljši?

Čeprav na prvi pogled deluje bolj preprosto, ali ima nova knjižnica težave? Kot pri vsaki novi knjižnici za kodiranje je to vprašanje mnenja. Po eni strani je odstranitev nastavitvene kode odlična tako za začetnike kot za izkušene koderje. Pisanje kode je bolj preprosto in hitreje.

Po drugi strani pa je za učenje pomembno, da natančno veste, kaj se dogaja. Vzemite primer nastavitve gumba iz Dokumentacija o GPIO Zero :

The gumb modul poenostavlja nastavitev tipk. Ve, da so gumbi vhodi, zato za nastavitev uporablja deklarirano številko pin. Preverjanje pritiska na gumb je tudi lažje s pomočjo .is_pressed za zaznavanje pritiskov na gumbe.

To natančno funkcijo smo uporabili v Vadnica o gumbih Raspberry Pi , ki je odličen način, da se seznanite z razlikami v knjižnicah.

Uporabniki knjižnice RPi.GPIO bodo opazili, da notranji vlečni/spustni uporniki Pi niso nastavljeni v kodi. To odpira zanimivo vprašanje. Ali je za začetnike nujno, da poznajo uporovne/uporovne upore? Ben Nuttall ima spet odgovor na to vprašanje:

'Lahko bi trdili, da je dobro vedeti o dvigih in padcih, in imeli bi prav-toda zakaj moram tega učiti prvi dan? [...] Če želite poučevati elektroniko v več globine je za to veliko prostora --- vendar to ne bi smelo biti obvezno, če šele začenjate. '

Na splošno je preprost pristop GPIO Zero verjetno dober za začetnike in veterane. Poleg tega RPi.GPIO ne gre nikamor. Vedno bo na voljo za preklop nazaj, če bo potrebno.

Je Python edina možnost?

Python je jezik, po katerem je Pi znan, vendar ni edina možnost. Če že poznate programiranje v jeziku C, potem Ožičenje Pi ali si pokrit.

Če pa že programirate v JavaScript, lahko Node.js enostavno namestite na Pi. Dostop GPIO je na voljo prek knjižnica rpm-gpio npm . Ruby on Rails lahko namestite tudi na Raspberry Pi, čeprav Pi morda ni najboljši način za učenje Rails!

Vse te alternative, skupaj z večjezičnimi knjižnicami, so odlične poceni lahko izbira knjižnice povzroči zmedo. Tu se odlikuje GPIO Zero: za začetnike, ki se sprašujejo, kako in kje začeti.

Če ste na točki, ko potrebujete nekaj, česar ne ponuja, se boste več kot pripravljeni potopiti v te druge knjižnice s svojim tempom.

Začnite sami z GPIO Zero

GPIO Zero je najnovejša knjižnica, ki je navdušila Pi in z dobrim razlogom. Za večino uporabnikov je kodiranje zatičev GPIO enostavnejše za branje in hitrejše pisanje.

kateri xbox one naj kupim

Glede na uporabo Raspberry Pi v izobraževanju je vse, kar naredi učenje bolj naravno, dobro. Čeprav je bil RPi.GPIO do zdaj popoln, GPIO Zero sprejme dobro idejo in jo naredi še boljšo.

Odličen način za začetek uporabe GPIO Zero je, da vzamete projekt za začetnike, kot je senzor glasbenih vrat, in ga prenesete v novo knjižnico.

Deliti Deliti Cvrkutati E-naslov 5 nasvetov za polnjenje vaših strojev VirtualBox Linux

Ste naveličani slabe zmogljivosti, ki jo ponujajo virtualni stroji? Tukaj je tisto, kar morate storiti za povečanje zmogljivosti VirtualBox.

Preberite Naprej
Sorodne teme
  • DIY
  • Programiranje
  • Malina Pi
  • Python
  • GPIO
O avtorju Ian Buckley(216 objavljenih člankov)

Ian Buckley je samostojni novinar, glasbenik, izvajalec in video producent, ki živi v Berlinu v Nemčiji. Ko ne piše ali je na odru, se ukvarja z elektroniko ali kodo DIY v upanju, da bo postal nori znanstvenik.

Več od Iana Buckleyja

Naročite se na naše novice

Pridružite se našemu glasilu za tehnične nasvete, ocene, brezplačne e -knjige in ekskluzivne ponudbe!

Kliknite tukaj, če se želite naročiti