Sommario:

Esplora X M5Stack: 11 passaggi (con immagini)
Esplora X M5Stack: 11 passaggi (con immagini)

Video: Esplora X M5Stack: 11 passaggi (con immagini)

Video: Esplora X M5Stack: 11 passaggi (con immagini)
Video: ПЛАТФОРМА M5STACK, ESP32 ДЛЯ ARDUINO 2024, Novembre
Anonim
Esplora X M5Stack
Esplora X M5Stack

Queste istruzioni mostrano come combinare Arduino Esplora e M5Stack per creare una console di gioco NES.

Passaggio 1: cos'è Arduino Esplora?

Cos'è Arduino Esplora?
Cos'è Arduino Esplora?

Arduino Esplora è una scheda microcontrollore Atmega32U4 AVR.

È una scheda Arduino unica, perché incorpora vari sensori di input pronti all'uso, tra cui un joystick, 4 pulsanti, uno slider, un sensore di temperatura, un accelerometro, un microfono, un sensore di luce, ecc.

E anche Arduino IDE ha fornito vari esempi per utilizzarlo tutto.

Questa volta programmerò Esplora come un dispositivo slave I2C per fungere da gamepad I2C.

Rif.:

Passaggio 2: cos'è M5Stack?

Cos'è M5Stack?
Cos'è M5Stack?
Cos'è M5Stack?
Cos'è M5Stack?

M5Stack inizia da un progetto kickstarter nel 2017, core ESP32, LCD a colori 2.0 integrato, fattore di forma minuscolo di 5 cm, supporto moduli impilabili e moduli I2C grove.

Ora ha già vari modelli di base, decine di moduli impilabili e supporta anche tonnellate di moduli I2C Grove.

Rif.:

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

m5stack.com/

Passaggio 3: perché giocare a giochi retrò con ESP32?

Perché giocare a giochi retrò con ESP32?
Perché giocare a giochi retrò con ESP32?
Perché giocare a giochi retrò con ESP32?
Perché giocare a giochi retrò con ESP32?

È un argomento molto popolare che utilizza Raspberry Pi per creare una console di gioco retrò con la distribuzione Retropie.

Fa il suo lavoro molto bene, ma il problema più notevole è il tempo di avvio.

Non voglio aspettare più di mezzo minuto per entrare in un gioco retrò, una vera console di gioco, non c'è bisogno di aspettare per questo!

Poi ho scoperto che esp32-nesemu non è necessario attendere l'avvio, quindi provo a utilizzare M5Stack per creare una console di gioco NES.

Passaggio 4: preparazione dell'hardware

Preparazione dell'hardware
Preparazione dell'hardware
Preparazione dell'hardware
Preparazione dell'hardware
Preparazione dell'hardware
Preparazione dell'hardware
Preparazione dell'hardware
Preparazione dell'hardware

Arduino Esplora

Il prodotto ufficiale è obsoleto ma è ancora molto facile trovare un clone sul web.

M5Stack

Qualsiasi core M5Stack con LCD da 2,0 dovrebbe andare bene.

Intestazioni pin

Connettore maschio-maschio a 2 pin e connettore maschio-femmina a 6 pin.

Cavo di conversione Grove

È preferibile il normale cavo di conversione da ponticello maschio a 4 pin a Grove a 4 pin. Non avevo questo cavo in mano, quindi ho appena applicato la patch 1 per collegare i pin SCL e SDA da solo.

Passaggio 5: preparazione del software

Preparazione del software
Preparazione del software

Arduino IDE

Scarica e installa Arduino IDE se non ancora:

www.arduino.cc/en/Main/Software

ESP-IDF

Segui la guida all'installazione per installare ESP-IDF se non ancora:

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

Passaggio 6: programma I2C Gamepad

Programma I2C Gamepad
Programma I2C Gamepad
Programma I2C Gamepad
Programma I2C Gamepad

Ho scritto un semplice programma per leggere l'input del joystick e dei pulsanti e tradurlo in un messaggio I2C.

Ecco i passaggi del programma:

  1. Scarica esplora-i2c-gamepad.ino su GitHub:
  2. Connetti Esplora al computer
  3. Apri Arduino
  4. Carica programma

Step 7: Breakout Esplora I2C

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

Arduino Esplora ha la maggior parte delle interfacce utente e I/O, ma ironia della sorte è la mancanza di pin di breakout I2C (Grove System).

Fortunatamente, i pin I2C nell'ATMega32U4 non sono ancora utilizzati per altri scopi. E anche l'intestazione del pin sul lato sinistro sull'Esplorazione è "non attualmente connessa", possiamo usare questa intestazione del pin per rompere i pin I2C.

Basta usare 2 fili e alcune saldature per collegare ATMega32U4 pin 18 (SCL) e pin 19 (SDA) all'intestazione del pin sinistro.

Rif.:

Passaggio 8: utilizzare le intestazioni dei pin per correggere M5Stack su Esplora

Usa le intestazioni dei pin per riparare M5Stack su Esplora
Usa le intestazioni dei pin per riparare M5Stack su Esplora
Usa le intestazioni dei pin per riparare M5Stack su Esplora
Usa le intestazioni dei pin per riparare M5Stack su Esplora
Usa le intestazioni dei pin per riparare M5Stack su Esplora
Usa le intestazioni dei pin per riparare M5Stack su Esplora

Il maggior numero di 2 pin inferiori nell'intestazione del pin sul lato destro di Esplora è GND e 5V, può essere abbinato al pinout della base del core M5Stack. Quindi possiamo piegare un'intestazione pin maschio-maschio a 2 pin per collegarli tra loro.

L'intestazione del pin sinistro di Esplora non ha collegato nulla, i passaggi precedenti hanno utilizzato 2 pin più in alto come breakout I2C. Rimangono 6 pin, possiamo piegare un header pin maschio-femmina a 6 pin per fissare l'M5Stack su Esplora.

Passaggio 9: collegare i pin I2C

Collegare i pin I2C
Collegare i pin I2C
Collegare i pin I2C
Collegare i pin I2C

Esplora e M5Stack comunicano con protocollo I2C, M5Stack funge da master I2C ed Esplora è I2C slave.

Poiché GND e 5V erano già collegati ai passaggi precedenti, solo SCL e SDA richiedevano un'ulteriore connessione.

Passaggio 10: programma M5Stack

Programma M5Stack
Programma M5Stack
Programma M5Stack
Programma M5Stack
Programma M5Stack
Programma M5Stack
Programma M5Stack
Programma M5Stack
  1. Scarica la versione rivista di esp32-nesemu da GitHub:
  2. Sotto esp32-nesemu, esegui "make menuconfig"
  3. Accedi al sottomenu "Configurazione specifica per Nofrendo ESP32"
  4. Seleziona "Hardware su cui eseguire" su "M5Stack"
  5. Abilita "Audio analogico su GPIO26"
  6. Seleziona "Tipo di controller" su "I2C Gamepad"
  7. Esci da menuconfig
  8. Esegui "make -j5 all" per compilare il programma
  9. Collega M5Stack al computer
  10. Esegui "make flash" per eseguire il flashing del binario compilato su M5Stack
  11. Esegui "sh flashrom.sh PATH_TO_YOUR_NES_ROM_FILENAME"

Passaggio 11: divertiti

Divertiti!
Divertiti!

È ora di giocare al tuo gioco preferito!

Consigliato: