Daftar Isi:
Video: POING! - Game Arkade Arduino!: 3 Langkah
2025 Pengarang: John Day | [email protected]. Terakhir diubah: 2025-01-13 06:57
Kami akan membuat game arcade bergaya PONG yang menggunakan bagian dari kit "The Most Complete Starter Kit UNO R3 Project" dari Elegoo Inc.
Pengungkapan Penuh - Sebagian besar bagian yang disediakan untuk Instruksi ini diberikan kepada penulis oleh Elegoo Inc.
Saya ingin membangun proyek menggunakan modul Matriks LED. Tampilan LED 8x8 dasar memerlukan penggunaan register geser tambahan untuk dapat menangani masing-masing LED dalam matriks. Sebagai gantinya, proyek ini menggunakan modul LED MAX7219 8x8. Ini adalah modul yang sangat mudah digunakan.
Saya akan menyarankan bahwa karena banyaknya koneksi kabel pada proyek ini, itu akan dianggap sebagai Instructable tingkat MENENGAH.
Mari kita mulai!
Perlengkapan
Suku Cadang Elegoo Starter Kit Bekas (https://rebrand.ly/dvjb3w8)
- Mikrokontroler UNO R3
- Modul LED MAX7219 8x8
- Modul Tampilan LCD 16x2
- 10K Potong Potensiometer dan kenop
- Kabel Dupont
- 220R Resistor
- Buzzer Piezo Pasif
- Modul Catu Daya
- Adaptor 9V 1A - diperlukan karena UNO tidak dapat memasok arus yang cukup untuk Modul LED 8x8
- Papan tempat memotong roti
Bagian Ekstra Dibutuhkan
2 x 10K Linear Potensiometer - murah dan tersedia secara luas di eBay, AliExpress, Banggood dll.
Langkah 1: Menghubungkan Sirkuit
Pasang rangkaian sesuai diagram pengkabelan. Gunakan waktumu. Ada BANYAK koneksi yang diperlukan untuk dua tampilan.
Perhatikan di foto rangkaian bahwa modul daya terpasang di sisi kiri papan tempat memotong roti dan Adaptor DC 9V 1A dicolokkan ke modul daya sehingga arus yang cukup disuplai ke matriks LED. TIDAK ADA koneksi antara pin 5V pada UNO dan papan tempat memotong roti. TAPI, pin GND di UNO terhubung ke GND di papan tempat memotong roti.
Periksa dua kali dan tiga kali pekerjaan Anda.
Langkah 2: Kode Arduino
Instruksi ini mengasumsikan bahwa Anda sudah tahu cara memprogram di Arduino.
Unduh sketsa Arduino terlampir. Pastikan Anda telah menambahkan di perpustakaan LedControl ke perpustakaan Arduino Anda. Saya menggunakan versi oleh Eberhard Fahle. Cukup cari MAX7219 di browser Kelola Perpustakaan dan Anda akan menemukan dan menginstalnya.
Pastikan file pitches.h ada di folder sketsa Anda. Ini digunakan untuk memainkan suara dalam game.
Sedikit tentang waktu
Karena perintah delay() sepenuhnya menjeda eksekusi sketsa Anda saat dijalankan, kami malah mencari periode waktu yang telah berlalu untuk terjadi saat kami ingin mengeksekusi bagian sketsa yang berhubungan dengan animasi. Kami mencari jumlah waktu yang telah ditentukan untuk dilewati sebelum kami mengeksekusi bagian sketsa seperti memperbarui lokasi bola di layar.
Lebih penting lagi, perintah delay() benar-benar hanya dieksekusi dalam metode loop(). Biasanya tidak dijalankan seperti yang diharapkan dalam metode lain. Jadi semua waktu terkait animasi dilakukan dalam metode loop().
Contoh:
Kami mendefinisikan beberapa variabel tipe 'panjang' dan beberapa boolean dan kemudian mengaturnya di akhir setup().
bThresh = 80; // waktu dalam milidetik antara pembaruan bola
ballTime = milis();// disetel ke waktu sistem saat ini
bon = salah; // apakah LED bola hidup atau mati
bolaKembali = salah; // apakah kita mengembalikan bola setelah pukulan dayung?
Dalam loop() untuk menggambar bola yang kita miliki:
if ((millis() - ballTime > bThresh) && bon == false) {// jika bola MATI dan cukup waktu telah berlalu ballOn();// nyalakan LED bola
bon = benar; // bola sekarang ON
ballTime = milis(); // setel ulang waktu bola ke waktu saat ini
}
if ((millis() - ballTime > bThresh) && bon == true) { // jika bola ON dan cukup waktu telah berlalu
bolaMati(); // matikan LED bola
bon = salah; // bola sekarang MATI
ballTime = milis(); atur ulang waktu bola ke waktu saat ini
}
Ada banyak cara untuk membuat permainan ini. Ini hanya preferensi saya.
Sketsa didokumentasikan sepenuhnya jadi saya mengundang Anda untuk membaca kode untuk melihat cara kerjanya.
Periksa, kompilasi, dan unggah kode Anda.
Nikmati bermain game Anda!
Langkah 3: Kesimpulan
Terima kasih saya sampaikan kepada Elegoo Inc yang telah menyediakan starter kit yang digunakan dalam proyek ini. Ini adalah kit dengan berbagai macam suku cadang dan modul yang akan membawa Anda ke dunia Arduino Maker.