01 of 09
Sissejuhatus vaarikakobarakkadesse
Termin GPIO (üldotstarbeline sisendväljund) ei ole ainuke Vaarika Pi. Sisend- ja väljundvardad leiate enamikelt mikrokontrolleritest nagu Arduino, Beaglebone jt.
Kui me räägime GPIO-st koos Vaarikaga Pi, viidatakse pikkadele kontaktidele laua ülemises vasakus nurgas. Vanematel mudelitel oli 26 tihvti, kuid enamik meist kasutab praegust mudelit 40-ga.
Neid kontakte saab ühendada komponentide ja muude riistvaraseadmetega ning kasutada koodi, et kontrollida, mida nad teevad. See on Rasvkude Pi oluline osa ja suurepärane võimalus elektroonikat õppida.
Pärast mõnda tarkvaraprojekti jõuate tõenäoliselt eksperimenteerivaks nende kontaktidega, soovides segada oma koodi riistvaraga, et asju juhtuks "reaalses elus".
See protsess võib olla ähvardav, kui olete stseenile uus, ja arvestades, et üks vale samm võib kahjustada teie Raspberry Pi, on arusaadav, et see on närvipiirkond algajatele uurimiseks.
See artikkel selgitab, mida iga GPIO-tüübi tüüp ja nende piirangud on.
02 09
GPIO
Kõigepealt vaatame GPIO tervikuna. Tindid võivad tunduda sama, kuid neil kõigil on erinevad funktsioonid. Eespool toodud kujutis näitab neid funktsioone erinevates värvides, mida me järgmises etapis selgitame.
Iga tihvt on nummerdatud 1 kuni 40, alustades vasakult allservas. Need on füüsilised pin-numbrid, kuid koodide kirjutamisel kasutatakse ka numeratsiooni / märgistamise konventsioone, näiteks "BCM".
03 alates 09
Võimsus ja maa
Esile tõstetud punane on 3,3 või 5-voldise märgistusega "3" või "5".
Need kontaktid võimaldavad otse saata seadmele jõudu, ilma et oleks vaja mingit koodi. Samuti ei ole võimalik neid välja lülitada.
Seal on 2 rööbast - 3,3 voldist ja 5 volti. Vastavalt sellele artiklile on 3.3 V rööbastee piiratud 50 mA praeguse joonisega, samal ajal kui 5 V rööbastee võib anda mis tahes praegust võimsust, mis ületab teie toiteallika pärast seda, kui Pi on võtnud selle, mida ta vajab.
Esiletõstetud pruun on maapirnid (GND). Need nöörid on täpselt need, mida nad ütlevad - maapinnalinnud - mis on elektroonikaprojekti oluline osa.
(5V GPIO tihvtid on füüsilised numbrid 2 ja 4. 3.3V GPIO tihvtid on füüsilised numbrid 1 ja 17. Maa GPIO tihvtid on füüsilised numbrid 6, 9, 14, 20, 25, 30, 34 ja 39)
04 09
Sisend / väljundpingid
Rohelised tihvtid on need, mida ma nimetan "üldisteks" sisend- ja väljundsignaalideks. Neid saab hõlpsalt kasutada sisenditena või väljundina, ilma et peaksite muretsema teiste funktsioonide nagu I2C, SPI või UART vastu.
Need on nööpnõelad, mis võivad saata valgusdioodi, buzersi või muid komponente, või kasutada sisendina sensorite, lülitite või muu sisendseadme lugemiseks.
Nende kontaktide väljundvõimsus on 3,3 V. Iga tihvt ei tohiks ületada 16mA vooluhulka, kas siis uppumist või hankimist ning kogu GPIO pistikute komplekt ei tohi ühel ajal ületada rohkem kui 50mA. See võib olla piirav, seega peate looma teatud projektides.
(Üldised GPIO tihvtid on füüsilised numbrid 7, 11, 12, 13, 15, 16, 18, 22, 29, 31, 32, 33, 35, 36, 37, 38 ja 40)
05 09
I2C Pins
Kollastes on meil I2C tihvtid. I2C on kommunikatsiooniprotokoll, mis lihtsas mõttes võimaldab seadmeid suhelda Vaarika Piga. Neid kontakte saab kasutada ka üldiste GPIO pistikutena.
Hea näide I2C-i kasutamisest on väga populaarne portaali ExpPander-kiip MCP23017, mis võib selle I2C-protokolli kaudu anda rohkem sisend- / väljundi kontakte.
(I2C GPIO tihvtid on füüsilised pin-numbrid 3 ja 5)
06 alates 09
UART (Serial) Pins
Hallil on UART tihvtid. Need nööpnõelad on teine kommunikatsiooniprotokoll, mis pakub järjestikühendusi ja mida saab kasutada ka üldiste GPIO sisendite / väljunditena.
Minu lemmik kasutamine UART-i jaoks on jadaühenduse lubamine oma Pi-st minu sülearvutist USB-ühenduse kaudu. Seda on võimalik saavutada, kasutades lisandmooduleid või lihtsaid kaableid, ja eemaldab vajaduse ekraani või Interneti-ühenduse järele, et pääseda oma Pi-le.
(UART GPIO tihvtid on füüsilised pin-numbrid 8 ja 10)
07 09
SPI tihvtid
Roosas on meil SPI kontakte. SPI on liidesebaas, mis saadab andmeid pi ja muu riistvara / välisseadmete vahel. Seda kasutatakse sageli seadmete, näiteks LED-maatriksi või ekraani sidumisel.
Nagu teisedki, saab neid kontakte kasutada ka üldiste GPIO sisendite / väljunditena.
(SPI GPIO tihvtid on füüsilised pinnumbrid 19, 21, 23, 24 ja 26)
08, 09
DNC tihvtid
Lõpuks on kaks sinist kontakti, mis praegu on märgistatud kui DNC, mis tähistab "Ära ühenda". See võib tulevikus muutuda, kui Raspberry Pi fond muudab plaate / tarkvara.
(DNC GPIO tihvtid on füüsilised pinnumbrid 27 ja 28)
09 09
GPIO nummerdamise konventsioonid
GPIO-ga kodeerimisel on teil võimalus GPIO-i teegi importida ühel kahest viisist - BCM või BOARD.
Võimalus, mida ma eelistan, on GPIO BCM. See on Broadcomi numeratsioonikonventsioon ja leian, et seda kasutatakse sagedamini projektide ja riistvara lisandmoodulitena.
Teine võimalus on GPIO BOARD. Selle meetodi puhul kasutatakse pigem füüsilisi pin numbreid, mis on käepide kontaktide lugemisel, kuid leiad, et seda kasutatakse projektide näidetena vähem.
GPIO-i teegi importimisel seadistatakse GPIO-režiim:
Impordiks BCM:
importida RPi.GPIO kui GPIO GPIO.setmode (GPIO.BCM)Laadimaterjalina importimiseks:
importida RPi.GPIO kui GPIO GPIO.setmode (GPIO.BOARD)Mõlemad meetodid teevad täpselt sama tööd, see on lihtsalt numbererimise eelistus.
Ma kasutavad regulaarselt käepäraseid GPIO märgistusega plaate, nagu näiteks RasPiO Portsplus (pildil), et kontrollida, milliseid tihvte ühendan ka juhtmeid. Üks külg näitab BCM nummerdamise konventsiooni, teine näitab BOARD - nii et olete kaetud mis tahes projekti leiad.