GPIO 與 40-pin
Raspberry Pi GPIO與40-pin 對(duì)應(yīng)
任何GPIO引腳都可以在軟件中指定為輸入或輸出,適用廣泛用途。
::: warning
GPIO 引腳的編號(hào)不按數(shù)字順序排列;板上存在 GPIO 引腳 0 和 1(物理引腳 27 和 28),但保留用于高級(jí)用途(見下文)。
:::
Voltages
兩個(gè)5V引腳、兩個(gè)3.3V引腳,以及一些不可配置的接地引腳(0V)。意味著輸出設(shè)置為3.3V,輸入為3.3V容差
Outputs
GPIO作為輸出,可以設(shè)為高(3.3V) 或者低(0V).
Inputs
GPIO作為輸入,可以讀取為高(3.3V) 或者低(0V)。使用上拉或下拉電阻器可以更輕松地實(shí)現(xiàn)。GPIO2 和 GPIO3 固定上拉電阻,其他引腳可以在軟件中配置。
More
除了簡(jiǎn)單的輸入和輸出設(shè)備,GPIO引腳還可以用于各種替代功能,有些可用于所有引腳,有些可用于特定引腳。
PWM (脈沖寬度調(diào)制)
Software PWM available on all pins
Hardware PWM available on GPIO12, GPIO13, GPIO18, GPIO19
SPI
SPI0:MOSI (GPIO10); MISO (GPIO9); SCLK (GPIO11); CE0 (GPIO8), CE1 (GPIO7)
SPI1: MOSI (GPIO20); MISO (GPIO19); SCLK (GPIO21); CE0 (GPIO18); CE1 (GPIO17); CE2 (GPIO16)
Data: (GPIO2); Clock (GPIO3)
EPROM Data: (GPIO0); EEPROM Clock (GPIO1)
Serial
TX (GPIO14); RX (GPIO15)
GPIO pinout
可以在終端窗口,運(yùn)行 pinout 查看參考信息。這工具又 GPIO Zero Python庫(kù)提供,Raspberry Pi os 默認(rèn)已經(jīng)安裝。
有關(guān) GPIO 引腳高級(jí)功能的更多詳細(xì)信息,參考.
Permissions
為了能使用GPIO端口,你需要將用戶加到 gpio 組。 pi 用戶默認(rèn)是在gpio組中,其他用戶需要自己加入。
sudo usermod -a -G gpio
GPIO in Python
GPIO Zero 可以很方便使用python控制GPIO,文檔參考.
使用GPIO17 控制led,示例:
from gpiozero import LEDfrom time import sleep led = LED(17) whileTrue: led.on() sleep(1) led.off() sleep(1)
使用 python file 運(yùn)行示例,Led將反復(fù)閃爍和熄滅。
LED 函數(shù)包括: on(), off(), toggle(), and blink().
BUTTON
使用GPIO2 讀取按鍵狀態(tài),示例:
from gpiozero import Buttonfrom time import sleep button = Button(2) whileTrue: if button.is_pressed: print("Pressed") else: print("Released") sleep(1)
按鈕功能包括
屬性: is_pressed 、 is_held
回調(diào)函數(shù): when_pressed 、 when_released 、 when_held
方法:wait_for_press 、wait_for_release
BUTTON + LED
按鈕和LED組合使用:
from gpiozero import LED, Button led = LED(17)button = Button(2) whileTrue: if button.is_pressed: led.on() else: led.off()
或者:
from gpiozero import LED, Button led = LED(17)button = Button(2) whileTrue: button.wait_for_press() led.on() button.wait_for_release() led.off()
or:
from gpiozero import LED, Button led = LED(17)button = Button(2) button.when_pressed = led.onbutton.when_released = led.off
審核編輯黃宇
-
GPIO
+關(guān)注
關(guān)注
16文章
1211瀏覽量
52179 -
樹莓派
+關(guān)注
關(guān)注
117文章
1710瀏覽量
105721
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論