[ラズパイ] タクトスイッチを使う

投稿者: | 2022-09-11

押すとON、離すとOFFになるタクトスイッチを使います。

ラズパイへの接続は以下のとおりです。

タクトスイッチには向きがあります。

タクトスイッチを真上から見て足が出ている向きで判断します。

ブレッドボードに差し込むときは中央を橋渡すようにします。

0.3秒ごとにタクトスイッチの状態を確認するサンプルです。

import RPi.GPIO as GPIO
import time

# GPIO番号
GPIO_NO = 18

def main():
    # 初期設定
    GPIO.setmode(GPIO.BCM)
    # 入力端子設定
    GPIO.setup(GPIO_NO, GPIO.IN, pull_up_down=GPIO.PUD_UP)

    try:
        while True:
            # スイッチのステータスを取得
            # 0:ON, 1:OFF
            sw_status = GPIO.input(GPIO_NO)

            # 出力
            if sw_status == 0:
                print("ON")
            else:
                print("OFF")

            # 0.3秒停止
            time.sleep(0.3)

    except KeyboardInterrupt:
        print("\nCtrl+C")
    finally:
        print("Exit")

if __name__ == "__main__":
    main()

今回のようにスイッチを押すことでGPIO端子がGroundと導線する回路の場合は「プルアップ (GPIO.PUD_UP)」を設定します。

    # 入力端子設定
    GPIO.setup(GPIO_NO, GPIO.IN, pull_up_down=GPIO.PUD_UP)

参考サイト

Raspberry Piでスイッチ入力

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です