A Tour of GPIO Raspberry Pi

01 saka 09

Pengenalan Pins Raspberry Pi

Rasio GPIO. Richard Saville

Istilah 'GPIO' (Input Umum Tujuan Output) ora eksklusif kanggo Raspberry Pi. Pins input lan output bisa ditemokake ing paling mikrokontroler kayata Arduino, Beaglebone lan liyane.

Nalika kita pirembagan babagan GPIO karo Raspberry Pi, kita lagi ngrujuk menyang blok long saka pin ing pojok kiwa ndhuwur papan. Model lawas duwe 26 pin, nanging akeh bakal nggunakake model saiki kanthi 40.

Sampeyan bisa nyambung komponen lan perangkat keras liyane menyang lencana iki, lan nggunakake kode kanggo ngontrol apa sing dilakoni. Iku bagéyan penting saka Raspberry Pi lan cara sing apik kanggo sinau babagan electronics.

Sawise sawetara proyèk piranti lunak, sampeyan bakal nemokake dhewe nyoba nganggo lencana iki, semangat kanggo nyampur kode karo hardware kanggo nggawe samubarang masalah ing 'urip nyata'.

Proses iki bisa intimidating yen sampeyan anyar ing adegan, lan ngelingi yen siji pamindhahan palsu bisa ngrusak Raspberry Pi, iku bisa dimangerteni yen ana wilayah gemeter kanggo pemula kanggo njelajah.

Artikel iki bakal nerangake apa saben jinis pin GPIO lan watesan.

02 saka 09

GPIO

PIN GPIO cacah 1 nganti 40, lan bisa dikelompokake miturut fungsi sing beda-beda. Richard Saville

Pisanan, ayo njupuk tampilan ing GPIO minangka wutuh. PIN bisa katon padha nanging kabeh duwe fungsi beda. Gambar ing ndhuwur nuduhake fungsi kasebut ing macem-macem werna sing bakal kita jelasake ing langkah-langkah ing ngisor iki.

Saben pin diwatesi saka 1 nganti 40 diwiwiti ing sisih kiwa ngisor. Iki minangka nomer pin fisik, nanging ana uga penomoran / penamaan labeling kayata 'BCM' sing digunakake nalika nulis kode.

03 saka 09

Power & Ground

Raspberry Pi nawakake macem-macem daya lan lemah pin. Richard Saville

Dituduhake abang, ana daya pin label '3' utawa '5' kanggo 3.3V utawa 5V.

PIN iki ngidini sampeyan langsung ngirim daya menyang piranti tanpa perlu kode apa wae. Ora ana cara kanggo nguripake iki.

Ana 2 ril kekuwatan - 3,3 volt lan 5 volt. Miturut artikel iki, gerbong 3.3V diwatesi karo tarik saiki 50mA, dene ril 5V bisa nyedhiyani kapasitas saiki apa wae sing ditinggalake saka sumber daya sampeyan sawise Pi wis njupuk apa sing dibutuhake.

Disenengi coklat yaiku lencana lemah (GND). Lencana iki persis apa sing diarani - lencana lemah - sing dadi bagian penting saka proyek elektronika apa wae.

(GP 5 pin GPIO nomer fisik 2 lan 4. 3.3 GPIO pin sing nomer fisik 1 lan 17. PIN GPIO lemah yaiku nomer fisik 6, 9, 14, 20, 25, 30, 34 lan 39)

04 saka 09

Input / Output Pins

Patch Input lan Output ngidini sampeyan nyambungake hardware kayata sensor lan switch. Richard Saville

Pucuk ijo iku jeneng lindhu input / output 'generik'. Iki bisa gampang digunakake minangka input utawa output tanpa kuwatir babagan clashing karo fungsi liyane kayata I2C, SPI utawa UART.

Iki minangka lencana sing bisa ngirim daya menyang LED, buzzer, utawa komponen liyane, utawa digunakake minangka input kanggo maca sensor, switch utawa piranti input liyane.

Daya keluaran saka lencana iki yaiku 3.3V. Saben pin kudu ora ngluwihi 16mA saiki, entuk sinking utawa sumber, lan kabeh paket GPIO ora kudu ngluwihi luwih saka 50mA ing siji wektu. Iki bisa mbatesi, mula sampeyan kudu kreatif ing proyek tartamtu.

(PIN GPI Generik nomer 7, 11, 12, 13, 15, 16, 18, 22, 29, 31, 32, 33, 35, 36, 37, 38, lan 40)

05 saka 09

I2C Pins

I2C ngidini sampeyan nyambungake piranti liyane menyang Pi karo mung sawetara pin. Richard Saville

Ing werna kuning, awake dhewe duwe I2C. I2C minangka protokol komunikasi sing kanthi prasaja ngidini piranti bisa komunikasi karo Raspberry Pi. PIN iki uga bisa digunakake minangka 'generik' pin GPIO.

Conto apik nggunakake I2C yaiku chip expander MCP23017 sing paling populer, sing bisa menehi pin input / output liwat protokol I2C iki.

(I2C GPIO pins sing nomer pin fisik 3 lan 5)

06 saka 09

UART (Serial) Pins

Sambungake menyang Pi liwat sambungan serial karo lencana UART. Richard Saville

Ing werna abu-abu, ana pin UART. Pin iki minangka protokol komunikasi liyane sing menehi sambungan serial, lan uga bisa digunakake minangka input / output GPIO 'generik'.

Panggunaan favoritku kanggo UART yaiku ngaktifake sambungan serial saka Pi sandi kanggo laptop liwat USB. Iki bisa digayuh kanthi nggunakake papan tambahan utawa kabel sing prasaja lan mbusak kebutuhan kanggo layar utawa sambungan internet kanggo ngakses Pi.

(UART GPIO pins sing nomer pin fisik 8 lan 10)

07 saka 09

SPI Pins

SPI Pins - protokol komunikasi migunani liyane. Richard Saville

Ing Jambon , kita duwe SPI pin. SPI yaiku sawijining bus antarmuka sing ngirim data antarane Pi lan hardware / peripheral liyane. Iku umum digunakake kanggo chaining piranti kayata matriks LED utawa tampilan.

Kaya wong, lencana iki uga bisa digunakake minangka input / output GPIO 'generik'.

(PIN SPI GPIO nomer pin fisik 19, 21, 23, 24 lan 26)

08 saka 09

DNC Pins

Boten ningali ing kene - pin DNC ora nduweni fungsi. Richard Saville

Pungkasane ana loro lencana biru sing, saiki, dicap minangka DNC sing singkatan kanggo 'Aja Sambungake'. Iki bisa diganti ing mangsa ngarep yen Yayasan Raspberry Pi ngowahi papan / piranti lunak.

(DNC GPIO pins sing nomer pin fisik 27 lan 28)

09 saka 09

Konvènsi Penomoran GPIO

Portsplus minangka alat sing praktis kanggo mriksa nomer PIN GPIO. Richard Saville

Nalika nganggo GPIO, sampeyan duwe pilihan kanggo ngimpor perpustakaan GPIO ing salah siji saka rong cara - BCM utawa BOARD.

Pilihanku luwih saka iku GPIO BCM. Iki minangka konvènsi penomoran Broadcom lan aku nemokake iku luwih umum ing proyèk lan piranti tambahan.

Pilihan kapindho yaiku GPIO BOARD. Cara iki nggunakake nomer pin fisik, sing trep nalika ngitung lencana, nanging sampeyan bakal nemokake iku kurang digunaake ing conto proyek.

Mode GPIO disetel nalika ngimpor perpustakaan GPIO:

Kanggo ngimpor minangka BCM:

impor RPi.GPIO minangka GPIO.setmode GPIO.BCM (GPIO.BCM)

Kanggo ngimpor minangka BOARD:

impor RPi.GPIO minangka GPIO.setmode GPIO. (GPIO.BOARD)

Loro-lorone metode iki nggawe persis proyek sing padha, mung soal preferensi penomeran.

Aku tetep nggunakake papan label GPIO sing praktis kayata RasPiO Portsplus (digambarke) kanggo mriksa pin sing nyambungake kabel. Siji sisih nuduhake konvènsi penyaringan BCM, sing liyane nuduhaké BOARD - supaya sampeyan dilebokaké kanggo proyèk apa wae sing sampeyan nemokake.