Tabla de contenido:

Esplora X M5Stack: 11 pasos (con imágenes)
Esplora X M5Stack: 11 pasos (con imágenes)

Video: Esplora X M5Stack: 11 pasos (con imágenes)

Video: Esplora X M5Stack: 11 pasos (con imágenes)
Video: PASO A PASO: ¿CÓMO ELABORAR UN PROYECTO ? | CONSEJO TÉCNICO ESCOLAR 2024, Noviembre
Anonim
Esplora X M5Stack
Esplora X M5Stack

Estos instructivos muestran cómo combinar Arduino Esplora y M5Stack para hacer una consola de juegos NES.

Paso 1: ¿Qué es Arduino Esplora?

¿Qué es Arduino Esplora?
¿Qué es Arduino Esplora?

Arduino Esplora es una placa de microcontrolador Atmega32U4 AVR.

Son placas Arduino únicas, porque incorporan varios sensores de entrada listos para usar, que incluyen un joystick, 4 botones, un control deslizante, un sensor de temperatura, un acelerómetro, un micrófono, un sensor de luz, etc.

Y también Arduino IDE proporcionó varios ejemplos para usarlo todo.

Esta vez programaré Esplora como un dispositivo esclavo I2C para que actúe como un gamepad I2C.

Ref.:

Paso 2: ¿Qué es M5Stack?

¿Qué es M5Stack?
¿Qué es M5Stack?
¿Qué es M5Stack?
¿Qué es M5Stack?

M5Stack partió de un proyecto kickstarter en 2017, núcleo ESP32, LCD a color de 2.0 incorporado, factor de forma diminuto de 5 cm, admite módulos apilables y módulos grove I2C.

Ahora ya tiene varios modelos centrales, decenas de módulos apilables y también admite toneladas de módulos I2C Grove.

Árbitro.:

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

m5stack.com/

Paso 3: ¿Por qué jugar al juego retro con ESP32?

¿Por qué jugar al juego retro con ESP32?
¿Por qué jugar al juego retro con ESP32?
¿Por qué jugar al juego retro con ESP32?
¿Por qué jugar al juego retro con ESP32?

Es un tema muy popular usar Raspberry Pi para hacer una consola de juegos retro con distribución Retropie.

Funciona muy bien, pero el problema más notable es el tiempo de arranque.

No quiero esperar más de medio minuto para ingresar a un juego retro, ¡una consola de juegos real, no es necesario esperar por esto!

Luego descubrí que esp32-nesemu no es necesario esperar para el arranque, así que trato de usar M5Stack para construir una consola de juegos NES.

Paso 4: preparación del hardware

Preparación del hardware
Preparación del hardware
Preparación del hardware
Preparación del hardware
Preparación del hardware
Preparación del hardware
Preparación del hardware
Preparación del hardware

Arduino Esplora

El producto oficial está obsoleto, pero aún es muy fácil encontrar un clon en la web.

M5Stack

Cualquier núcleo M5Stack con pantalla LCD de 2.0 debería estar bien.

Encabezados de pines

Conector de 2 pines macho-macho y conector de 6 pines macho-hembra.

Cable de conversión Grove

Se prefiere un puente macho normal de 4 pines a un cable de conversión Grove de 4 pines. No tenía este cable en la mano, así que solo parcheo 1 para conectar los pines SCL y SDA yo mismo.

Paso 5: preparación del software

Preparación del software
Preparación del software

IDE de Arduino

Descargue e instale Arduino IDE si aún no lo ha hecho:

www.arduino.cc/en/Main/Software

ESP-IDF

Siga la guía de configuración para instalar ESP-IDF si aún no lo ha hecho:

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

Paso 6: Programar el gamepad I2C

Programa I2C Gamepad
Programa I2C Gamepad
Programa I2C Gamepad
Programa I2C Gamepad

He escrito un programa simple para leer la entrada del joystick y los botones y traducirlo en un mensaje I2C.

Estos son los pasos del programa:

  1. Descarga esplora-i2c-gamepad.ino en GitHub:
  2. Conecta Esplora a la computadora
  3. Abrir Arduino
  4. Cargar programa

Paso 7: Breakout Esplora I2C

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

Arduino Esplora tiene la mayoría de las E / S e interfaces de usuario, pero, irónicamente, es la falta de pines de ruptura I2C (Grove System).

Afortunadamente, los pines I2C del ATMega32U4 aún no se utilizan para otros fines. Y también el encabezado de pin del lado izquierdo en el Esplora "no está conectado actualmente", podemos usar este encabezado de pin para romper los pines I2C.

Simplemente use 2 cables y un poco de trabajo de soldadura para conectar ATMega32U4 pin 18 (SCL) y pin 19 (SDA) al encabezado de pin izquierdo.

Ref.:

Paso 8: use encabezados de pines para arreglar M5Stack en Esplora

Utilice encabezados de pines para arreglar M5Stack en Esplora
Utilice encabezados de pines para arreglar M5Stack en Esplora
Utilice encabezados de pines para arreglar M5Stack en Esplora
Utilice encabezados de pines para arreglar M5Stack en Esplora
Utilice encabezados de pines para arreglar M5Stack en Esplora
Utilice encabezados de pines para arreglar M5Stack en Esplora

La mayoría de los 2 pines inferiores en el cabezal de pines del lado derecho de Esplora es GND y 5V, se puede combinar con el pinout de la base del núcleo M5Stack. Entonces podemos doblar un cabezal de clavija macho-macho de 2 pines para conectarse entre sí.

El encabezado del pin del lado izquierdo de Esplora no conectó nada, los pasos anteriores usaron 2 pines superiores cuando I2C se rompió. Quedan 6 pines, podemos doblar un cabezal de pines macho-hembra de 6 pines para fijar el M5Stack en el Esplora.

Paso 9: conecte los pines I2C

Conecte los pines I2C
Conecte los pines I2C
Conecte los pines I2C
Conecte los pines I2C

Esplora y M5Stack se comunican con el protocolo I2C, M5Stack actúa como maestro I2C y Esplora es esclavo I2C.

Dado que GND y 5V ya estaban conectados en los pasos anteriores, solo SCL y SDA requerían una conexión adicional.

Paso 10: Programar M5Stack

Programa M5Stack
Programa M5Stack
Programa M5Stack
Programa M5Stack
Programa M5Stack
Programa M5Stack
Programa M5Stack
Programa M5Stack
  1. Descargue la versión revisada de esp32-nesemu de GitHub:
  2. En esp32-nesemu, ejecute "make menuconfig"
  3. Ingrese al submenú "Configuración específica de Nofrendo ESP32"
  4. Seleccione "Hardware para ejecutar" a "M5Stack"
  5. Habilite "Audio analógico en GPIO26"
  6. Seleccione "Tipo de controlador" a "I2C Gamepad"
  7. Salir de menuconfig
  8. Ejecute "make -j5 all" para compilar el programa
  9. Conecte M5Stack a la computadora
  10. Ejecute "make flash" para actualizar el binario compilado a M5Stack
  11. Ejecute "sh flashrom.sh PATH_TO_YOUR_NES_ROM_FILENAME"

Paso 11: ¡Disfruta

¡Disfrutar!
¡Disfrutar!

¡Es hora de jugar tu juego de favor!

Recomendado: