Game HUNTER LED Sederhana dengan Arduino
Ringkasan Proyek
Buat game arcade HUNTER dengan Arduino Nano, 10 LED, layar LCD 16x2 I2C, dan buzzer. Kamu harus menekan tombol tepat saat LED target menyala, dan kecepatan LED makin tinggi di setiap level. Proyek ini cocok untuk belajar mengontrol LED, tombol, buzzer, dan LCD dalam satu rangkaian.
Bahan & Komponen
Daftar perangkat keras, modul, dan tools yang dibutuhkan untuk merakit proyek ini.
Daftar Komponen & Perangkat Keras
- 1x Arduino Nano R3 (Mikrokontroler pemroses utama game)
- 1x Modul LCD 16x2 I2C (Menampilkan level, sisa waktu, dan skor)
- 10x LED (Lampu yang bergerak dengan efek Night Rider; dua di antaranya berwarna biru sebagai LED target)
- 10x Resistor 470 ohm (Pembatas arus untuk tiap LED)
- 1x Buzzer (Menghasilkan efek suara saat LED bergerak, target tepat, level naik, dan game berakhir)
- 2x Push Button (Pushbutton Switch, Momentary) (Tombol untuk menembak target. Satu tombol sebenarnya sudah cukup, tetapi pembuat memasang dua secara paralel karena sisa dari proyek sebelumnya)
- 2x Resistor 10k ohm (Disertakan dalam daftar komponen proyek)
Software
- Arduino IDE (Untuk menulis dan meng-upload program)
- Library LiquidCrystal_I2C (Mengontrol LCD lewat I2C; library Wire sudah bawaan Arduino IDE)
Alat
- Solder (soldering iron) dan kawat solder bebas timbal (Untuk menyambung komponen)
Langkah Pembuatan
Khusus MemberPanduan perakitan tahap demi tahap dan catatan proses pengerjaan.
Halo, calon game developer! Di proyek ini kamu akan membuat game arcade bernama HUNTER memakai Arduino dan 10 LED. Tujuannya sederhana: tekan tombol tepat saat LED target menyala, lalu kamu dapat 1 poin. Proyek ini memakai hardware yang sama dengan game "Pong" 1D buatan pembuat yang sama, dengan perubahan pin yang minimal.

Langkah 1: Pahami Cara Kerja Game
Ini adalah versi modifikasi dari game Hunter dengan dua LED target berwarna biru. Tanda panah menunjukkan arah gerak saat target tersebut aktif.
- LED "berjalan" dengan gaya efek Night Rider. Target pertama aktif saat LED bergerak dari kiri ke kanan, dan target kedua aktif saat bergerak dari kanan ke kiri.
- Tekan salah satu tombol tepat saat LED target menyala. Jika berhasil, kamu naik ke level berikutnya dan LED bergerak lebih cepat.
- Level pertama adalah yang paling mudah, dan kecepatan gerak LED bertambah di setiap level berikutnya.
- Setiap level punya batas waktu 10 detik. Setiap level yang lolos memberi 1 poin.
- Jika gagal mengenai target dalam 10 detik, game berakhir, skor akhir tampil di layar, dan tiga detik kemudian game baru dimulai otomatis.
- Gerakan LED, target tepat, dan akhir game masing-masing diiringi bunyi buzzer yang berbeda.
- Informasi game dan skor ditampilkan di LCD 16x2.
Langkah 2: Siapkan Komponen
Game ini hanya memerlukan beberapa komponen: Arduino Nano, LCD 16x2 I2C, 10 LED, 2 push button, 1 buzzer, dan sepuluh resistor 470 ohm untuk membatasi arus LED. Lihat daftar lengkap pada bagian Bahan & Komponen.
Langkah 3: Rakit Rangkaian
Rakit rangkaian mengikuti diagram pada bagian Skema Rangkaian. Pembuat juga memberi tips penghematan: kamu boleh memakai hanya satu resistor 470 ohm untuk semua LED. Hal ini aman karena pada game ini tidak pernah ada lebih dari satu LED yang menyala bersamaan. Caranya, hubungkan semua anoda langsung ke pin Arduino, sambungkan semua katoda satu sama lain, lalu hubungkan katoda bersama itu ke ground (GND) lewat satu resistor 470 ohm. Halaman asli menyebutkan diagram untuk kasus ini, tetapi gambar yang tersedia hanya diagram versi 10 resistor.

Langkah 4: Upload Kode Program
Buka Arduino IDE dan pasang library LiquidCrystal_I2C lewat Sketch > Include Library > Manage Libraries. Salin kode lengkap pada bagian Kode Program, lalu upload ke Arduino Nano. Perhatikan baris pembuatan objek LCD: alamat I2C bisa 0x27 atau 0x3F tergantung modul LCD-mu. Jika layar tidak menampilkan apa-apa, coba ganti alamatnya.
Beberapa hal yang bisa kamu amati di kode:
- LED dipasang di pin 4 sampai 13, tombol di pin 2, dan buzzer di pin 3.
- Tombol memakai mode INPUT_PULLUP, sehingga tombol dianggap ditekan saat pin terbaca LOW.
- Kecepatan LED naik setiap level: jeda gerak (delayTime) berkurang 30 ms per level, dengan batas minimum 50 ms.
- Pada kode ini, game dianggap berhasil jika tombol ditekan saat LED dengan indeks tertentu (middleLED) menyala. Kamu bisa mengubah nilainya untuk memindahkan posisi target.
Langkah 5: Mainkan!
Setelah kode ter-upload, layar menampilkan tulisan "HUNTER Game" selama 2 detik, lalu game dimulai. LED mulai bergerak bolak-balik dengan efek Night Rider. Tekan salah satu tombol saat LED target menyala. Jika berhasil, level naik dan LED bergerak lebih cepat. Jika gagal dalam 10 detik, skor akhir tampil di layar dan game baru dimulai setelah tiga detik.
Tantangan untukmu: coba ubah kecepatan awal, batas waktu per level, atau nada buzzer untuk membuat versi game HUNTER-mu sendiri!
Buka Seluruh Panduan, Skema & Source Code
Dapatkan akses penuh ke langkah perakitan detail, diagram sirkuit lengkap, dan source code siap pakai. Gratis selamanya!
