
パトカーの屋根にある点滅灯を最も簡単な形で再現します。赤のLEDが点灯している間は青が消灯し、1秒間に約3回状態を入れ替え、繰り返します。Raspberry Pi Picoに2個のLEDと2個の抵抗を接続するだけです。数分で組み立てられる光の演出で、初めてのプロジェクトにぴったりです。
回路図

ソースコード
MicroPython
1# ─────────────────────────────────────────
2# BlueGrays · bluegrays.com
3# Raspberry Pi Pico Police Strobe Light Effect (Red + Blue, GP11 + GP12)
4# ─────────────────────────────────────────
5# Two LEDs alternate (flip-flop): red is on while blue is off, and they
6# swap every 0.3 s. The speed is set with WAIT_MS.
7#
8# Pins:
9# GP11 -> Red LED (with a 220 ohm resistor)
10# GP12 -> Blue LED (with a 220 ohm resistor)
11# LED katotlari -> LED cathodes -> GND
12
13from machine import Pin
14from time import sleep_ms
15
16# ============ PIN / PIN ============
17red_led = Pin(11, Pin.OUT) # Red LED
18blue_led = Pin(12, Pin.OUT) # Blue LED
19
20WAIT_MS = 300 # Switch delay (ms)
21
22print("== BlueGrays · bluegrays.com ==")
23print("Polis Cakar Basit / Simple Police Alternating")
24print("Kirmizi: GP11 | Mavi: GP12")
25
26# ============ MAIN LOOP ============
27while True:
28 # Red on, blue off
29 red_led.value(1)
30 blue_led.value(0)
31 print("[FLIP] KIRMIZI / RED")
32 sleep_ms(WAIT_MS)
33
34 # Blue on, red off
35 red_led.value(0)
36 blue_led.value(1)
37 print("[FLIP] MAVI / BLUE")
38 sleep_ms(WAIT_MS)
39
よくある質問
WAIT_MSは何に使いますか?▾
2つの色を切り替えるまでの待ち時間を、ミリ秒単位で指定します。初期値は300 msです。100 msにすると速くせわしない点滅に、600 msにするとゆったりした点滅になります。値を変更してコードを再実行するだけです。
`sleep_ms()`と`sleep()`の違いは何ですか?▾
sleep()は時間を秒単位で受け取り、sleep_ms()は整数のミリ秒単位で受け取ります。このプロジェクトでは、sleep_ms(300)で待ち時間をわかりやすく表しています。sleep(0.3)も指定する待ち時間は同じです。
青のLEDが赤より暗く見えるのはなぜですか?▾
青のLEDの順方向電圧(約3 V)はPicoの出力電圧3.3 Vにとても近いため、同じ抵抗では流れる電流が少なくなります。青のLEDには、100 Ωなどの抵抗値が小さい抵抗を使えます。
救急車や消防車の点滅も再現できますか?▾
はい。点滅回数、時間、色を変えることで、さまざまな緊急車両の点滅パターンを再現できます。
