在之前的教程中,我們已經了解了如何配置Raspberry Pi的無頭設置,設置Wi-Fi,安裝觸摸屏LCD,為Raspberry Pi分配靜態IP地址以及我們已經看到如何編寫我們的第一個Python Raspberry Pi中的程序。
在以前的所有教程中(除了使用Raspberry Pi設置觸摸屏的情況除外),我們還沒有使用Raspberry上的任何GPIO引腳Pi。
讓我們先討論一下Raspberry Pi的GPIO引腳的一些功能,然后再繼續介紹如何使用Raspberry Pin及其GPIO引腳閃爍LED。/span》
在進入詳細信息之前,請嘗試閱讀如何配置Raspberry Pi的無頭設置?
Raspberry Pi的GPIO(通用輸入/輸出)引腳
Raspberry Pi具有通用輸入形式的強大功能/輸出或只是GPIO引腳。 GPIO Pins構成了現實世界和Raspberry Pi之間的物理接口。
通過這些GPIO引腳將不同的外部組件(如LED,電機,傳感器,顯示器等)連接到Raspberry Pi。在我們的項目中,我們將使用Raspberry Pi使LED閃爍,因此所有GPIO引腳的知識都很重要。
最新版本的Raspberry Pi系列即Raspberry Pi 3型號B有40個GPIO引腳。在這40個GPIO引腳中,很少有電源引腳,即3.3V引腳(2),5V引腳(2)和GND(8)。在28個引腳的其余部分中,很少有真正的通用GPIO引腳,而少數引腳具有雙重功能。
下圖顯示了Raspberry Pi 3模型的GPIO引腳B板。
中心的數字(帶圓圈的)是Raspberry Pi的物理引腳。它們也被稱為Board Pins或Numbers。 GPIO編號(如物理引腳3是GPIO2)是處理器可以看到的那些。此編號稱為GPIO編號或BCM編號。
注意 :請注意您要在程序中使用的編號方案。在這個使用Raspberry Pi和Python程序如何閃爍和LED的項目中,我使用了電路板編號。
使用Raspberry Pi閃爍LED的電路圖
為了使用Raspberry Pi閃爍LED,我們需要先將LED連接到Raspberry Pi。您可以通過兩種方式將LED連接到Raspberry Pi。我將展示連接LED的兩種方式。
電路1
在在第一個電路中,LED的陽極通過1KΩ限流電阻連接到GPIO25(物理引腳22)。 LED的陰極連接到GND引腳。
在此電路中, GPIO引腳將充當源極,并在激活時提供3.3V電壓。
電路2
在此電路中,LED的陽極通過1KΩ電阻連接到Raspberry Pi的3.3V電源引腳。 LED的陰極連接到GPIO25(物理引腳22)。
In在這個電路中,GPIO引腳充當接收器(GND)。
注意 :我將專注于第一個電路,GPIO引腳GPIO25作為源極。其他部分中解釋的代碼將特定于該電路。該代碼也可用于第二個電路,只需稍加修改即可。
所需組件
Raspberry Pi 3 B型(任何Raspberry Pi都可以)
5mm LED x 1
1KΩ電阻(1/4瓦)x 1
迷你面包板x 1
連接電線
其他(計算機,以太網電纜,Raspberry Pi電源等)
另請閱讀:您的第一個Raspberry Pi上的Python程序
操作原理非常簡單。 GPIO引腳(GPIO25)亮一秒鐘,下一秒亮。此過程保持循環,以便我們獲得閃爍LED的效果。
為了控制GPIO引腳,即使其為高電平和低電平,我將使用Python編程幾乎沒有Python包。
使用Raspberry Pi閃爍LED的代碼
如何使用Raspberry Pi操作閃爍LED?
首先,我使用Vim編輯器編寫Python程序。 Vim是一個命令行編輯器,是一個非常簡單易用的文本編輯器。首先,使用SSH登錄您的Raspberry Pi(例如Putty)。
安裝Vim編輯器(默認情況下,Raspbian具有Vi編輯器并獲得完整功能Vim),在SSH終端中輸入以下代碼。
sudo apt-get install vim
現在使用Vim編輯器打開一個空白的Python文件,文件名為 blinkLed.py 。為此,請使用以下命令。
sudo vim blinkLed.py
注意 :我在Raspberry Pi的桌面中創建了一個文件夾 Python_Progs 。所以,首先我應該出現在該目錄中,然后創建上面的Python文件。 (要更改目錄,請使用cd命令)。
打開 blinkLed.py 文件后,復制上面的代碼并將其粘貼到那里。由于它是Python代碼,因此將指令分組為Python中的塊非常重要。
保存 blinkLed。 py 文件并關閉Vim編輯器。要檢查代碼,請在SSH終端(Putty)中使用以下命令。
sudo python blinkLed.py
如果一切順利,您的LED應以1秒的間隔閃爍,即一秒鐘閃爍,另一秒閃爍。
代碼說明
在Python程序中,首先我們導入了兩個包 RPi .GPIO 和時間。包 RPi.GPIO 將幫助我們控制Raspberry Pi的GPIO引腳。
RPi的第一個重要功能。 GPIO 模塊是 setmode()。使用 GPIO.setmode(),我們可以選擇引腳的GPIO編號或物理編號。通過使用 GPIO.setmode(GPIO.BOARD) ,我們選擇了物理編號方案。
注意 :對于GPIO編號,您可以使用GPIO.setmode(GPIO.BCM)。
下一個功能是設置(引腳,模式)。此功能允許我們將引腳設置為輸入(GPIO.IN)或輸出(GPIO.OUT)。在程序中,我使用 GPIO.setup(ledPin,GPIO.OUT) 將ledPin設置為輸出。
將LED引腳設置為OUTPUT后,現在我們需要設置此OUTPUT的狀態,即HIGH(GPIO.HIGH)或LOW(GPIO.LOW)。為此,我們需要使用函數輸出(引腳,狀態)。因此,在我們的程序中,我們需要使用 GPIO.output(ledPin,GPIO.HIGH) 來打開LED和 GPIO.output( ledPin,GPIO.LOW) 將其關閉。
最后一個功能是 GPIO.cleanup() 的。借助此功能,我們可以從程序中徹底退出,因為它將清除程序中使用的所有資源。
應用程序
在這個項目中,我們已經看到了如何使用Raspberry Pi和Python程序使LED閃爍。該項目將幫助您了解Raspberry Pi的GPIO引腳的一些基礎知識。
以此項目為參考,我們可以開發許多其他項目,如驅動電機,連接LCD,等
-
led
+關注
關注
242文章
23843瀏覽量
674011 -
樹莓派
+關注
關注
121文章
2007瀏覽量
107456
發布評論請先 登錄
樹莓派6 傳聞:發布日期與規格!

樹莓派小技巧:無需鍵盤或顯示器,如何通過WiFi設置樹莓派?

用樹莓派“揪出”家里的耗電怪獸!

樹莓派“吉尼斯世界記錄”:將樹莓派的性能發揮到極致的項目!

拯救你的樹莓派!無法啟動不用慌!

評論