天天看點

Raspberry Pi Blink(Python RPi.GPIO)

上次我們使用WiringPi 來Blink, 這次使用Python的RPi.GPIO子產品來操作樹莓派的GPIO.

安裝RPi.GPIO

① 方法一 (APT)

sudo apt-get install python-rpi.gpio
           

②方法二 (pip)

安裝Python的pip工具, 然後使用使用Python的pip(

pip is a package management system used to install and manage software packages written in Python. pip is already installed if you're using Python 2 >=2.7.9 or Python 3 >=3.4

)來安裝RPi.GPIO.

先來檢視一下樹莓派的python版本, 輸入指令

python --version

:

Raspberry Pi Blink(Python RPi.GPIO)

我的python版本是2.7.9, 是以已經安裝了pip, 沒有安裝pip的可以用這個指令

sudo apt-get install python-pip

來安裝.

使用pip安裝RPi.GPIO

sudo pip install RPi.GPIO
           

RPi.GPIO使用說明

RPi.GPIO的使用可以參考我的另一篇部落格: RPi.GPIO 官方使用文檔翻譯 .

Blink

①接線

輸入

gpio readall

指令檢視引腳命名:

Raspberry Pi Blink(Python RPi.GPIO)

我們把BCM編号方式的17引腳接到LED的正極, LED負極引腳接10kΩ電阻到GND. 如圖:

Raspberry Pi Blink(Python RPi.GPIO)

②程式

切換到/home/pi/Desktop目錄, 建立一個Blink_Python的檔案夾, 切換到該檔案夾, 建立一個 blink.py的檔案:

cd /home/pi/Desktop/
mkdir Blink_Python
cd Blink_Python
sudo nano blink.py
           

寫入以下代碼:

#!/usr/bin/python  
# -*- coding: utf-8 -*-  

import RPi.GPIO as GPIO  
import time  

# BCM GPIO編号  
LED = 

#初始化函數 
def setup():  
    # 采用BCM編号  
    GPIO.setmode(GPIO.BCM) 
    #忽略警告
    GPIO.setwarnings(False) 
    # 設定LED為輸出狀态,且輸出低電平
    GPIO.setup(LED, GPIO.OUT)
    GPIO.output(LED, GPIO.LOW)   

#循環        
def loop():  
    while True: 
        GPIO.output(LED, GPIO.HIGH)    #LED亮
        time.sleep()    #延時0.5s
        GPIO.output(LED, GPIO.LOW)    #LED滅
        time.sleep()

#退出前的清除函數            
def destroy():  
    GPIO.cleanup(LED)  

if __name__ == '__main__':  
    # 初始化GPIO  
    setup()  
    try:  
        loop()  
    except KeyboardInterrupt:  
        # 恢複GPIO口狀态  
        destroy()  
           

按下Ctrl+X, 然後Y, 然後回車, 輸入以下指令執行:

sudo python blink.py
           

可以看到LED閃爍, 按下

Ctrl+C

結束程式運作, 可以試着自己修改下代碼中的參數來檢視效果.

參考

樹莓派學習筆記——RPi.GPIO 流水燈