2022年5月9日月曜日

Maker Pi RP2040とCircuitPythonでボタンクリック時にLEDバーを点灯・消灯する

Maker Pi RP2040には多数のLEDや、DCモータードライバ、ピエゾ圧電スピーカーなど多数の機能を搭載されています。ボタンクリック時にLEDバーを点灯・消灯するには、以下の手順を実行します。

〇Maker Pi RP2040でボタンを押下してLEDバーを点灯させた写真

実行手順

1. Maker Pi RP2040をパソコンにUSBで接続して、Mu Editorを起動します。

2. code.pyを開いて、プログラムの書き込み。
Maker Pi RP2040はデフォルトでCircuitPythonが実行できるので、以下のプログラムをcode.pyとしてMu Editorから書き込みます。プログラムをMaker Pi RP2040で保存した後に、GP20ボタンをクリックすると徐々に点灯、GP21ボタンをクリックすると徐々に消灯します。
※Mu Editorを使用せず、code.pyを直接エクスプローラーなどから保存する事も出来ます。
import board
import time
import digitalio

pins = [
  board.GP0,
  board.GP1,
  board.GP2,
  board.GP3,
  board.GP4,
  board.GP5,
  board.GP6,
  board.GP7,
  board.GP16,
  board.GP17,
  board.GP26,
  board.GP27,
  board.GP28,
]

dio_leds = []


# ピンの初期化
for pin in pins:
    dio = digitalio.DigitalInOut(pin)
    dio.direction = digitalio.Direction.OUTPUT
    dio_leds.append(dio)

# GP20ボタンの初期化
dio20 = digitalio.DigitalInOut(board.GP20)
dio20.direction = digitalio.Direction.INPUT
dio20.pull = digitalio.Pull.UP

# GP21ボタンの初期化
dio21 = digitalio.DigitalInOut(board.GP21)
dio21.direction = digitalio.Direction.INPUT
dio21.pull = digitalio.Pull.UP

while True:
    # GP20ボタンが押されたらLEDバーを徐々に点灯
    if dio20.value == False:
        for li in range(0, len(dio_leds)):
            dio_leds[li].value = True
            time.sleep(0.1)
    # GP21ボタンが押されたらLEDバーを徐々に点灯
    if dio21.value == False:
        for li in range(len(dio_leds)-1, -1, -1):
            dio_leds[li].value = False
            time.sleep(0.1)
    time.sleep(0.1)

関連情報

・Maker Pi RP2040に関する他の情報はこちらを参照してください。

・Mu Editorに関する他の情報はこちらを参照してください。

0 件のコメント:

コメントを投稿