01 ze dne 09
Úvod do pinů maliny Pi
Výraz "GPIO" (všeobecný vstupní výstup) není výhradní pro Raspberry Pi. Vstupní a výstupní kolíky lze nalézt na většině mikrokontrolérů, jako je Arduino, Beaglebone a další.
Když mluvíme o GPIO s Raspberry Pi, mluvíme o dlouhém bloku kolíků v levém horním rohu desky. Starší modely měly 26 kolíků, nicméně většina z nás bude používat současný model s 40.
K těmto pinům můžete připojit součásti a další hardwarová zařízení a pomocí kódu řídit, co dělají. Je to důležitá součást Raspberry Pi a skvělý způsob, jak se naučit o elektronice.
Po několika projektech softwaru se pravděpodobně ocitnete v experimentech s těmito kolíky, kteří chtějí mixovat váš kód s hardwarem, aby se věci staly v reálném životě.
Tento proces může být zastrašující, pokud jste nová scéna a vzhledem k tomu, že jeden falešný krok může poškodit váš Raspberry Pi, je pochopitelné, že je to nervózní oblast pro začátečníky k prozkoumání.
Tento článek vysvětlí, co dělá každý typ pin GPIO a jejich omezení.
02 ze dne 09
GPIO
Nejprve se podívejme na GPIO jako celek. Piny mohou vypadat stejně, ale všechny mají různé funkce. Výše uvedený obrázek zobrazuje tyto funkce v různých barvách, které vysvětlíme v následujících krocích.
Každý kolík je očíslován od 1 do 40, začínající vlevo dole. Jedná se o fyzická čísla pinů, existují však také konvence číslování / označování, jako například "BCM", které se používají při psaní kódu.
03 ze dne 09
Napájení a zem
Zvýrazněná červená jsou napájecí kolíky označené "3" nebo "5" pro 3.3V nebo 5V.
Tyto kolíky umožňují odesílat napájení přímo na zařízení bez potřeby jakéhokoli kódu. Neexistuje způsob, jak je vypnout.
K dispozici jsou 2 napájecí lišty - 3,3 V a 5 V. Podle tohoto článku je 3.3V kolejnice omezena na 50mA proudu proudu, zatímco 5V kolejnice může poskytnout jakoukoli současnou kapacitu, která zůstala nad vaším napájením poté, co Pi vzala to, co potřebuje.
Zvýrazněná hnědá jsou zemnící kolíky (GND). Tyto kolíky jsou přesně to, co říkají - zemní kolíky - které jsou důležitou součástí každého projektu elektroniky.
(5V GPIO kolíky jsou fyzická čísla 2 a 4. 3.3V GPIO kolíky jsou fyzická čísla 1 a 17. Zemní čepy GPIO jsou fyzická čísla 6, 9, 14, 20, 25, 30, 34 a 39)
04 ze dne 09
Vstupní / výstupní čepy
Zelené kolíky jsou to, co nazývám "generické" vstupní / výstupní kolíky. Mohou být snadno použity jako vstupy nebo výstupy bez obav o střetnutí se s dalšími funkcemi, jako je I2C, SPI nebo UART.
Jedná se o kolíky, které mohou odeslat napájení na LED, bzučák nebo jiné součásti, nebo mohou být použity jako vstup pro čtení snímačů, přepínačů nebo jiného vstupního zařízení.
Výstupní výkon těchto kolíků je 3,3V. Každý kolík by neměl překročit 16mA proudu, ať už se potopí nebo získává, a celá sada pinů GPIO by neměla překročit více než 50mA. To může být restriktivní, takže v některých projektech budete možná muset být kreativní.
(Obecné GPIO kolíky jsou fyzická čísla 7, 11, 12, 13, 15, 16, 18, 22, 29, 31, 32, 33, 35, 36, 37, 38 a 40)
05 ze dne 09
I2C kolíky
Ve žluté barvě máme kolíky I2C. I2C je komunikační protokol, který jednoduše umožňuje zařízením komunikovat s Raspberry Pi. Tyto čepy mohou být také použity jako "generické" kolíky GPIO.
Dobrým příkladem použití I2C je velmi oblíbený MCP23017 port expander chip, který vám může poskytnout více vstupních / výstupních pinů prostřednictvím tohoto protokolu I2C.
(Kolíky I2C GPIO jsou fyzická čísla pinů 3 a 5)
06 z 09
UART (sériové) kolíky
Šedě jsou špendlíky UART. Tyto kolíky jsou další komunikační protokoly, které nabízejí sériová připojení a mohou být také použity jako "generické" GPIO vstupy / výstupy.
Moje oblíbené použití pro UART je umožnit sériové připojení z mého Pi k mému notebooku přes USB. Toho lze dosáhnout pomocí přídavných desek nebo jednoduchých kabelů a odstraňuje potřebu obrazovky nebo připojení k internetu pro přístup k vašemu Pi.
(Piny UART GPIO jsou fyzické pinové čísla 8 a 10)
07 ze dne 09
SPI kolíky
V růžové barvě máme SPI kolíky. SPI je sběrnice rozhraní, která odesílá data mezi Pi a jiným hardwarovým či periferním zařízením. Obvykle se používá pro řetězení zařízení, jako je matice LED nebo displej.
Stejně jako ostatní mohou být tyto kolíky použity také jako "generické" GPIO vstupy / výstupy.
(Pin SPI GPIO jsou fyzické pinové čísla 19, 21, 23, 24 a 26)
08 z 09
DNC pinů
Nakonec jsou dva kolíky v modré barvě, které jsou v současné době označeny jako DNC, což znamená "Do not Connect". To se může v budoucnu změnit, pokud Raspberry Pi Foundation změní desky / software.
(Piny DNC GPIO jsou fyzické pinové čísla 27 a 28)
09 z 09
Konvence číslování GPIO
Při kódování s GPIO máte možnost importovat knihovnu GPIO jedním ze dvou způsobů - BCM nebo BOARD.
Možnost, kterou preferuji, je GPIO BCM. Jedná se o konvenci o číslování Broadcom a zjistím, že je používán častěji v rámci projektů a hardwarových doplňků.
Druhou možností je GPIO BOARD. Tato metoda používá čísla fyzických pinů, což je užitečné při počítání kolíků, ale zjistíte, že je v příkladech projektu používáno méně.
Režim GPIO je nastaven při importu knihovny GPIO:
Importovat jako BCM:
import RPi.GPIO jako GPIO GPIO.setmode (GPIO.BCM)Importovat jako BOARD:
import RPi.GPIO jako GPIO GPIO.setmode (GPIO.BOARD)Obě tyto metody dělají přesně stejnou práci, je to jen otázka číselné preference.
Pravidelně využívám praktické GPIO štítky, jako je RasPiO Portsplus (na obrázku), abych zjistil, které kolíky připojuji i k drátům. Jedna strana zobrazuje konvenci BCM číslování, druhá ukazuje BOARD - takže jste pokrytý pro každý projekt, který najdete.