前回は「Hello, World!」でPico Wに文字を表示しました。今回は、マイコン学習の定番 LED点滅(Lチカ) に挑戦します。LEDを光らせることで「Pico Wが外部を制御している」ことが実感できますよ。
Pico WのオンボードLED
Raspberry Pi Pico Wには、基板上に小さなLED が搭載されています。
- 位置:USBコネクタの近く
つまり、外付けの部品を用意しなくても、すぐにLED制御が試せます。
📌 豆知識
Pico(無印)では「GP25」にオンボードLEDが接続されています。Pico Wも同じですが、Wi-Fi制御用に内部的な違いがあるため、MicroPythonでは Pin("LED")
と指定して動作します。
machine.Pinの使い方
MicroPythonでGPIOを扱うには、machine.Pin
クラスを使います。
from machine import Pin
# 出力用ピンを定義
led = Pin('LED', Pin.OUT)
Pin('LED', Pin.OUT)
→ ‘LED’を 出力 として使用led.value(1)
→ LEDを点灯(HIGH)led.value(0)
→ LEDを消灯(LOW)
点灯・消灯のサンプル
from machine import Pin
import utime
led = Pin('LED', Pin.OUT)
# 点灯
led.value(1)
utime.sleep(2)
# 消灯
led.value(0)
👉 このコードを実行すると、LEDが2秒間だけ点灯して消灯します。
点滅(Lチカ)プログラム
では、点灯と消灯を繰り返して「チカチカ」させましょう。
from machine import Pin
import utime
led = Pin('LED', Pin.OUT)
while True:
led.value(1) # 点灯
utime.sleep(1) # 1秒待つ
led.value(0) # 消灯
utime.sleep(1) # 1秒待つ
実行結果
- LEDが1秒ごとに点灯・消灯を繰り返す
- 「点滅速度」を変えたいときは
utime.sleep(秒数)
の値を調整
GPIOの基本
- GPIOとは General Purpose Input Output の略
- マイコンの「信号の出入口」
- 出力:LED・モーターなどを動かす
- 入力:スイッチ・センサーの値を読む
今回は 出力制御 の最初の例でした。
ループ処理と時間制御
while True:
→ 無限ループ(ずっと繰り返す)utime.sleep(1)
→ 1秒待つ
📌 この「ループ+待ち時間」を理解すると、センサー監視や周期動作などの基本動作が作れるようになります。
まとめ
- Pico WにはオンボードLEDがある
machine.Pin
でGPIOを制御できるvalue(1)
→ 点灯、value(0)
→ 消灯utime.sleep()
で時間を調整して点滅できる
参考リンク
✅ 次回(第3回)は「ボタン入力でLEDを制御」します。入力(スイッチ)と出力(LED)の組み合わせで「押したら光る」仕組みを作っていきましょう。
コメント