- blogs:
- cles::blog
2018/04/25

RPi.GPIO でボタンが押されたことを検出するには


今日はラズパイの定番の処理である、ボタン(スイッチ)による入力を試してみました。
基本的なやり方については RPi.GPIO に全て載っています。
今回はブレッドボードを使って GPIO#12 にスイッチをつなぎ、スイッチを押したときに +3.3V がかかるように回路を組んであります。
以下のプログラムはスイッチを離したとき(GPIO.FALLING)に、コールバック関数(switch_callback())が呼ばれるようになっています。
bouncetime=300 の部分はチャタリングを防止するために、300ms はボタン入力に反応しないようにする指定です。
このプログラムはポーリングしないので、CPU の負荷は小さいです。
btnwatcher.py
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import RPi.GPIO as GPIO
import time
GPIO_BTN=12
def btn_callback(gpio_no):
print(gpio_no)
GPIO.setmode(GPIO.BCM)
GPIO.setup(GPIO_BTN, GPIO.IN, pull_up_down=GPIO.PUD_DOWN)
GPIO.add_event_detect(GPIO_BTN, GPIO.FALLING, bouncetime=300)
GPIO.add_event_callback(GPIO_BTN, btn_callback)
try:
while True:
time.sleep(1)
except KeyboardInterrupt:
GPIO.cleanup()
トラックバックについて
Trackback URL:
お気軽にどうぞ。トラックバック前にポリシーをお読みください。[policy]
このエントリへのTrackbackにはこのURLが必要です→https://blog.cles.jp/item/10132
Trackbacks
このエントリにトラックバックはありません
Comments
愛のあるツッコミをお気軽にどうぞ。[policy]
古いエントリについてはコメント制御しているため、即時に反映されないことがあります。
古いエントリについてはコメント制御しているため、即時に反映されないことがあります。
コメントはありません
Comments Form
コメントは承認後の表示となります。
OpenIDでログインすると、即時に公開されます。
OpenID を使ってログインすることができます。
サイト内検索
検索ワードランキング
へぇが多いエントリ
閲覧数が多いエントリ
1 . アーロンチェアのポスチャーフィットを修理(114220)
2 . 福岡銀がデマの投稿者への刑事告訴を検討中(112773)
3 . 年次の人間ドックへ(112224)
4 . 2023 年分の確定申告完了!(1つめ)(111789)
5 . 三菱鉛筆がラミーを買収(111668)
2 . 福岡銀がデマの投稿者への刑事告訴を検討中(112773)
3 . 年次の人間ドックへ(112224)
4 . 2023 年分の確定申告完了!(1つめ)(111789)
5 . 三菱鉛筆がラミーを買収(111668)
cles::blogについて
Referrers