Daftar Isi:

Esplora X M5Stack: 11 Langkah (dengan Gambar)
Esplora X M5Stack: 11 Langkah (dengan Gambar)

Video: Esplora X M5Stack: 11 Langkah (dengan Gambar)

Video: Esplora X M5Stack: 11 Langkah (dengan Gambar)
Video: Building a GPS Based Arduino Speedo using an M5Stack | Beginner Tutorial from Start to End #Arduino 2024, Juli
Anonim
Esplora X M5Stack
Esplora X M5Stack

Instruksi ini menunjukkan cara menggabungkan Arduino Esplora dan M5Stack untuk membuat konsol game NES.

Langkah 1: Apa Itu Arduino Esplora?

Apa Itu Arduino Esplora?
Apa Itu Arduino Esplora?

Arduino Esplora adalah papan mikrokontroler Atmega32U4 AVR.

Ini adalah papan Arduino yang unik, karena built-in berbagai sensor input out-of-the-box, termasuk joystick, 4 tombol push, slider, sensor suhu, accelerometer, mikrofon, sensor cahaya, dll.

Dan juga Arduino IDE memberikan berbagai contoh untuk menggunakan semua itu.

Kali ini saya akan memprogram Esplora sebagai perangkat budak I2C untuk bertindak sebagai gamepad I2C.

Referensi:

Langkah 2: Apa itu M5Stack?

Apa itu M5Stack?
Apa itu M5Stack?
Apa itu M5Stack?
Apa itu M5Stack?

M5Stack dimulai dari proyek kickstarter pada 2017, inti ESP32, LCD warna 2.0 bawaan, faktor bentuk kecil 5 cm, mendukung modul yang dapat ditumpuk dan modul grove I2C.

Sekarang sudah memiliki berbagai model inti, puluhan modul yang dapat ditumpuk dan juga mendukung berton-ton modul I2C Grove.

Referensi:

www.kickstarter.com/projects/179167367/m5s…

m5stack.com/

Langkah 3: Mengapa Bermain Game Retro Dengan ESP32?

Mengapa Bermain Game Retro Dengan ESP32?
Mengapa Bermain Game Retro Dengan ESP32?
Mengapa Bermain Game Retro Dengan ESP32?
Mengapa Bermain Game Retro Dengan ESP32?

Ini adalah topik yang sangat populer menggunakan Raspberry Pi untuk membuat konsol game retro dengan distribusi Retropie.

Itu melakukan pekerjaan dengan sangat baik, tetapi masalah yang paling menonjol adalah waktu boot.

Saya tidak ingin menunggu lebih dari setengah menit untuk memasuki game retro, konsol game nyata tidak perlu menunggu ini!

Kemudian saya menemukan esp32-nesemu tidak perlu menunggu boot, jadi saya mencoba menggunakan M5Stack untuk membangun konsol game NES.

Langkah 4: Persiapan Perangkat Keras

Persiapan Perangkat Keras
Persiapan Perangkat Keras
Persiapan Perangkat Keras
Persiapan Perangkat Keras
Persiapan Perangkat Keras
Persiapan Perangkat Keras
Persiapan Perangkat Keras
Persiapan Perangkat Keras

Arduino Esplora

Produk resmi sudah usang tetapi masih sangat mudah untuk menemukan tiruannya di web.

M5Stack

Inti M5Stack apa pun dengan LCD 2.0 seharusnya baik-baik saja.

Pin Header

2 pin header pin pria-pria dan 6 pin header pin pria-wanita.

Kabel Konversi Grove

Kabel Konversi 4 pin Normal 4 pin Pria ke Grove lebih disukai. Saya tidak memiliki kabel ini, jadi saya hanya menambal 1 untuk menghubungkan pin SCL dan SDA sendiri.

Langkah 5: Persiapan Perangkat Lunak

Persiapan Perangkat Lunak
Persiapan Perangkat Lunak

Arduino IDE

Unduh dan instal Arduino IDE jika belum:

www.arduino.cc/en/Main/Software

ESP-IDF

Ikuti panduan pengaturan untuk menginstal ESP-IDF jika belum:

docs.espressif.com/projects/esp-idf/en/sta…

Langkah 6: Program I2C Gamepad

Program I2C Gamepad
Program I2C Gamepad
Program I2C Gamepad
Program I2C Gamepad

Saya telah menulis sebuah program sederhana untuk membaca input joystick dan tombol dan menerjemahkannya ke dalam pesan I2C.

Berikut langkah-langkah programnya:

  1. Unduh esplora-i2c-gamepad.ino di GitHub:
  2. Hubungkan Esplora ke komputer
  3. Buka Arduino
  4. Unggah program

Langkah 7: Breakout Esplora I2C

Breakout Esplora I2C
Breakout Esplora I2C
Breakout Esplora I2C
Breakout Esplora I2C
Breakout Esplora I2C
Breakout Esplora I2C

Arduino Esplora memiliki sebagian besar I/O dan antarmuka pengguna, tetapi ironisnya kekurangan pin breakout I2C (Grove System).

Untungnya, pin I2C di ATMega32U4 belum digunakan untuk tujuan lain. Dan juga pin header sebelah kiri pada Esplora "tidak terhubung", kita dapat menggunakan pin header ini untuk memecahkan pin I2C.

Cukup menggunakan 2 kabel dan beberapa pekerjaan solder untuk menghubungkan ATMega32U4 pin 18 (SCL) dan pin 19 (SDA) ke header pin kiri.

Referensi:

Langkah 8: Gunakan Pin Header untuk Memperbaiki M5Stack di Esplora

Gunakan Pin Header untuk Memperbaiki M5Stack di Esplora
Gunakan Pin Header untuk Memperbaiki M5Stack di Esplora
Gunakan Pin Header untuk Memperbaiki M5Stack di Esplora
Gunakan Pin Header untuk Memperbaiki M5Stack di Esplora
Gunakan Pin Header untuk Memperbaiki M5Stack di Esplora
Gunakan Pin Header untuk Memperbaiki M5Stack di Esplora

Pin paling bawah 2 di header pin sisi kanan Esplora adalah GND dan 5V, dapat dicocokkan dengan pinout basis inti M5Stack. Jadi kita bisa menekuk 2 pin header pin male-male untuk menghubungkan satu sama lain.

Header pin sisi kiri Esplora tidak terhubung apa-apa, langkah sebelumnya menggunakan 2 pin paling atas saat I2C pecah. Masih ada 6 pin, kita bisa menekuk 6 pin header pin male-female untuk memperbaiki M5Stack di Esplora.

Langkah 9: Hubungkan Pin I2C

Hubungkan Pin I2C
Hubungkan Pin I2C
Hubungkan Pin I2C
Hubungkan Pin I2C

Esplora dan M5Stack berkomunikasi dengan protokol I2C, M5Stack bertindak sebagai master I2C dan Esplora adalah budak I2C.

Karena GND dan 5V sudah terhubung pada langkah sebelumnya, hanya SCL dan SDA yang memerlukan koneksi lebih lanjut.

Langkah 10: Program M5Stack

Program M5Stack
Program M5Stack
Program M5Stack
Program M5Stack
Program M5Stack
Program M5Stack
Program M5Stack
Program M5Stack
  1. Unduh versi revisi esp32-nesemu dari GitHub:
  2. Di bawah esp32-nesemu, jalankan "make menuconfig"
  3. Masuk ke submenu "Konfigurasi khusus Nofrendo ESP32"
  4. Pilih "Perangkat keras untuk dijalankan" ke "M5Stack"
  5. Aktifkan "Audio analog pada GPIO26"
  6. Pilih "Tipe pengontrol" ke "I2C Gamepad"
  7. Keluar dari menuconfig
  8. Jalankan "make -j5 all" untuk mengkompilasi program
  9. Hubungkan M5Stack ke komputer
  10. Jalankan "make flash" untuk mem-flash biner yang dikompilasi ke M5Stack
  11. Jalankan "sh flashrom.sh PATH_TO_YOUR_NES_ROM_FILENAME"

Langkah 11: Nikmati

Menikmati!
Menikmati!

Saatnya untuk memainkan permainan favorit Anda!

Direkomendasikan: