Skelbimas

„Raspberry Pi“ yra puikus kompiuteris mokymuisi. „Linux“ pagrindu veikiančioje „Raspbian“ OS yra įmontuotas „Python“, todėl tai yra puiki pirmoji sistema pradedantiesiems programuotojams. Jo bendrosios paskirties įvesties / išvesties (GPIO) kaiščiai leidžia pradedantiesiems kūrėjams lengvai eksperimentuoti su „pasidaryk pats“ elektronikos projektais.

Tai ypač lengva, kai naudojate kodų bibliotekas, kurios kontroliuoja šiuos kaiščius, ir populiarias RPi. „GPIO Python“ biblioteka yra puikus tokios bibliotekos pavyzdys. Bet ar tai geriausias kelias pradedantiesiems? Prisijunkite prie mūsų, kai mes tiriame.

Kas yra „GPIO Zero“?

„GPIO Zero“ biblioteka yra „Python“ biblioteka, skirta darbui su GPIO segtukais. Jį parašė „Raspberry Pi“ bendruomenės vadovas Benas Nuttallas. Siekdama būti intuityvi ir draugiška, ji supaprastina Python kodą daugeliui įprastų Raspberry Pi naudojimo atvejų.

Derinant paprastą vardinimo praktiką ir aprašomąsias funkcijas, „GPIO Zero“ yra lengviau prieinamas pradedantiesiems. Net patyrę RPi vartotojai. GPIO biblioteka gali pasirinkti pirmenybę ir, jei norite suprasti, kodėl, pažvelkime į tai, kaip RPi. GPIO palyginamas su GPIO Zero.

instagram viewer

Kas negerai su RPi. GPIO?

Nieko. Visiškai nieko. RPi. GPIO 2012 m. Pradžioje išleido kūrėjas Benas Crostonas. Tai tvirta biblioteka, leidžianti vartotojams valdyti GPIO kaiščius iš kodo. Joje yra beveik kiekvieno pradedančiojo projekto 11 geriausių „Raspberry Pi“ projektų pradedantiesiemsŠie „Raspberry Pi“ projektai pradedantiesiems yra puikūs norint pradėti naudotis bet kokio „Raspberry Pi“ modelio galimybėmis. Skaityti daugiau mes padengėme.

Nepaisant plataus naudojimo, RPi. GPIO niekada nebuvo sukurtas galutiniams vartotojams. Tai yra RPi liudijimas. Geras „GPIO“ dizainas, kurį naudoja daugelis pradedančiųjų.

Kas yra taip gerai apie „GPIO Zero“?

Kai esi mokytis Python kodo, jūs sužinote, kad ji turėtų būti lengvai skaitoma ir kuo trumpesnė. „GPIO Zero“ siekia apimti abu dalykus. Pastatyta ant RPi viršaus. GPIO kaip sąsaja su kalbomis, palengvina GPIO sąranką ir naudojimą.

Apsvarstykite šį pavyzdį, kaip nustatyti ir įjungti šviesos diodą:

Nustatymo kodas ir šviesos diodo išvestis naudojant RPi. GPIO biblioteka

Aukščiau pateiktas kodas turėtų būti gana pažįstamas visiems, kurie turi naudojo savo Pi valdyti šviesos diodus.

RPi. „GPIO“ biblioteka importuota ir deklaruojamas LED indikatorius. Nustatytas kaiščių išdėstymo tipas (BCM ir BOARD režimai yra paaiškinta mūsų GPIO vadove Viskas, ką reikia žinoti apie „Raspberry Pi GPIO“ segtukus„Raspberry Pi“ yra fantastinis mažas kompiuteris, tačiau ką tiksliai daro GPIO (bendrosios paskirties įvesties / išvesties) kaiščiai? Trumpai tariant, jie atveria visą „pasidaryk pats“ elektroninių prekių kūrimo ir išradimų pasaulį. Skaityti daugiau ), o kaištis nustatomas kaip išvestis. Tada smeigtukas įjungtas.

Šis požiūris turi prasmę, tačiau „GPIO Zero“ būdas tai padaryti yra daug paprastesnis:

Šviesos diodo nustatymas naudojant „GPIO Zero“

„GPIO Zero“ turi šviesos diodų modulį, importuotą pradžioje. Tai reiškia, kad galite deklaruoti PIN kodą ir paskambinti led.on () metodas.

Kodėl „GPIO Zero“ metodas geresnis?

Yra keletas priežasčių, kodėl šis darbo metodas pagerina RPi. GPIO.

Pirma, jis atitinka „lengvai skaitomo, kuo trumpesnio“ reikalavimą. Kol RPi. GPIO sąrankos teiginiai yra pakankamai lengvai suprantami, jie nebūtini. Šviesos diodas visada bus išvestis, todėl „GPIO Zero“ nustato kaiščius užkulisiuose. Rezultatas yra tik trys nustatytinos kodo eilutės, tada užsidega šviesos diodas.

Galite pastebėti, kad „GPIO Zero“ pavyzdyje nėra plokštės režimo sąrankos. Bibliotekoje smeigtukai naudoja tik „Broadcom“ (BCM) numeraciją. Bibliotekos dizaineris Benas Nuttallas paaiškina, kodėl 2015 m „RasPi.tv“ interviu:

„Lentos numeracija gali atrodyti paprastesnė, tačiau aš sakyčiau, kad tai verčia naujus vartotojus manyti, kad visi kaiščiai yra bendro pobūdžio ir nėra. Prijunkite šviesos diodą prie 11 kaiščio, kodėl gi dar neprijungus prie 1, 2, 3 ir 4 kaiščių? 1 šulinys yra 3V3. 2 ir 4 yra 5 V. Nežinia, koks yra kaiščių tikslas. Tai gali būti pavojinga. “

Taip kalbant, yra absoliučiai prasminga naudoti BCM numerius. Atsižvelgiant į tai, kad „GPIO Zero“ bus standartinis „Raspberry Pi“ dokumentuose, verta mokytis!

Ar „GPIO Zero“ yra geriau?

Nors naujoji biblioteka atrodo tiesesnė, ar ji turi kokių nors problemų? Kaip ir bet kurioje naujoje kodavimo bibliotekoje, tai yra nuomonės klausimas. Viena vertus, pašalinti sąrankos kodą puikiai tinka tiek pradedantiesiems, tiek patyrusiems koderiams. Kodo rašymas yra tiesesnis ir greitesnis.

Kita vertus, norint žinoti, kas tiksliai vyksta, svarbu žinoti. Paimkite mygtuko nustatymo pavyzdį iš „GPIO Zero“ dokumentacija:

GPIO nulio mygtuko pavyzdžio kodas

mygtuką modulis supaprastina mygtukų nustatymą. Jis žino, kad mygtukai yra įėjimai, todėl sąrankai naudoja deklaruojamą PIN kodą. Patikrinti, ar nepaspaudžiamas mygtukas, taip pat yra lengviau .suspaustas aptikti mygtukų paspaudimus.

Šią tikslią funkciją naudojome Aviečių Pi mygtuko pamoka 2 būdai, kaip pridėti mygtuką prie savo „Raspberry Pi“ projektoKaip prijungti mygtuką prie „Raspberry Pi“? Čia yra du būdai pradėti, parodyti naudojant „Python“ ir LED. Skaityti daugiau , kuris yra puikus būdas susipažinti su bibliotekų skirtumais.

RPi vartotojai. GPIO biblioteka pastebės, kad Pi vidiniai ištraukiamieji ir (arba) nuleidžiamieji varžai nėra nustatyti kode. Tai kelia įdomų klausimą. Ar pradedantiesiems būtina žinoti apie rezistorius, traukiančius aukštyn / žemyn? Vėlgi, Benas Nuttallas turi atsakymą į šį klausimą:

„Galbūt jūs teigiate, kad pravartu žinoti apie pritraukimus ir nusileidimus, ir jūs buvote teisus, tačiau kodėl aš turiu to išmokyti pirmą dieną? […] Jei norite išmokti elektronikos nuodugniau, tam yra daug galimybių, tačiau tai neturėtų būti privaloma, jei jūs tik gaunate prasidėjo. “

Apskritai, paprastas „GPIO Zero“ požiūris yra geras dalykas tiek pradedantiesiems, tiek veteranams. Be to, RPi. GPIO niekur nevažiuoja. Visada bus ten, kur reikia, perjungti atgal.

Ar „Python“ yra vienintelis pasirinkimas?

Python yra kalba, kuria Pi yra žinoma, tačiau tai nėra vienintelė galimybė. Jei jau esate susipažinęs su programavimu C kalba, tada Laidų Pi ar apėmė.

Arba, jei jau programuojate „JavaScript“, Node.js galima lengvai įdiegti „Pi“. GPIO prieiga prieinama per rpi-gpio npm biblioteka. Rubinas ant bėgių taip pat gali būti įdiegta į Raspberry Pi, nors Pi gali būti ne tas geriausias būdas išmokti bėgių!

Visos šios alternatyvos, kaip ir daugiakalbės bibliotekos, patinka kiaulė gali painioti bibliotekos pasirinkimą. Štai kur išsiskiria „GPIO Zero“: pradedantiesiems įdomu, kaip ir nuo ko pradėti.

Jei esate toje vietoje, kur jums reikia kažko, ko ji neteikia, būsite pasiruošę pasinerti į šias kitas bibliotekas savo tempu.

„GPIO Zero“ pradžia

„GPIO Zero“ yra naujausia biblioteka, leidžianti suprasti Pi reikšmę ir dėl rimtos priežasties. Daugeliui vartotojų GPIO kaiščių kodavimas tampa paprastesnis ir greitesnis.

Atsižvelgiant į aviečių Pi naudojimą ugdyme, viskas, kas daro mokymąsi natūralesnį, yra geras dalykas. Kol RPi. „GPIO“ iki šiol buvo tobulas, „GPIO Zero“ įgyvendina gerą idėją ir daro ją dar geresne.

Puikus būdas pradėti naudotis „GPIO Zero“ yra imtis tokio pradedančiojo projekto kaip Muzikinis durų jutiklis Atkurkite savo temą, kai įeinate į kambarį su „Raspberry Pi“Ar kada norėjote atvykti namo asmeniškai pasveikinti? Šiame paprastame Raspberry Pi projekte mes naudosime nendrinį jungiklį, kad melodija pasikartotų atidarius duris. Skaityti daugiau ir perkelkite jį į naują biblioteką.

Ian Buckley yra laisvai samdomas žurnalistas, muzikantas, atlikėjas ir vaizdo įrašų prodiuseris, gyvenantis Berlyne, Vokietijoje. Kai jis nerašo ir nesirenka scenoje, jis pasidomi „pasidaryk pats“ elektronika ar kodu tikėdamasis tapti beprotišku mokslininku.