Isi kandungan:

Esplora X M5 Stack: 11 Langkah (dengan Gambar)
Esplora X M5 Stack: 11 Langkah (dengan Gambar)

Video: Esplora X M5 Stack: 11 Langkah (dengan Gambar)

Video: Esplora X M5 Stack: 11 Langkah (dengan Gambar)
Video: Apa Itu Dm Kuning🗿🥵🥴 2024, Julai
Anonim
Esplora X M5Stack
Esplora X M5Stack

Instruksional ini menunjukkan cara menggabungkan Arduino Esplora dan M5Stack untuk membuat konsol permainan 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, kerana ia dilengkapi dengan pelbagai sensor input di luar kotak, termasuk kayu bedik, 4 butang tekan, slaid, sensor suhu, akselerometer, mikrofon, sensor cahaya, dll.

Dan juga Arduino IDE memberikan pelbagai contoh untuk menggunakannya.

Kali ini saya akan memprogramkan Esplora sebagai peranti hamba I2C untuk bertindak sebagai gamepad I2C.

Ruj:

Langkah 2: Apa itu M5Stack?

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

M5Stack bermula dari projek kickstarter pada tahun 2017, teras ESP32, LCD warna 2.0 terbina dalam, faktor bentuk kecil 5 cm, menyokong modul stackable dan modul grove I2C.

Kini ia sudah mempunyai pelbagai model teras, puluhan modul stackable dan juga menyokong banyak modul I2C Grove.

Ruj:

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

m5stack.com/

Langkah 3: Mengapa Main Permainan Retro Dengan ESP32?

Mengapa Bermain Permainan Retro Dengan ESP32?
Mengapa Bermain Permainan Retro Dengan ESP32?
Mengapa Main Permainan Retro Dengan ESP32?
Mengapa Main Permainan Retro Dengan ESP32?

Ini adalah topik yang sangat popular menggunakan Raspberry Pi untuk membuat konsol permainan retro dengan pengedaran Retropie.

Ia menjalankan tugas dengan baik, tetapi masalah yang paling ketara ialah masa boot.

Saya tidak mahu menunggu lebih dari setengah minit untuk memasuki permainan retro, konsol permainan sebenar tidak perlu menunggu ini!

Kemudian saya dapati esp32-nesemu tidak perlu menunggu boot, jadi saya cuba menggunakan M5Stack untuk membina konsol permainan NES.

Langkah 4: Penyediaan Perkakasan

Penyediaan Perkakasan
Penyediaan Perkakasan
Penyediaan Perkakasan
Penyediaan Perkakasan
Penyediaan Perkakasan
Penyediaan Perkakasan
Penyediaan Perkakasan
Penyediaan Perkakasan

Arduino Esplora

Produk rasmi usang tetapi masih sangat mudah untuk mencari klon di web.

M5Stack

Mana-mana teras M5Stack dengan LCD 2.0 mestilah baik.

Pengepala Pin

Header pin lelaki-lelaki 2 pin dan header pin lelaki-wanita 6 pin.

Kabel Penukaran Grove

Kabel Penukaran 4 pin Lelaki Normal ke Grove 4 pin Normal lebih disukai. Saya tidak mempunyai kabel ini, jadi saya hanya memasang 1 untuk menghubungkan pin SCL dan SDA sendiri.

Langkah 5: Penyediaan Perisian

Penyediaan Perisian
Penyediaan Perisian

Arduino IDE

Muat turun dan pasang Arduino IDE jika belum:

www.arduino.cc/en/Main/Software

ESP-IDF

Ikuti panduan persediaan untuk memasang ESP-IDF jika belum:

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

Langkah 6: Program Gamepad I2C

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

Saya telah menulis program sederhana untuk membaca joystick dan butang input dan menerjemahkannya ke dalam mesej I2C.

Berikut adalah langkah program:

  1. Muat turun esplora-i2c-gamepad.ino di GitHub:
  2. Sambungkan Esplora ke komputer
  3. Buka Arduino
  4. Muat naik 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 mempunyai kebanyakan antara muka I / O dan antara muka pengguna, tetapi ironinya kekurangan pin pelarian I2C (Grove System).

Nasib baik, pin I2C di ATMega32U4 belum digunakan untuk tujuan lain. Dan juga header pin sebelah kiri di Esplora "tidak disambungkan sekarang", kita boleh menggunakan header pin ini untuk memecahkan pin I2C.

Cukup gunakan 2 wayar dan beberapa kerja pematerian untuk menghubungkan ATMega32U4 pin 18 (SCL) dan pin 19 (SDA) ke header pin kiri.

Ruj:

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 sebelah kanan Esplora adalah GND dan 5V, ia boleh dipadankan dengan pinout asas teras M5Stack. Oleh itu, kita boleh membengkokkan header pin lelaki-lelaki 2 pin untuk saling menghubungkan.

Header pin sebelah kiri Esplora tidak menghubungkan apa-apa, langkah sebelumnya menggunakan 2 pin paling atas ketika I2C pecah. Masih ada 6 pin, kita dapat membengkokkan kepala pin lelaki-wanita 6 pin untuk memperbaiki M5Stack di Esplora.

Langkah 9: Sambungkan Pin I2C

Sambungkan Pin I2C
Sambungkan Pin I2C
Sambungkan Pin I2C
Sambungkan Pin I2C

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

Oleh kerana GND dan 5V sudah tersambung pada langkah sebelumnya, hanya SCL dan SDA yang memerlukan sambungan lebih lanjut.

Langkah 10: Program M5Stack

Program M5Stack
Program M5Stack
Program M5Stack
Program M5Stack
Program M5Stack
Program M5Stack
Program M5Stack
Program M5Stack
  1. Muat turun versi esp32-nesemu yang disemak semula dari GitHub:
  2. Di bawah esp32-nesemu, jalankan "make menuconfig"
  3. Masukkan submenu "Konfigurasi khusus Nofrendo ESP32"
  4. Pilih "Perkakasan untuk dijalankan" hingga "M5Stack"
  5. Dayakan "Audio analog pada GPIO26"
  6. Pilih "Jenis pengawal" hingga "Gamepad I2C"
  7. Keluar dari menuconfig
  8. Jalankan "make -j5 all" untuk menyusun program
  9. Sambungkan M5Stack ke komputer
  10. Jalankan "buat flash" untuk memancarkan binari yang disusun ke M5Stack
  11. Jalankan "sh flashrom.sh PATH_TO_YOUR_NES_ROM_FILENAME"

Langkah 11: Nikmati

Selamat mencuba!
Selamat mencuba!

Sudah tiba masanya untuk bermain permainan kegemaran anda!

Disyorkan: