Índice:

Esplora X M5Stack: 11 etapas (com imagens)
Esplora X M5Stack: 11 etapas (com imagens)

Vídeo: Esplora X M5Stack: 11 etapas (com imagens)

Vídeo: Esplora X M5Stack: 11 etapas (com imagens)
Vídeo: ПЛАТФОРМА M5STACK, ESP32 ДЛЯ ARDUINO 2024, Julho
Anonim
Esplora X M5Stack
Esplora X M5Stack

Essas tabelas de instruções mostram como combinar o Arduino Esplora e o M5Stack para fazer um console de jogo NES.

Etapa 1: O que é Arduino Esplora?

O que é o Arduino Esplora?
O que é o Arduino Esplora?

Arduino Esplora é uma placa microcontroladora Atmega32U4 AVR.

É uma placa Arduino exclusiva, porque possui vários sensores de entrada integrados, incluindo um joystick, 4 botões, um controle deslizante, um sensor de temperatura, um acelerômetro, um microfone, um sensor de luz, etc.

E também o Arduino IDE forneceu vários exemplos para usar tudo isso.

Desta vez, vou programar o Esplora como um dispositivo escravo I2C para atuar como um gamepad I2C.

Ref.:

Etapa 2: O que é M5Stack?

O que é M5Stack?
O que é M5Stack?
O que é M5Stack?
O que é M5Stack?

M5Stack começou a partir de um projeto kickstarter em 2017, núcleo ESP32, LCD colorido de 2.0 integrado, fator de forma minúsculo de 5 cm, suporte a módulos empilháveis e módulos Grove I2C.

Agora já tem vários modelos principais, dezenas de módulos empilháveis e também suporta toneladas de módulos I2C Grove.

Ref.:

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

m5stack.com/

Etapa 3: Por que jogar um jogo retro com o ESP32?

Por que jogar o jogo retro com ESP32?
Por que jogar o jogo retro com ESP32?
Por que jogar o jogo retro com ESP32?
Por que jogar o jogo retro com ESP32?

É um tópico muito popular usar o Raspberry Pi para fazer um console de videogame retrô com distribuição Retropie.

Ele faz o trabalho muito bem, mas o problema mais notável é o tempo de inicialização.

Não quero esperar mais de meio minuto para entrar em um jogo retro, um verdadeiro console de videogame, não é preciso esperar por isso!

Então descobri que o esp32-nesemu não precisa esperar pela inicialização, então tento usar o M5Stack para construir um console de jogos NES.

Etapa 4: Preparação de Hardware

Preparação de Hardware
Preparação de Hardware
Preparação de Hardware
Preparação de Hardware
Preparação de Hardware
Preparação de Hardware
Preparação de Hardware
Preparação de Hardware

Arduino Esplora

O produto oficial está obsoleto, mas ainda é muito fácil encontrar um clone na web.

M5Stack

Qualquer núcleo M5Stack com LCD de 2.0 deve estar ok.

Pin Headers

Cabeçalho de pino macho-macho de 2 pinos e cabeçote de pino macho-fêmea de 6 pinos.

Grove Conversion Cable

É preferível um jumper macho normal de 4 pinos para um cabo de conversão de 4 pinos Grove. Eu não tinha esse cabo em mãos, então apenas remendo 1 para conectar os pinos SCL e SDA sozinho.

Etapa 5: preparação do software

Preparação de Software
Preparação de Software

IDE Arduino

Baixe e instale o Arduino IDE, se ainda não:

www.arduino.cc/en/Main/Software

ESP-IDF

Siga o guia de configuração para instalar o ESP-IDF, se ainda não:

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

Etapa 6: programe o gamepad I2C

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

Eu escrevi um programa simples para ler a entrada do joystick e dos botões e traduzi-la em uma mensagem I2C.

Aqui estão as etapas do programa:

  1. Baixe esplora-i2c-gamepad.ino no GitHub:
  2. Conecte o Esplora ao computador
  3. Abra o Arduino
  4. Programa de upload

Etapa 7: Breakout Esplora I2C

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

O Arduino Esplora tem a maioria das E / S e interfaces de usuário, mas ironicamente é a falta de pinos de breakout I2C (Sistema Grove).

Felizmente, os pinos I2C no ATMega32U4 ainda não são usados para outros fins. E também o cabeçalho de pino do lado esquerdo no Esplora "não está conectado no momento", podemos usar este cabeçalho de pino para separar os pinos I2C.

Simplesmente use 2 fios e algum trabalho de solda para conectar ATMega32U4 pino 18 (SCL) e pino 19 (SDA) ao conector de pino esquerdo.

Ref.:

Etapa 8: use cabeçalhos de pinos para corrigir M5Stack no Esplora

Use cabeçalhos de pinos para corrigir M5Stack no Esplora
Use cabeçalhos de pinos para corrigir M5Stack no Esplora
Use cabeçalhos de pinos para corrigir M5Stack no Esplora
Use cabeçalhos de pinos para corrigir M5Stack no Esplora
Use cabeçalhos de pinos para corrigir M5Stack no Esplora
Use cabeçalhos de pinos para corrigir M5Stack no Esplora

A maioria dos 2 pinos inferiores no cabeçalho do pino do lado direito do Esplora é GND e 5V, ele pode ser combinado com a pinagem da base do núcleo M5Stack. Portanto, podemos dobrar um conector de pino macho-macho de 2 pinos para conectar um ao outro.

O conector de pinos do lado esquerdo do Esplora não conectou nada, as etapas anteriores usaram os 2 pinos mais altos quando o I2C rompeu. Restam 6 pinos, podemos dobrar um cabeçalho de pino macho-fêmea de 6 pinos para fixar o M5Stack no Esplora.

Etapa 9: conectar os pinos I2C

Conectar pinos I2C
Conectar pinos I2C
Conectar pinos I2C
Conectar pinos I2C

O Esplora e o M5Stack comunicam-se com o protocolo I2C, o M5Stack atua como mestre I2C e o Esplora é o escravo I2C.

Uma vez que GND e 5V já foram conectados nas etapas anteriores, apenas SCL e SDA exigiram conexão adicional.

Etapa 10: programar M5Stack

Programa M5Stack
Programa M5Stack
Programa M5Stack
Programa M5Stack
Programa M5Stack
Programa M5Stack
Programa M5Stack
Programa M5Stack
  1. Baixe a versão revisada do esp32-nesemu no GitHub:
  2. Em esp32-nesemu, execute "make menuconfig"
  3. Entre no submenu "Nofrendo ESP32-specific configuration"
  4. Selecione "Hardware para executar" em "M5Stack"
  5. Ative "Áudio analógico em GPIO26"
  6. Selecione "Tipo de controlador" para "I2C Gamepad"
  7. Sair do menuconfig
  8. Execute "make -j5 all" para compilar o programa
  9. Conecte o M5Stack ao computador
  10. Execute "make flash" para atualizar o binário compilado para M5Stack
  11. Execute "sh flashrom.sh PATH_TO_YOUR_NES_ROM_FILENAME"

Etapa 11: Divirta-se

Aproveitar!
Aproveitar!

É hora de jogar o seu jogo favorito!

Recomendado: