Arduinoのプロジェクトをさがす
初級から上級まで、回路図・コード・動画付きのプロジェクトを数百件収録しています。自分のレベルに合ったところから始められます。

Raspberry Pi Picoで信号機の4モードをボタンで切り替え(ステートマシン、GP11-13 + GP4)
1個のボタンで信号機の4つのモードを切り替えます!押すたびに、**通常サイクル**(赤→黄→緑の順に点灯)、**赤のみ**(停止)、**黄色点滅**(注意・夜間モード)、**消灯**(メンテナンス)へ切り替わります。**ステートマシン**(`mode`変数で実行する動作を決定)、**剰余演算によるモードの循環**(`(mode + 1) % 4`で0→1→2→3→0を繰り返す)、**処理を止めない時間管理**(`time.ticks_ms()` + `time.ticks_diff()`でLEDの各段階の時間を管理)を学びます。ただし、モード切り替え時には待ち時間があります。

Raspberry Pi Picoのボタンのチャタリング対策:IRQとソフトウェアポーリングの比較(GP5 + GP4)
ボタンを1回押しただけで、コードでは3~4回と数えられますか?原因は**チャタリング**です。金属接点がマイクロ秒単位で振動します!シリアルモニタで、2つのカウント方法を並べて比較します。**未処理のポーリング**は振動も検出して多く数え、**IRQとソフトウェアによるチャタリング対策**は正確に数えます。接点が振動する仕組み、ソフトウェアによる対策(`ticks_diff() > 50ms`)、**Pin.irq()**による割り込みの登録、**IRQ_FALLING**トリガー、ISRハンドラー、`global`とISRの安全な扱い方を学びます。IRQでLEDを切り替え、動作を目で確認できます。シリアルモニタには押すたびに両方のカウントが表示されます。

Raspberry Pi PicoのLED綱引きゲーム(NeoPixelテープ+ボタン2個+ブザー)
2人でボタンを連打して対戦するゲームです!**Raspberry Pi Pico**が、30個のLEDを備えた**WS2812B NeoPixelテープ**を綱に変えます。左が赤のプレイヤー、右が青のプレイヤーです。ボタンを押すたびに自分の色がLED1個分進み、テープ全体を自分の色にするとそのラウンドの勝ちです。先に3ラウンド取ると試合に勝ちます。カウントダウン中に早く押すと押し戻され、**パッシブブザー**はプレイヤーごとに異なるクリック音を鳴らします。試合の最後は虹色の光で締めくくります。MicroPythonの`neopixel`、チャタリング対策、処理を止めない音の再生を1つのプロジェクトで学べます。

Raspberry Pi PicoのLEDキャンプファイヤー(8x8 NeoPixelマトリクス+可変抵抗+ブザー)
燃やすことも温めることもないのに、パチパチと音がするキャンプファイヤーです!**Raspberry Pi Pico**が**8x8 NeoPixelマトリクス**に、毎フレーム計算し直したリアルな炎を描きます。下部で火花が生まれ、熱が上昇しながら冷めていき、赤から白の光で表現されます。**可変抵抗**で炎の高さを調整し、**ボタン**で炎、ガス、魔法、アメジストのテーマを切り替え、**ブザー**で薪が燃える音を加えます。計算で生成するアニメーション、ADC、PWM、MicroPythonを1つのプロジェクトで学べます。

Raspberry Pi Picoのミニ気象観測装置(DHT22+OLEDグラフ)
この2分間で部屋の温度はどう変わったでしょうか?**Raspberry Pi Pico**が**DHT22**で温度と湿度を2秒ごとに測定し、**0.96インチOLED**に大きな数字で表示します。その下には直近60回の測定値の**折れ線グラフ**を表示します。矢印が変化の傾向を示し、温度と湿度の画面は4秒ごとに切り替わります。OLEDドライバーはコードに組み込まれているため、ライブラリのインストールは不要で、1つのファイルだけで動きます。

Raspberry Pi Picoの記憶ゲーム(LED4個+ボタン4個+ブザー)
何ラウンドまで覚えられるでしょうか?定番の色と音の記憶ゲームを**Raspberry Pi Pico**で机の上に再現します。Picoがランダムな順番で色を示し、それぞれの**LED**を固有の音とともに点灯させます。**4個のボタン**で同じ順番を繰り返してください。ラウンドごとに色が1つ追加されます。間違えると**ブザー**がゲームオーバーのメロディーを鳴らし、正しい色が点滅します。リスト、乱数、ボタン入力の読み取りを1つのゲームで学べます。

Raspberry Pi Picoの暗証番号ロック(4x4キーパッド+I2C LCD+サーボ)
4桁の暗証番号で扉を開け、3回間違えると30秒間待機します!**Raspberry Pi Pico**が**4x4キーパッド**で入力された暗証番号を確認し、正しければ**SG90サーボ**で解錠して、5秒後に自動で施錠します。**I2C LCD**には伏せ字のアスタリスク、残りの試行回数、カウントダウンを表示し、キーを押すたびに**ブザー**が鳴ります。初期暗証番号は`1234`です。`A`キーで変更でき、新しい暗証番号は`pin.txt`に保存されます。

Raspberry Pi PicoでFlappy Bird(OLEDディスプレイ+ボタン+ブザー)
スマートフォンでおなじみの、あのもどかしい鳥のゲームを、今度は**0.96インチOLED**とボタン1つで楽しめます!**Raspberry Pi Pico**で作るFlappy Bird風のゲームです。**ボタン**を押すたびに鳥が羽ばたき、上下のパイプの間を通り抜けると得点が入り、隙間が狭くなります。**ブザー**が羽ばたき、得点、記録更新の音を鳴らします。最高得点は`flappy_best.txt`に保存されるため、電源が切れても消えません。物理演算、衝突判定、30 FPSのゲームループを1つのファイルにまとめています。

Raspberry Pi Picoで太陽を追尾するパネル(LDR×2+SG90サーボモーター)
自動で太陽を見つけるパネルです!**Raspberry Pi Pico**がパネルの両側にある**2個のLDR**で光を測り、**SG90サーボモーター**が明るい方へパネルを向けます。明るさの差が大きければ速く、小さければゆっくり回転し、両側が同じ明るさになると滑らかに停止します。夜にはパネルを東へ戻し、日の出を待ちます。**科学発表会**や学校の課題に使える実験プロジェクトです。

Raspberry Pi Picoのパドルボールゲーム(OLEDディスプレイ+ポテンショメーター2個+ブザー)
定番のパドルボールゲームを**0.96インチOLED**で2人対戦!各プレイヤーが自分の**ポテンショメーター**を回してパドルを動かします。ボールは打つたびに速くなり、パドルに当たる位置によって跳ね返る角度が変わります。先に5点取った方が勝ちです。**ブザー**が壁やパドルに当たる音、得点時の音を鳴らします。**Raspberry Pi Pico**の1つのゲームで、アナログ入力、整数による物理演算、画面の部分更新を学べます。

Raspberry Pi Picoの振って転がすサイコロ(MPU-6050+OLEDディスプレイ+ブザー)
サイコロをなくしても大丈夫です。回路を振ると、**0.96インチOLED**でサイコロが転がります!**MPU-6050**加速度センサーが揺れを検知し、サイコロが揺れながら回転します。振るのをやめると徐々に遅くなり、出目が決まります。**MODEボタン**でサイコロを1個と2個に切り替えられます。ゾロ目が出ると画面が点滅し、**ブザー**がお祝いのメロディーを鳴らします。**Raspberry Pi Pico**はライブラリを使わず、I2Cでセンサーを直接読み取ります。

Raspberry Pi Picoのチェスクロック(TM1637ディスプレイ2個+ボタン2個+ブザー)
駒を動かしてボタンを押すと、相手の時計が動き始めます!**Raspberry Pi Pico**で作る2人用の**チェスクロック**です。各プレイヤーの残り時間がそれぞれの**TM1637ディスプレイ**で減っていき、手を指したプレイヤーには**追加時間**が加算されます。残り10秒では**100分の1秒**まで表示され、時間が切れた側では`FLAG`が点滅して**ブザー**が警告音を鳴らします。両方のボタンを同時に押すと一時停止します。TM1637ドライバーはコードに含まれているため、ライブラリは不要です。
