Prehliadka Raspberry Pi GPIO

01 z 09

Úvod do pinikov maliny Pi

Raspberry Pi GPIO. Richard Saville

Výraz "GPIO" (všeobecný vstupný výstup) nie je výlučne pre Raspberry Pi. Vstupné a výstupné kolíky možno nájsť na väčšine mikrokontrolérov, ako je Arduino, Beaglebone a ďalšie.

Keď hovoríme o GPIO s Raspberry Pi, hovoríme o dlhom bloku kolíkov v ľavom hornom rohu dosky. Staršie modely mali 26 pinov, avšak väčšina z nás bude používať súčasný model s hodnotou 40.

Môžete pripojiť komponenty a iné hardvérové ​​zariadenia k týmto kolíkom a použiť kód na ovládanie toho, čo robia. Je to dôležitá súčasť Raspberry Pi a výborný spôsob, ako sa dozvedieť o elektronike.

Po niekoľkých softvérových projektoch sa pravdepodobne ocitnete v experimentoch s týmito kolíkmi, ktorí túžia mixovať váš kód s hardvérom, aby sa veci stali "skutočným životom".

Tento proces môže byť zastrašujúci, ak ste na scéne nový, a vzhľadom na to, že jeden falošný ťah môže poškodiť vaše Raspberry Pi, je pochopiteľné, že je to nervózny priestor pre začiatočníkov.

Tento článok vysvetlí, čo robí každý typ pinov GPIO a ich obmedzenia.

02 z 09

GPIO

Kolíky GPIO sú očíslované 1 až 40 a môžu byť zoskupené pod rôznymi funkciami. Richard Saville

Po prvé, pozrite sa na GPIO ako celok. Kolíky môžu vyzerať rovnako, ale všetky majú rôzne funkcie. Obrázok vyššie ukazuje tieto funkcie v rôznych farbách, ktoré vysvetlíme v nasledujúcich krokoch.

Každý kolík je očíslovaný od 1 do 40, začínajúci vľavo dole. Toto sú fyzické čísla pinov, existujú však aj konvencie číslovania / označovania, ako napríklad "BCM", ktoré sa používajú pri písaní kódu.

03 z 09

Napájanie a zem

Raspberry Pi ponúka viac elektrických a zemných kolíkov. Richard Saville

Zvýraznené červené sú napájacie kolíky označené "3" alebo "5" pre 3.3V alebo 5V.

Tieto kolíky vám umožňujú priamo posielať napájanie zariadenia bez potreby akéhokoľvek kódu. Nijaký spôsob, ako ich vypnúť.

K dispozícii sú 2 napájacie koľajnice - 3,3 voltov a 5 voltov. Podľa tohto článku je 3.3V koľajnica obmedzená na 50mA prúdový ťah, zatiaľ čo 5V koľajnica môže poskytnúť akúkoľvek aktuálnu kapacitu zostáva z vášho napájania potom, čo Pi vzal to, čo potrebuje.

Zvýraznené hnedé sú zemné kolíky (GND). Tieto kolíky sú presne to, čo hovoria - zemné kolíky - ktoré sú dôležitou súčasťou akéhokoľvek elektronického projektu.

(5V GPIO kolíky sú fyzické čísla 2 a 4. 3.3V GPIO kolíky sú fyzické čísla 1 a 17. Zemné kolíky GPIO sú fyzické čísla 6, 9, 14, 20, 25, 30, 34 a 39)

04 z 09

Vstupné / výstupné kolíky

Vstupné a výstupné kolíky umožňujú pripojiť hardvér, ako sú senzory a prepínače. Richard Saville

Zelené kolíky sú to, čo nazývam "generické" vstupné / výstupné kolíky. Môžu byť ľahko použité ako vstupy alebo výstupy bez akýchkoľvek starostí o konflikty s inými funkciami ako I2C, SPI alebo UART.

Jedná sa o kolíky, ktoré posielajú napájanie na LED, bzučiak alebo iné komponenty, alebo sa môžu použiť ako vstup na čítanie senzorov, prepínačov alebo iných vstupných zariadení.

Výstupný výkon týchto kolíkov je 3,3V. Každý pin by nemal prekročiť 16mA prúdu, a to buď potopením alebo zdrojom, a celá sada pinov GPIO by nemala prekročiť viac ako 50mA naraz. Môže to byť reštriktívny, takže v niektorých projektoch budete možno musieť byť kreatívny.

(Generické čipy GPIO sú fyzické čísla 7, 11, 12, 13, 15, 16, 18, 22, 29, 31, 32, 33, 35, 36, 37, 38 a 40)

05 z 09

I2C kolíky

I2C vám umožní pripojiť ďalšie zariadenia k vášmu pi iba dvoma pinmi. Richard Saville

V žltej farbe máme kolíky I2C. I2C je komunikačný protokol, ktorý jednoducho umožňuje zariadeniam komunikovať s Raspberry Pi. Tieto kolíky možno použiť aj ako "generické" pruhy GPIO.

Dobrým príkladom použitia I2C je veľmi populárny čip MCP23017 port expander, ktorý vám prináša viac vstupných a výstupných pinov prostredníctvom tohto protokolu I2C.

(Kolíky I2C GPIO sú fyzické čísla pinov 3 a 5)

06 z 09

UART (sériové) kolíky

Pripojte sa k Pi cez sériové spojenie pomocou kolíkov UART. Richard Saville

V šedej farbe sú kolíky UART. Tieto kolíky sú iný komunikačný protokol, ktorý ponúka sériové spojenia a môžu byť tiež použité ako "generické" GPIO vstupy / výstupy.

Moje obľúbené použitie pre UART je umožniť sériové pripojenie z môjho Pi k môjmu notebooku cez USB. To sa dá dosiahnuť pomocou prídavných dosiek alebo jednoduchých káblov a odstráni potrebu obrazovky alebo pripojenia k internetu, aby ste mali prístup k Pi.

(Kolíky UART GPIO sú fyzické čísla pinov 8 a 10)

07 z 09

SPI kolíky

SPI kolíky - ďalší užitočný komunikačný protokol. Richard Saville

V ružovej farbe máme SPI kolíky. SPI je zbernica rozhrania, ktorá odosiela dáta medzi Pi a iným hardvérom alebo perifériou. Je bežne používaný pre reťazovanie zariadení, ako je napríklad LED matrica alebo displej.

Rovnako ako ostatné môžu byť tieto kolíky tiež použité ako "generické" GPIO vstupy / výstupy.

(Pin SPI GPIO sú fyzické čísla kolíkov 19, 21, 23, 24 a 26)

08 z 09

DNC kolíky

Nič tu nie je vidieť - piny DNC nemajú žiadnu funkciu. Richard Saville

Nakoniec sú dva kolíky v modrej farbe, ktoré sú v súčasnosti označené ako DNC, čo znamená "Do not Connect". To sa môže v budúcnosti zmeniť v prípade, že nadácia Raspberry Pi Foundation zmení dosky / softvér.

(Piny DNC GPIO sú fyzické čísla pinov 27 a 28)

09 z 09

GPIO číslovacie konvencie

Portsplus je užitočný nástroj na kontrolu čísiel pinov GPIO. Richard Saville

Pri kódovaní s GPIO máte možnosť importovať knižnicu GPIO jedným z dvoch spôsobov - BCM alebo BOARD.

Možnosť, ktorú preferujem, je GPIO BCM. Toto je konvencia číslovania spoločnosti Broadcom a zistím, že sa používa bežnejšie v rámci projektov a hardvérových doplnkov.

Druhou možnosťou je GPIO BOARD. Táto metóda používa namiesto toho fyzické čísla kolíkov, čo je užitočné pri započítaní kolíkov, ale v príkladoch projektov sa zistí, že sa používajú menej.

Režim GPIO je nastavený pri importovaní knižnice GPIO:

Importovať ako BCM:

import RPi.GPIO ako GPIO GPIO.setmode (GPIO.BCM)

Importovať ako BOARD:

import RPi.GPIO ako GPIO GPIO.setmode (GPIO.BOARD)

Obe tieto metódy robia presne rovnakú prácu, je to len otázka číselnej preferencie.

Pravidelne používam praktické GPIO štítky, ako je RasPiO Portsplus (na obrázku), aby som skontroloval, ktoré kolíky pripájam drôty taky. Jedna strana zobrazuje konvenciu o číslovaní BCM, druhá ukazuje BOARD - takže ste pokrytý akýmkoľvek projektom, ktorý nájdete.