A Vadaspark Pi GPIO bemutatója

01/09

Bevezetés a Málna Málna csapjaihoz

A Raspberry Pi GPIO. Richard Saville

A GPIO (General Purpose Input Output) kifejezés nem kizárólagos a Raspberry Pi esetében. Bemeneti és kimeneti tűket talál a legtöbb mikrokontrolleren, mint például az Arduino, a Beaglebone és így tovább.

Amikor GPIO-ral beszélünk a Raspberry Pi-ral, akkor a táblák bal felső sarkában lévő dugók hosszú blokkjára utalunk. A régebbi modellek 26 pólusúak voltak, de legtöbben 40-es modellt használnak.

Ezeket a tűket csatlakoztathatja komponensekhez és egyéb hardvereszközökhöz, és kódot használhat annak ellenőrzésére, hogy mit csinálnak. Ez a Raspberry Pi fontos része, és kiváló módja annak, hogy megtanulják az elektronikát.

Néhány szoftverprojekt után valószínűleg megtalálod magad kísérletezni ezekkel a csapdákkal, akik szívesen keverik össze a kódot a hardverrel, hogy a dolgok "való életben" történjenek.

Ez a folyamat lehet megfélemlítő, ha új vagy a jelenetre, és figyelembe véve, hogy egy hamis lépés károsíthatja a Raspberry Pi-t, akkor érthető, hogy ez egy idegi terület a kezdők számára.

Ez a cikk megmagyarázza, hogy milyen típusú GPIO-tű és korlátozásait.

02/09

A GPIO

A GPIO csapok száma 1-40, és különböző funkciók szerint csoportosíthatók. Richard Saville

Először nézzük meg a GPIO egészét. A csapok ugyanúgy kinézhetnek, de mindegyiknek különböző funkciói vannak. A fenti képen ezek a funkciók különböző színekben láthatók, amelyeket a következő lépésekben ismertetünk.

Minden tű számozása 1-től 40-ig kezdődik a bal alsó sarokban. Ezek a fizikai számok, de vannak olyan számozási / címkézési konvenciók is, mint például a "BCM", amelyek a kód írásakor használatosak.

03/09

Teljesítmény és föld

A Raspberry Pi többféle energiát és őrölt csapokat kínál. Richard Saville

Kivilágított piros, a 3.3 vagy 5V jelű "3" vagy "5" jelű hatalom.

Ezek a csapok lehetővé teszik, hogy közvetlenül küldjön áramot egy eszközre anélkül, hogy bármilyen kódra lenne szükség. Semmi sem lehet ezeket kikapcsolni.

2 teljesítménysín van - 3,3 volt és 5 volt. E cikk szerint a 3.3V-os sín 50mA áramcsúcsra korlátozódik, míg az 5V-os sín biztosítja, hogy az áramellátás után a jelenlegi kapacitás maradjon a Pi után.

Kiemelt barna a földi csapok (GND). Ezek a csapok pontosan azok, amiket mondanak - földi tüskék - amelyek az elektronikai projektek létfontosságú részét képezik.

(5V GPIO pólusok fizikai számok 2 és 4. 3.3V GPIO pins fizikai számok 1 és 17. A föld GPIO pins fizikai számok 6, 9, 14, 20, 25, 30, 34 és 39)

04/09

Bemeneti / kimeneti csapok

A bemeneti és kimeneti tűk lehetővé teszik a hardverek, például az érzékelők és a kapcsolók csatlakoztatását. Richard Saville

A zöld tüskék az úgynevezett "generikus" input / output tüskék. Ezek könnyen használható bemenetekként vagy kimenetekként, anélkül, hogy aggódnának más funkciók, például az I2C, az SPI vagy az UART összeütközése miatt.

Ezek azok a csapok, amelyek képesek LED-et, hangjelzőt vagy egyéb komponenseket táplálni, vagy bemenetként szolgálhatnak az érzékelők, a kapcsolók vagy más bemeneti eszközök olvasásához.

Ezeknek a csapoknak a kimeneti teljesítménye 3,3 V. Minden tű nem haladhatja meg a 16 mA áramot, akár süllyedni, akár beszerzésre, és a GPIO érintkezők teljes hossza nem haladhatja meg az 50 mA-t. Ez korlátozó lehet, ezért bizonyos projektekben kreatívnak kell lenni.

(A generikus GPIO érintkezők fizikai számok: 7, 11, 12, 13, 15, 16, 18, 22, 29, 31, 32, 33, 35, 36, 37, 38 és 40)

05/09

I2C csapok

Az I2C lehetővé teszi, hogy más eszközöket csatlakoztasson a Pi-hoz csak néhány tűvel. Richard Saville

Sárga színben van az I2C csap. Az I2C olyan kommunikációs protokoll, amely egyszerűen lehetővé teszi az eszközök számára, hogy kommunikáljanak a Raspberry Pi-vel. Ezeket a csapokat szintén használhatjuk általános "GPIO" tűként.

Az I2C használatának jó példája a nagyon népszerű MCP23017 port bővítő chip, amely több I / O protokollon keresztül több bemeneti / kimeneti csatlakozót biztosít.

(Az I2C GPIO csapok a 3-as és 5-ös fizikai számok)

06/09

UART (soros) csapok

Csatlakoztasson Pi-t egy soros kapcsolathoz az UART-csapokhoz. Richard Saville

A szürke, az UART tüskék. Ezek a csapok egy újabb kommunikációs protokoll, amely soros kapcsolatokat kínál, és használhatják a generikus GPIO bemenetek / kimenetek is.

Kedvenc UART használatom, hogy lehetővé tegyem soros kapcsolatot Pi-ból a laptopomhoz az USB-n keresztül. Ez elérhető kiegészítő kártyákkal vagy egyszerű kábellel, és eltávolítja a képernyő vagy internet kapcsolat igényét a Pi eléréséhez.

(Az UART GPIO pins a 8-as és 10-es fizikai számok)

07, 09

SPI csapok

Az SPI Pins - egy másik hasznos kommunikációs protokoll. Richard Saville

A rózsaszínű , van az SPI csap. Az SPI olyan interfész-busz, amely adatokat továbbít a Pi és más hardverek / perifériák között. Ezt általában olyan eszközök láncolásához használják, mint a LED mátrix vagy kijelző.

A többihez hasonlóan ezeket a tüskéket "generikus" GPIO bemenetekként is használhatjuk.

(Az SPI GPIO csapok fizikai számok a 19., 21., 23., 24. és 26. számmal)

08, 09

DNC csapok

Semmi sem látni itt - a DNC csapok nem szolgálnak semmilyen funkciót. Richard Saville

Végül két kék színű tű van, amelyek jelenleg DNC-ként jelennek meg, ami a "Do not Connect" kifejezést jelöli. Ez változhat a jövőben, ha a Raspberry Pi Alapítvány megváltoztatja a táblákat / szoftvert.

(A DNC GPIO csapok a 27-es és 28-as fizikai számok)

09. 09. sz

GPIO számozási egyezmények

A Portsplus egy praktikus eszköz a GPIO PIN számok ellenőrzéséhez. Richard Saville

A GPIO kódolásakor a GPIO könyvtár kétféleképpen - BCM vagy BOARD - importálható.

Az előnyösebb választás a GPIO BCM. Ez a Broadcom számozási egyezmény, és úgy vélem, hogy gyakrabban használják a projektek és a hardver kiegészítők között.

A második lehetőség a GPIO BOARD. Ez a módszer inkább a fizikai számokat használja, ami hasznos a számlálók számolásánál, de kevésbé fogják használni a projekt példáiban.

GPIO-mód van beállítva a GPIO könyvtár importálásakor:

Importálás BCM-ként:

Import RPi.GPIO GPIO GPIO.setmode (GPIO.BCM)

BOARD importálás:

Import RPi.GPIO GPIO GPIO.setmode (GPIO.BOARD)

Mindkét módszer pontosan ugyanazt a munkát végzi, csak számozási preferencia kérdése.

Rendszeresen használom a praktikus GPIO címkéző táblákat, mint például a RasPiO Portsplus (képen), hogy ellenőrizze, melyik tűket csatlakoztatom. Az egyik oldalon látható a BCM számozási egyezmény, a másik pedig a BOARD-ot mutatja - tehát minden olyan projektre vonatkozik, amelyet megtalál.