Ազնվամորի Պի GPIO- ի շրջագայություն

01-ը 09

Ազնվամորու PIN- ի ներդիրների ներածություն

The ազնվամորու Pi GPIO. Ռիչարդ Սավիլը

«GPIO» (Ընդհանուր նպատակի ելքային ելք) տերմինը բացառիկ չէ «Ազնվամորի» համար: Ներածման եւ ելքային կապոցները կարելի է գտնել մեծ թվով միկրոդոլիտների վրա, ինչպիսիք են Arduino, Beaglebone եւ այլն:

Երբ խոսում ենք GPIO- ի Raspberry Pi- ի հետ, մենք խոսում ենք խորհուրդը վերեւի ձախ անկյունում: Ավելի հին մոդելներ ունեին 26 կապոց, սակայն մեզանից շատերը կօգտագործեն ներկայիս մոդելը 40:

Դուք կարող եք միացնել բաղադրիչները եւ այլ ապարատային սարքավորումները այս կապանքներին եւ օգտագործել կոդը, վերահսկելու համար, թե ինչ են անում: Դա Morpberry P- ի կարեւոր մասն է եւ էլեկտրոնիկայի մասին գերազանց ձեւով սովորելու համար:

Մի քանի ծրագրային ծրագրերից հետո, հավանաբար, ձեզ փորձելու համար փորձեք այս կապանքները, պատրաստակամորեն խառնել ձեր կոդը կոշտ սկավառակի միջոցով, որպեսզի իրերը կատարվեն «իրական կյանքում»:

Այս գործընթացը կարող է վախեցնել, եթե դու նոր տեսարան ունես եւ հաշվի առնելով, որ մեկ կեղծ քայլը կարող է վնասել ձեր ազնվամորուի պիին, հասկանալի է, որ սա նյարդային տարածություն է սկսնակների համար, որոնք ուսումնասիրում են:

Այս հոդվածը կբացատրի, թե ինչ է կատարում GPIO- ի յուրաքանչյուր տիպը եւ դրանց սահմանափակումները:

02-ը 09

GPIO- ն

GPIO կապոցները թվագրված են 1-ից 40 եւ կարող են խմբավորվել տարբեր գործառույթների ներքո: Ռիչարդ Սավիլը

Նախ, եկեք տեսնենք GPIO- ի ամբողջությունը: Գնդիկները կարող են նույնը նայել, բայց բոլորն էլ տարբեր գործառույթներ ունեն: Վերոնշյալ պատկերը ցույց է տալիս այս գործառույթները տարբեր գույներով, որոնք մենք կբացատրենք հետեւյալ քայլերում:

Յուրաքանչյուր գիծ համարվում է 1-ից 40-ը, սկսած ներքեւի ձախ մասում: Սրանք ֆիզիկական պին թվեր են, սակայն կան նաեւ թվային / մակնշման կոնվենցիաները, ինչպիսիք են «BCM», որոնք օգտագործվում են կոդ գրելու ժամանակ:

03-ը 09

Power & Ground

The Raspberry Pi- ն առաջարկում է բազմաթիվ ուժեր եւ հողակտորներ: Ռիչարդ Սավիլը

Կարեւորը կարմիր է, 3.3V կամ 5V համարանիշով պիտակավորված «3» կամ «5» պիտակները:

Այս կապանքները հնարավորություն են տալիս ուղղակիորեն ուղարկել սարքը մի սարք, առանց որեւէ օրենսգրքի անհրաժեշտության: Դրանք էլ չեն դարձնում:

Կան 2 էլեկտրական ռելսեր `3,3 վոլտ եւ 5 վոլտ: Այս հոդվածի համաձայն, 3.3V երկաթուղին սահմանափակվում է 50 մա ընթացիկ վիճակահանությամբ, իսկ 5V երկաթուղին կարող է ապահովել այն, ինչ ներկայումս կարող է մնալ ձեր էլեկտրամատակարարումից, այն բանից հետո, երբ Պիին վերցրեց այն, ինչ անհրաժեշտ է:

Կարեւորը շագանակագույնն են գետնին կապում (GND): Այս կապոցները հենց այն են, ինչ ասում են `հենակային կապոցներ, որոնք էլեկտրոնիկայի ցանկացած նախագծի կարեւոր մասն են:

(5V GPIO կապում են ֆիզիկական համարները 2 եւ 4): 3.3V GPIO կապում են ֆիզիկական թվերը 1 եւ 17: Հիմնական GPIO կապում են ֆիզիկական համարներ 6, 9, 14, 20, 25, 30, 34 եւ 39)

04-ին 09

Մուտք / ելքային կապեր

Ներածման եւ ելքային կապում թույլ են տալիս միացնել այնպիսի սարքավորումները, ինչպիսիք են սենսորները եւ անջատիչները: Ռիչարդ Սավիլը

Կանաչ կապաներն այն են, ինչ ես կոչում եմ «ընդհանուր» մուտքային / ելքային կապում: Դրանք կարող են հեշտությամբ օգտագործվել որպես միջոցներ կամ արդյունքներ, առանց որեւէ մտահոգության, որը կխախտի այլ գործառույթներ, ինչպիսիք են I2C, SPI կամ UART:

Սրանք այն կապոցները, որոնք կարող են իշխանություն ուղարկել LED, buzzer կամ այլ բաղադրիչներով կամ օգտագործել որպես սենսորների, անջատիչների կամ այլ մուտքային սարքի ընթերցման միջոց:

Այս կապանքների թողունակության հզորությունը 3.3V է: Յուրաքանչյուր կպչուն չպետք է գերազանցի ընթացիկ 16 մմ-ը, կամ ընկնավորումը կամ աղբյուրը, եւ GPIO- ի կապանքների ամբողջ փաթեթը չպետք է գերազանցի մեկից ավելի անգամ, քան 50 մմ-ը: Սա կարող է սահմանափակ լինել, այնպես որ դուք կարող եք ստեղծագործել որոշակի ծրագրերում:

(Generic GPIO կապոցները ֆիզիկական թվեր են, 7, 11, 12, 13, 15, 16, 18, 22, 29, 31, 32, 33, 35, 36, 37, 38 եւ 40)

05-ից 09-ը

I2C կապում

I2C- ն թույլ է տալիս միացնել այլ սարքեր ձեր Pi- ում `ընդամենը մի քանի կապում: Ռիչարդ Սավիլը

Դեղին, մենք ունենք I2C կապում: I2C- ը հաղորդակցման արձանագրություն է, որը պարզ կերպով թույլ է տալիս սարքերին հաղորդակցվել Raspberry Pi- ի հետ: Այս կապանքները կարող են օգտագործվել նաեւ որպես «ընդհանուր» GPIO կապում:

I2C- ի օգտագործման լավ օրինակն այն է, որ շատ հայտնի է MCP23017 նավահանգիստների արտահանող chip, որը կարող է ձեզ ավելի շատ մուտքային / ելքային կապեր տալ այս I2C արձանագրության միջոցով:

(I2C GPIO կապում են ֆիզիկական PIN համարները 3 եւ 5)

06-ից 09-ը

UART (Serial) կապում

Միացրեք ձեր Pi- ն, UART- ի կապակցությամբ մի շարք կապակցությամբ: Ռիչարդ Սավիլը

Մոխրագույնում են UART- ն: Այս կապանքները եւս մեկ հաղորդակցության պրոցես են, որը սերիական կապեր է առաջարկում եւ կարող է օգտագործվել նաեւ որպես «ընդհանուր» GPIO մուտքագրումներ / արդյունքներ:

Իմ սիրելի օգտագործումը UART- ի համար սերիական կապ է իմ Pi- ից իմ համակարգչին USB- ի միջոցով: Դա կարելի է հասնել, օգտագործելով հավելյալ ցուցանակներ կամ պարզ մալուխներ եւ հեռացնում է ձեր էկրանին կամ ինտերնետ կապին անհրաժեշտությունը:

(UART GPIO կապոցները ֆիզիկական pin համարներ 8 եւ 10)

07-ից 09-ը

SPI կապում

The SPI Pins- ը մեկ այլ օգտակար հաղորդակցության արձանագրություն է: Ռիչարդ Սավիլը

Վարդագույն , մենք ունենք SPI կապում: SPI- ը ինտերֆեյսային ավտոբուս է, որը տվյալների փոխանցում է Pi- ի եւ այլ սարքավորումների / ծայրամասերի միջեւ: Այն սովորաբար օգտագործվում է սարքերի chaining, ինչպիսիք են LED լուսաբանումը կամ ցուցադրումը:

Ինչպես մյուսները, այս կապանքները կարող են օգտագործվել նաեւ որպես «ընդհանուր» GPIO մուտքագրումներ / արդյունքներ:

(SPI GPIO սղոցները 19, 21, 23, 24 եւ 26 ֆիզիկական թվային համարները)

08-ը 09

DNC կապում

Ոչինչ այստեղ տեսնելու համար - DNC- ն կապում է ոչ մի գործառույթ: Ռիչարդ Սավիլը

Վերջապես երկու կապոց կապույտ են, որոնք ներկայումս պիտակավորված են DNC- ով, որը հանդես է գալիս «Մի միացրեք»: Սա կարող է փոխվել ապագայում, եթե Ազնվամորու Պի հիմնադրամը փոխում է վահանակները / ծրագրերը:

(DNC GPIO կապոցները ֆիզիկական pin համարները 27 եւ 28)

09-ին 09

GPIO համարանիշային կոնվենցիաները

The Portsplus- ն հարմար գործիք է GPIO PIN- ի համարները ստուգելու համար: Ռիչարդ Սավիլը

GPIO- ի հետ կոդավորելու դեպքում դուք ունեք ընտրություն GPIO գրադարան ներմուծելու երկու եղանակներից մեկը `BCM կամ BOARD- ը:

Նախընտրելի տարբերակն է GPIO BCM: Սա Broadcom- ի համարակալման կոնվենցիա է, եւ ես գտնում եմ, որ այն ավելի լայնորեն օգտագործվում է ծրագրերի եւ ապարատային հավելումների միջոցով:

Երկրորդ տարբերակն է GPIO BOARD- ը: Այս մեթոդը օգտագործում է ֆիզիկական պին-համարները, փոխարենը, հարմար է հաշիվը հաշվելիս, բայց դուք կգտնեք, որ այն ավելի քիչ է օգտագործվում նախագծային օրինակներում:

GPIO ռեժիմը սահմանվում է GPIO գրադարանի ներմուծման ժամանակ.

Ներմուծել որպես BCM:

ներմուծումը RPi.GPIO որպես GPIO GPIO.setmode (GPIO.BCM)

Ներմուծել որպես BOARD:

ներմուծումը RPi.GPIO որպես GPIO GPIO.setmode (GPIO.BOARD)

Այս երկու մեթոդները հենց նույն գործն են անում, պարզապես թվային նախապատվության խնդիր է:

Ես պարբերաբար օգտվում եմ հարմար GPIO պիտակներից, ինչպիսիք են RasPiO Portsplus (պատկերված), ստուգելու համար, թե որ կապում եմ կապող լարերը: Մի կողմը ցույց է տալիս BCM- ի համարակալման կոնվենցիան, մյուսը, BOARD- ը, այնպես որ դուք ծածկված եք գտնելու որեւէ նախագծ: