不惑にしてまだ何者でもない者のブログ

Arduino関連、Raspberry Pi関連、プログラミング学習

CrowPiレッスン2:ボタンから入力を取得してブザーを制御する

2020-11-06 14:12:46 | CrowPi
Get input from button to control the Buzzer.
続いて、レッスン2”Get input from button to control the Buzzer.(ボタンから入力を取得してブザーを制御する)”を始める。

↑このボタンを押すとブザーが鳴る


What will you learn

このレッスンを終了すると、次のことができるようになります。
  • ボタンを押すとブザーが鳴ります

What will you need

  • 初期設定後のCrowPiボード

Requires switching modules using the switch

  • はい、左側のスイッチ-すべてのピンを上にしてオンにします(センサーの切り替え方法を忘れた場合は、5ページを参照してください)


このレッスンで使用するPythonスクリプトは以下の通り。

Examples/button_buzzer.py
#!/usr/bin/python
# -*- coding: utf-8 -*-
# http://elecrow.com/

import RPi.GPIO as GPIO
import time

# configure both button and buzzer pins
button_pin = 26
buzzer_pin = 18


# set board mode to GPIO.BOARD
GPIO.setmode(GPIO.BCM)

# setup button pin asBu input and buzzer pin as output
GPIO.setup(button_pin, GPIO.IN, pull_up_down=GPIO.PUD_UP)
GPIO.setup(buzzer_pin, GPIO.OUT)

try:
 while True:
  # check if button pressed
  if(GPIO.input(button_pin) == 0):
   # set buzzer on
   GPIO.output(buzzer_pin, GPIO.HIGH)
  else:
   # it's not pressed, set button off
   GPIO.output(buzzer_pin, GPIO.LOW)
except KeyboardInterrupt:
 GPIO.cleanup()

今回も同様に、GPIO.BCMをBOARDに修正。
それに伴いpin番号も修正。

Examples/button_buzzer.py(修正後)
# configure both button and buzzer pins
button_pin = 37
buzzer_pin = 12


# set board mode to GPIO.BOARD
GPIO.setmode(GPIO.BOARD)

上記のスクリプトを実行し、CrowPiボード上の対応するボタンを押すとブザーが鳴ることを確認。
上記のスクリプトでは、ボタンの入力を無限ループで取得しており、キーボード割り込みを例外処理して終了するので、Ctrl+Cを押す。

コメント    この記事についてブログを書く
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする
« CrowPiレッスン1:ブザーをア... | トップ | CrowPiレッスン3:リレーのし... »
最新の画像もっと見る

コメントを投稿

CrowPi」カテゴリの最新記事