基于Raspberry Pi Pico的GPIO引腳使用運動傳感器


原標題:基于Raspberry Pi Pico的GPIO引腳使用運動傳感器
基于Raspberry Pi Pico的GPIO引腳使用運動傳感器,可以通過以下步驟實現:
一、準備材料
Raspberry Pi Pico開發板
被動紅外(PIR)運動傳感器
面包板
LED燈
330歐姆電阻
公對公跳線
微型USB線(用于為Pico供電和編程)
二、硬件連接
將Raspberry Pi Pico插入面包板,使其位于中央通道上方,并確保Micro USB端口位于面包板的一端。
將一個330歐姆的電阻器插入面包板,其一腳應與GND串聯(通常連接到Pico的PIN38),另一腳應插入面包板的-導軌,為GND導軌供電。
插入一個LED,將長腳(陽極)插入面包板的某個GPIO引腳(如PIN34),并將短腳插入GND導軌。
PIR傳感器具有三個引腳:VCC、OUT和GND。VCC引腳用于從Raspberry Pi Pico提供3.3V電源,使用跳線將VCC從PIR連接到Pico的3.3V引腳(如PIN37)。
使用另一根跳線將PIR的OUT引腳連接到Pico的某個GPIO引腳(如PIN21)。
將PIR的GND引腳連接到面包板的GND導軌。
三、軟件設置
在電腦上安裝Thonny IDE,并確保Raspberry Pi Pico已經通過微型USB線連接到電腦。
在Thonny中創建一個新的Python腳本文件。
導入必要的庫,并創建用于控制LED和讀取PIR傳感器狀態的對象。以下是一個示例代碼:
python復制代碼
from machine import Pin import utime
# 創建LED對象,設置GPIO 28(物理引腳34)作為輸出引腳 led = Pin(28, Pin.OUT)
# 創建PIR傳感器對象,設置GPIO 16(此處需根據實際連接的引腳調整)作為輸入引腳,并啟用上拉電阻 pir = Pin(16, Pin.IN, Pin.PULL_UP)
# 初始化LED狀態為關閉 led.low()
# 等待3秒,讓傳感器穩定 utime.sleep(3)
# 無限循環,檢測運動并控制LED while True: # 打印PIR傳感器的當前值(0或1) print(pir.value())
# 如果檢測到運動(pir.value()為0),則點亮LED并等待5秒 if pir.value() == 0: print("LED On") led.high() utime.sleep(5) else: # 如果沒有檢測到運動,則關閉LED并等待0.2秒 print("Waiting for movement") led.low() utime.sleep(0.2)
將代碼保存到Raspberry Pi Pico上,并運行腳本。此時,當PIR傳感器檢測到運動時,LED應該會亮起;當沒有檢測到運動時,LED會熄滅。
四、注意事項
在連接電路時,確保所有引腳都正確連接,并且沒有短路或斷路。
PIR傳感器非常靈敏,起初可能會看到一些誤觸發。可以通過調整傳感器上的可調電阻來改變靈敏度閾值。
在運行代碼之前,確保Raspberry Pi Pico已經正確連接到電腦,并且Thonny IDE已經識別到Pico設備。
通過以上步驟,就可以使用Raspberry Pi Pico的GPIO引腳來控制基于運動傳感器的應用了。這種應用可以用于家庭安全系統、自動門控制等場景。
責任編輯:
【免責聲明】
1、本文內容、數據、圖表等來源于網絡引用或其他公開資料,版權歸屬原作者、原發表出處。若版權所有方對本文的引用持有異議,請聯系拍明芯城(marketing@iczoom.com),本方將及時處理。
2、本文的引用僅供讀者交流學習使用,不涉及商業目的。
3、本文內容僅代表作者觀點,拍明芯城不對內容的準確性、可靠性或完整性提供明示或暗示的保證。讀者閱讀本文后做出的決定或行為,是基于自主意愿和獨立判斷做出的,請讀者明確相關結果。
4、如需轉載本方擁有版權的文章,請聯系拍明芯城(marketing@iczoom.com)注明“轉載原因”。未經允許私自轉載拍明芯城將保留追究其法律責任的權利。
拍明芯城擁有對此聲明的最終解釋權。