Raspberry Pi是一種廉價的微型計算機,能夠執行許多任務,包括復古游戲和成為家庭媒體中心。 Pi也非常重視教育,Scratch和Minecraft Pi版本均致力于幫助年輕人學習編碼,而GPIO引腳(通用輸入/輸出)打開了一個完整的世界。 DIY電子修補和發明。
什么是Raspberry Pi GPIO引腳?
在本文中,我們將告訴您一切需要了解Pi的GPIO引腳:它們可以做什么,如何使用它們以及在使用它們時應避免的錯誤。
開始之前的注意事項: Pi的不同版本可能會有所不同!在將任何東西連接到板上之前,請確保您使用的是正確的。一種快速的檢查方法是在Raspberry Pi的終端中鍵入 pinout ,這將彈出您當前的設置圖。
GPIO引腳集成到了電腦。用戶可以控制它們的行為,以允許他們從傳感器讀取數據,并控制LED,電動機和顯示器等組件。 Pi的較舊型號具有26個GPIO引腳,而較新的型號均具有40個GPIO引腳。此圖顯示了每個引腳的功能:
在標記的圖中上圖,您會看到有不同類型的GPIO引腳可用于不同目的。您可以在pinout.xyz上找到此圖表的交互式版本。它還概述了您首先要解決的令人困惑的事情之一。每個針腳都有兩個數字。其 BOARD 號(圓圈中的數字)及其 BCM (Broadcom SOC頻道)號。您可以選擇在編寫Python代碼時使用的約定:
# 1 - GPIO/BCM Numbering
GPIO.setmode(GPIO.BCM)
# 2 - Board Numbering
GPIO.setmode(GPIO.BOARD)
在每個項目中只能使用一種約定,因此請選擇一種并堅持使用。兩種約定都不是“正確的”,因此請選擇對您最有意義的一種。但是,值得注意的是,某些外設依賴于GPIO/BCM編號。
在本文中,我們將堅持使用 BOARD 編號。那么,插針實際上是做什么的?
電源插針
讓我們從電源插針開始。 Raspberry Pi可以提供5v(引腳2和4)和3.3v(引腳1和17)電源。它還為引腳6、9、14、20、25、30、34和39上的電路提供了接地(GND)。
不幸的是,沒有一個答案。 5v電源引腳可以消耗多少電流,這取決于您使用的是什么電源以及與Pi相連的其他組件。 Raspberry Pi 3僅從其電源汲取2.5A的電流,并且需要約750mA的電流才能啟動和正常運行。這意味著,如果您使用的是2.5A電源,則5v引腳可提供的最大總電流約為1.7A。令人討厭的是,這在Pi的模型之間有所不同,如下表所示:
《圖id =“ attachment_760425” aria- describeby =“ caption-attachment-760425” class =“ wp-caption aligncenter”》
圖片來源:raspberrypi.org
對于大多數用戶只是從Pi開始,這不會有問題,但是當您花費更多的時間使用GPIO引腳時,要牢記這一點。
3.3v引腳在最近的Raspberry上更簡單一些Pi版本(自B +起)提供的總電流最多為 500mA ,而較舊的型號僅提供了 50mA 。請注意,該電流也將在所有其他GPIO引腳之間共享!
因此這些引腳可以為您的組件提供電源,但這僅是它們的功能。真正有趣的東西來自其余的引腳。
標準GPIO
在上表中,忽略了電源引腳,您會看到其中的一些標記為不同的顏色。綠色引腳是標準GPIO引腳,這些是大多數初學者項目將使用的引腳。這些引腳具有3.3v 輸出的能力,在代碼中也稱為設置引腳 HIGH 。當輸出引腳為 LOW 時,這意味著它僅提供0v。
它們也可以采用《最高3.3v的strong》輸入,該引腳讀為 HIGH 。
請勿提供大于3.3v的引腳:這是油炸Pi的快速方法!
有關在一個簡單項目中開始使用GPIO引腳的出色指南,請嘗試我們的Raspberry Pi GPIO入門項目。
盡管我們將在本文中介紹一些特殊用途的引腳,但您可以將除電源引腳以及引腳27和28 以外的任何引腳用作常規GPIO引腳。
PWM
PWM(脈沖寬度調制)通過發送短脈沖來控制其接收的功率,從而與電動機,伺服器和LED等組件一起使用。在我們的LED燈帶終極指南教程中,我們將它與Arduino一起使用。
在Pi上也可以使用PWM。引腳12(GPIO 18)和引腳35(GPIO 35)具有硬件PWM功能,盡管Pi還可以通過諸如Pigpio之類的庫提供軟件PWM。
有關PWM所需代碼的簡介。 ,這個簡單的LED亮度教程應該可以幫助您入門。
引腳8和10(GPIO 14和15)是UART引腳,旨在通過串行與Pi進行通信。港口。在某些情況下,您可能需要執行此操作,但是對于大多數初學者而言,通過SSH或使用VNC無頭連接到Pi可能會更容易。
如果您對如何串行引腳可以工作,這是一個很棒的入門書。
SPI
SPI(串行外圍設備接口總線)是一種與RFID讀取器等設備進行通信的方法我們在帶有Arduino和RFID的DIY智能鎖項目中使用了它。
它允許設備與Raspberry Pi同步通信,這意味著更多數據可以在 master 和從設備設備。如果您曾經為Pi使用過小的觸摸屏,那么這就是他們的交流方式。
《圖id =“ attachment_761109” aria- describeby =“ caption-attachment-761109” class =“ wp-caption aligncenter“》
圖片來源:Gareth Halfacree/flickr.com
Raspberry Pi有多種使用SPI的設備和擴展HAT,它可以為您的項目提供比常規GPIO引腳所能承受的硬件更多的硬件。但是,它確實需要大量的布線才能運行。 Raspberry Pi Foundation網站上有SPI的深入概述。
引腳19、21、23、24、25 和 26 (GPIO 10、9、11、8,GND和GPIO 26)用于連接到SPI器件,它們都是平穩運行所必需的。避免所有意大利面的好方法是購買一個預制擴展,例如Sense HAT,它可以裝在您的板上,并為LED矩陣和傳感器上的各種陣列提供擴展。幾年來一直是它的最愛,甚至在國際空間站上也用于做一些實驗!
SPI在Raspbian上沒有作為標準啟用,但可以在raspi-中啟用。
I2C(內部集成電路)與SPI類似,但通常認為它更易于設置和使用。它異步通信,并且能夠支持所需的任意數量的不同設備,只要它們各自在I2C總線上具有唯一的地址位置即可。由于采用了這種尋址系統,Pi只需要兩個I2C引腳-引腳3(GPIO 2)和引腳5(GPIO 3),比SPI使用起來簡單得多。
I2C的占地面積小有很多可能性。使用標準的GPIO引腳,設置LCD屏幕和一些按鈕幾乎可以占用每個引腳,使用I2C設備(例如Adafruit Negative LCD控制器)可以將其降低到只有兩個引腳!
Sparkfun有完整的SPI和I2C的概要以及使您入門的示例。
引腳27和28(標記為ID_SD和ID_SC)也是I2C。 Pi用于內部功能,還有一些HAT板。通常,除非您真的知道自己在做什么,否則不要惹他們!
Raspberry Pi:適用于一切的GPIO引腳!
Raspberry Pi是現代計算的瑞士軍刀。除了大量的日常使用外,它還使任何人都可以進行自己的出色創作。
責任編輯:wv
-
樹莓派
+關注
關注
116文章
1699瀏覽量
105531 -
gpio引腳
+關注
關注
0文章
7瀏覽量
2624
發布評論請先 登錄
相關推薦
評論