LEDの点滅パターンを制御するためにRaspberry Pi Picoを使用する方法について、完全かつ包括的な記事を以下に記載します。このプロジェクトでは、Raspberry Pi PicoとLEDを接続し、特定のパターンでLEDを点滅させるプログラムを作成します。
1. 必要なハードウェア
まず、Raspberry Pi Picoを使用するために必要なハードウェアを準備します。以下の機器を用意してください。

- Raspberry Pi Pico(またはRaspberry Pi Pico W)
- LED(1個または複数個)
- 抵抗(330Ω程度)
- ブレッドボード
- ジャンパーワイヤー
- USBケーブル(Raspberry Pi PicoをPCに接続するため)
2. ハードウェアの接続
Raspberry Pi PicoとLEDを接続する方法は非常に簡単です。次の手順で接続を行います。
-
Raspberry Pi PicoのGPIOピンの選択:
Raspberry Pi Picoには多くのGPIOピンがありますが、今回はGPIO 15ピンを使用します。必要に応じて他のピンを使用してもかまいません。 -
LEDの接続:
- LEDの長い脚(アノード)はGPIO 15ピンに接続します。
- LEDの短い脚(カソード)は330Ωの抵抗を通してGNDに接続します。
-
接続の確認: 接続が正しいことを確認してください。間違った接続はLEDが点灯しない原因になります。
3. ソフトウェアのインストール
次に、Raspberry Pi Picoでプログラムを作成するために必要なソフトウェアをインストールします。
-
Thonny IDEのインストール:
Raspberry Pi Picoをプログラムするために、ThonnyというPythonの統合開発環境(IDE)を使用します。Thonnyは公式サイトから無料でダウンロードできます。 -
MicroPythonのインストール:
Raspberry Pi PicoはMicroPythonをサポートしています。PicoにMicroPythonをインストールするために、以下の手順を行います。- Raspberry Pi PicoをPCに接続します(BOOTSELボタンを押しながら接続)。
Raspberry Pi Pico
がUSBドライブとして表示されます。- MicroPythonのファームウェア(公式サイトからダウンロード)をPicoにドラッグ&ドロップでインストールします。
4. プログラムの作成
次に、Pythonを使用してLEDの点滅パターンを制御するプログラムを作成します。以下は、Raspberry Pi PicoのGPIO 15ピンに接続されたLEDを制御するための基本的なコードです。
pythonfrom machine import Pin
import time
# GPIO 15ピンを出力モードで設定
led = Pin(15, Pin.OUT)
# LEDが点灯しているか消灯しているかを反転するループ
while True:
led.on() # LEDを点灯
time.sleep(0.5) # 0.5秒待機
led.off() # LEDを消灯
time.sleep(0.5) # 0.5秒待機
このコードは、GPIO 15に接続されたLEDを0.5秒ごとに点灯と消灯を繰り返します。time.sleep(0.5)
の部分で点滅の間隔を調整できます。ここでは0.5秒ですが、必要に応じて変更できます。
5. 複雑な点滅パターンの作成
複数のLEDを使用したり、複雑な点滅パターンを作成したりすることも可能です。例えば、以下のコードは、複数のLEDが異なるタイミングで点滅するパターンを作成します。
pythonfrom machine import Pin
import time
# GPIO 15, 16, 17ピンを出力モードで設定
led1 = Pin(15, Pin.OUT)
led2 = Pin(16, Pin.OUT)
led3 = Pin(17, Pin.OUT)
while True:
led1.on()
led2.off()
led3.off()
time.sleep(0.5)
led1.off()
led2.on()
led3.off()
time.sleep(0.5)
led1.off()
led2.off()
led3.on()
time.sleep(0.5)
このプログラムでは、3つのLEDが順番に点灯し、他のLEDは消灯します。各LEDが0.5秒ごとに切り替わり、3つのLEDが回転するように見えます。
6. プログラムの実行
プログラムを書いたら、Thonny IDEを使用してRaspberry Pi Picoにアップロードし、実行します。プログラムが正常に動作していれば、LEDが指定したパターンで点滅するはずです。
7. 追加のヒント
-
点滅パターンを変更する:
time.sleep()
の時間を変更することで、点滅の速さを変更できます。また、複雑なパターンを作りたい場合は、time.sleep()
の呼び出しを調整して、異なるタイミングでLEDを点灯・消灯させることができます。 -
PWMを使用する: Raspberry Pi PicoのGPIOピンでは、PWM(パルス幅変調)を使用してLEDの明るさを制御することもできます。これにより、LEDの点灯の強さを変更したり、フェードイン・フェードアウト効果を作成することができます。
pythonfrom machine import Pin, PWM
import time
led = PWM(Pin(15))
led.freq(1000)
while True:
for duty in range(0, 1024, 10): # 明るさを増加させる
led.duty(duty)
time.sleep(0.01)
for duty in range(1023, -1, -10): # 明るさを減少させる
led.duty(duty)
time.sleep(0.01)
8. 結論
このプロジェクトでは、Raspberry Pi Picoを使用してLEDの点滅パターンを制御する方法を学びました。プログラムの作成とハードウェアの接続ができれば、様々な点滅パターンや光の効果を試すことができます。GPIOピンを駆使して、さらに複雑な電子工作を楽しんでください。