Vaarika Pi GPIO reis

01 of 09

Sissejuhatus vaarikakobarakkadesse

Vaarikas Pi GPIO. Richard Saville

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

GPIO tihvtid on nummerdatud 1 kuni 40 ja neid saab rühmitada erinevate funktsioonide all. Richard Saville

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

Vaarika Pi pakub mitu võimu ja maapinnast kontakte. Richard Saville

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

Sisend- ja väljundpesad võimaldavad teil ühendada riistvara, nagu andurid ja lülitid. Richard Saville

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

I2C võimaldab teil oma Pi-ga teiste seadmetega ühendada ainult paar tihvtidega. Richard Saville

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

Ühendage oma Pi üle UART-pistikute seeriaühendusega. Richard Saville

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

SPI Pins - teine ​​kasulik kommunikatsiooniprotokoll. Richard Saville

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

Midagi siin ei näe - DNC-pingid ei täida mingit funktsiooni. Richard Saville

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

Portsplus on kasulik vahend GPIO pin numbrite kontrollimiseks. Richard Saville

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.