LCD Hill Run v2 – 16x2 LCDとブザーで遊ぶインタラクティブなArduinoランナーゲーム
必要なパーツと材料
| パーツ | 数量 | 備考 |
|---|---|---|
| Arduino Mega 2560 | 1 | Arduino Unoでも可。コード内のDUCK_PINを3に変更し、配線を調整してください |
| ジャンパーワイヤー | 約20本 | |
| タクトスイッチ (12mm) | 2 | ジャンプ用とダック用 |
| 抵抗 10kΩ | 2 | プルダウン用 |
| 16x2 LCDディスプレイ (白文字/青背景) | 1 | 標準的な16ピンタイプ |
| 可変抵抗 10kΩ | 1 | LCDコントラスト調整用 |
| ブザー (パッシブ推奨) | 1 | アクティブブザーやピエゾブザーでも動作する可能性あり。ゲームプレイに必須ではない |
| ブレッドボード (フルサイズ推奨) | 1 |
使用するソフトウェア
- Arduino IDE (Web Editorでも可)
プロジェクト概要
筆者がArduinoを学び始めた頃に、Project Hubの作品からインスピレーションを受けて制作したランナーゲームです。デバッグも比較的容易で、コードも整理されています。ぜひ楽しんでください!
重要: 同梱のライブラリをダウンロードし、Arduinoのライブラリフォルダに配置してください。ライブラリが見つからないエラーが出た場合は、スケッチ > ライブラリをインクルード から追加してください。問題があればコメントでお知らせください。
ライブラリ: GitHubリポジトリ
回路図
Fritzing形式の回路図ファイル (hillrun2_zp0SI4wns3.fzz) が提供されています。Unoを使用する場合は、コード内の const int DUCK_PIN = 18; を 3 に変更し、ダックボタンの配線をピン18からデジタルピン3に接続し直してください。
ソースコード
メインスケッチ「Hill Run v2 code」とREADMEが含まれます。コードは割り込み処理を用いて効率化されています。主な配線は以下の通りです。
- ジャンプボタン: デジタルピン2 (10kΩプルダウン)
- ダックボタン: デジタルピン18 / Unoの場合ピン3 (10kΩプルダウン)
- パッシブブザー: PWMピン5
- 16x2 LCD: RS=7, E=8, D4-D7=9-12, RW=GND, V0=可変抵抗出力
ゲームルール: 丘(ヒル)が迫ったらジャンプボタンで飛び越え、カラスが迫ったらダックボタンを押し続けてしゃがみます。衝突するとゲームオーバー。スコアは回避した障害物の数です。ゲームオーバー後はジャンプボタンでリスタート。コードにはカスタム文字(プレイヤー、丘、カラス)の定義、割り込みによるボタン検知、ゲームループ、描画関数などが含まれます。
製造プロセス
- Arduino NanoとMPU-6050で作るリアルタイムジャイロスコープゲーム
- Arduino UNOとOLEDディスプレイでクラシックPongゲームを自作:ステップバイステップチュートリアル
- DIY Arduino USBゲームコントローラー - 高性能ゲームパッドを自作
- Arduino UNOで作るLCDアニメーション&ゲーム入門
- Arduinoタッチブレークアウトゲーム:2.4インチTFT LCDでクラシックアーケードを再現
- Pixel Chaser: Arduino Nanoで作るワンタップLEDゲーム
- Arduinoで自動化するChrome恐竜ゲーム – LDRとPythonで障害物を検知してジャンプ
- DIY LEDルーレットゲーム – Arduino Nanoで作る1人用アーケードゲーム
- Arduino製ポケットゲーム機「A-Maze」:迷路自動生成で無限に遊べる
- DHT センサで作る信頼性の高い Arduino 気象ステーション
- Arduino UNOで作るクラシックLCDアーケードゲーム(ブザー・ジョイスティック付き)