Daftar Isi:

Konsol Arduino Pong Genggam: 6 Langkah (dengan Gambar)
Konsol Arduino Pong Genggam: 6 Langkah (dengan Gambar)

Video: Konsol Arduino Pong Genggam: 6 Langkah (dengan Gambar)

Video: Konsol Arduino Pong Genggam: 6 Langkah (dengan Gambar)
Video: OLED Ping Pong Game | 0.96 | OLED | UNO | 128x64| OLED Display Animation | Arduino | Bitmap 2024, Juni
Anonim
Konsol Arduino Pong Genggam
Konsol Arduino Pong Genggam

DFRobot menghubungi saya baru-baru ini, ingin saya menggunakan papan Arduino Nano dan OLED khusus mereka. Awalnya saya ingin membuat sepeda pintar, dan saya membangunnya secara keseluruhan. Namun sayangnya Nano terlalu lemah untuk menjalankan dan menyimpan sketsa masif yang dibutuhkan. Jadi saya memutuskan untuk mengunjungi kembali salah satu proyek saya sebelumnya, matriks Neopixel yang menjalankan game Pong. Saya ingin menjadikannya portabel, dan OLED 1,7 akan menjadi tampilan yang sempurna.

Daftar Bagian:

  • Arduino nano
  • OLED
  • Pembicara

Langkah 1: Video

Image
Image

Langkah 2: Merancang Game

Merancang Game
Merancang Game

Untuk permainan Pong ini saya ingin membuatnya relatif sederhana, yang berarti tidak ada algoritma pemantulan bola yang dikendalikan komputer atau bola mewah. Pada dasarnya, ada dayung tunggal yang dapat digerakkan pengguna ke atas atau ke bawah, dan membuat bola bertabrakan dengan dayung akan menyebabkan vektor sumbu x terbalik. Setiap kali bola dipukul ada suara yang dimainkan. Saat perangkat game dihidupkan, layar muncul dengan judul game dan instruksi. Selain itu, ibu saya membuat lagu tema kecil yang berputar di latar belakang hingga tombol atas ditekan.

Langkah 3: Mendesain Perangkat Game

Mendesain Perangkat Game
Mendesain Perangkat Game
Mendesain Perangkat Game
Mendesain Perangkat Game
Mendesain Perangkat Game
Mendesain Perangkat Game
Mendesain Perangkat Game
Mendesain Perangkat Game

Program CAD masuk saya adalah Fusion 360, jadi saya memutuskan untuk menggunakannya untuk mendesain perangkat game pong saya. Saya mulai dengan merancang setiap komponen yang digunakan: OLED, Arduino Nano, dan speaker. Dengan cara ini saya dapat melihat dengan tepat di mana dan bagaimana setiap komponen harus pas di dalam enklosur. Saya kemudian meletakkan Nano dan PCB di bagian belakang kasing, dan OLED di atasnya. Selanjutnya adalah pertanyaan tentang di mana harus meletakkan speaker dan tombol. Saya memutuskan bahwa speaker 3W dapat diletakkan tepat di bawah layar (melihatnya dari atas), dan itu juga memerlukan "panggangan" di atas speaker agar suaranya tidak teredam. Terakhir, saya menambahkan dua tombol di sisi kiri untuk menambahkan kontrol.

Langkah 4: Membangun Perangkat

Membangun Perangkat
Membangun Perangkat
Membangun Perangkat
Membangun Perangkat
Membangun Perangkat
Membangun Perangkat

Saya mulai dengan mencetak 3D setiap bagian, terdiri dari bagian bawah, bagian atas, dan 2 tombol. Selanjutnya saya menyolder header wanita ke 4x6cm dan menyambungkannya ke Nano. Ini tidak hanya memungkinkan OLED mudah dilepas, tetapi juga meningkatkannya di atas Arduino Nano. Periksa skema untuk informasi kabel. Kemudian saya menyambungkan dua tombol, bersama dengan papan breakout USB mikro sederhana untuk daya. Speaker juga terpasang dan menempatkannya pada posisi yang benar. Desain Fusion 360 saya memungkinkan sekrup mesin 3mm menahan OLED, speaker, dan menghubungkan kedua bagian perangkat. Tapi, saya harus membuatnya tepat, jadi saya menggunakan mesin bor untuk membuat 8 lubang: 2 untuk speaker, 2 untuk layar, dan 4 di bawahnya. Anda dapat mengunjungi tautan Thingiverse untuk file.

Langkah 5: Memprogram Game

Penggunaan antarmuka yang sederhana sangat penting untuk menjaga program tetap kecil. Saya mulai dengan menambahkan beberapa perpustakaan: Adafruit_GFX, Adafruit_SSD1351, dan perpustakaan Arduino Timer. Selanjutnya saya mendefinisikan pin dan warna saya, seperti pin OLED dan definisi warna 16 bit. Dalam kode saya juga ada 4 cara untuk mengubah cara permainan dimainkan, seperti mengubah dimensi dayung dan seberapa cepat bola bergerak. Sebuah bagian kemudian ada di mana setiap variabel didefinisikan, termasuk skor dan berbagai koordinat. Setiap kali perangkat dihidupkan gambar bola dan beberapa teks muncul di layar, bersama dengan lagu tema kecil yang ditentukan sebelumnya dalam kode. Setelah permainan dimulai, dua penghitung waktu dibuat, satu yang memperbarui dayung, dan yang lainnya memperbarui bola. Setiap kali posisi bola diperbarui, koordinatnya diperiksa untuk memastikan bola tidak melewati batas layar atau jika menyentuh dayung. Setiap kali memantul, sumbu x atau y dibalik dan nada kecil dimainkan. Tonton video di awal artikel ini untuk melihat bagaimana game ini dimainkan.

Langkah 6: Bermain Pong

Bermain Pong!
Bermain Pong!
Bermain Pong!
Bermain Pong!
Bermain Pong!
Bermain Pong!
Bermain Pong!
Bermain Pong!

Nama permainannya adalah untuk mendapatkan skor serendah mungkin. Tidak ada batasan waktu, sehingga sangat menyenangkan dan bahkan memicu kesurupan. Yang diperlukan hanyalah menekan salah satu dari dua tombol untuk menggerakkan dayung ke atas atau ke bawah. Dimungkinkan juga untuk menambahkan cara untuk menyimpan skor tertinggi menggunakan EEPROM Arduino.

Direkomendasikan: