raspberry piのgpioを使う

GPIO用のライブラリRPi.GPIOは標準で組み込まれています

  1. Pythonからのアクセス方法

——————————————

# BCM PIN ASSIGN

# ledは23:blue, 24:yellow, 25:red

BLUE = 23

YELLOW =24

RED = 25

# Shut down sw is assigned to 17

SHUTDOWN = 17

def init():

    # initialise Pins

    GPIO.setwarnings(False)

    GPIO.setmode(GPIO.BCM)

    GPIO.setup(BLUE, GPIO.OUT)

    GPIO.setup(YELLOW, GPIO.OUT)

    GPIO.setup(RED, GPIO.OUT)

    GPIO.output(BLUE, True)

    GPIO.output(YELLOW, False)

    GPIO.output(RED, False)

# switchの割り当てとイベント待ち

    GPIO.setup(SHUTDOWN, GPIO.IN)

    GPIO.setup(SHUTDOWN, GPIO.IN, pull_up_down=GPIO.PUD_UP)

    return

def handle_sw_input():

    def switch_callback(gpio_pin):

        print(‘sw was pushed’)

    #

    GPIO.add_event_detect(SHUTDOWN, GPIO.FALLING,bouncetime=250)

    # when the sw was pushed, call the ‘call back routine’ 

    GPIO.add_event_callback(SHUTDOWN, switch_callback) 

    return

 

・イベント待ちのサンプルはこちらから

https://qiita.com/maoutokagura/items/9aef5e23167ce2bc1d10

 

  1. 個別プログラムgpioのインストール

動作確認用が主目的と思いますが

$ sudo su –

# wget https://project-downloads.drogon.net/wiringpi-latest.deb

# dpkg -i wiringpi-latest.deb

# exit

$ gpio -v

gpio version: 2.52

Copyright (c) 2012-2018 Gordon Henderson

This is free software with ABSOLUTELY NO WARRANTY.

For details type: gpio -warranty

Raspberry Pi Details:

  Type: Pi Zero-W, Revision: 01, Memory: 512MB, Maker: Sony 

  * Device tree is enabled.

  *–> Raspberry Pi Zero W Rev 1.1

  * This Raspberry Pi supports user-level GPIO access.

こういう風に設定します。

$ gpio -g mode 23 out ; -g bcmモード指定の意味

$ gpio -g write 23 0 ; 

GPIOのピン指定にはBOARDとBCMあるので紛らわしいのですが、以下BCM指定時のピン名称です。BOARDはその名の通り物理ピン番号指定のようです。

 

admin