Proyecto de Matriz LED RGB ESP32-S3 6 - Juego de Cible

Proyecto de Matriz LED RGB ESP32-S3 6 - Juego de Cible

Proyecto 6 - Juego de Objetivo (Inclina la Tabla para Golpear el Círculo)

El Proyecto 6 es el proyecto final y más interactivo de esta serie de matrices LED RGB ESP32-S3. Usando el sensor de movimiento QMI8658C incorporado, inclinas la placa para mover un punto alrededor de la matriz de 8×8. Una "zona objetivo" circular se encuentra en el medio de la pantalla. Cuando tu punto toca el círculo, el color cambia y (opcionalmente) un zumbador suena. Esto crea un juego de equilibrio/coordinación simple pero sorprendentemente divertido.

Los seis proyectos se muestran en un solo video de YouTube (incrustado en esta página). El código completo del juego se carga automáticamente debajo de este artículo, y los enlaces de compra de afiliados para el módulo aparecen debajo de la sección de código.

Descripción general del módulo de matriz de LED RGB ESP32-S3

Este módulo incluye:

  • microcontrolador ESP32-S3(Wi-Fi + BLE)
  • matriz LED RGB de 8×8(64 LED direccionables)
  • Acelerómetro QMI8658Cpara la detección de inclinación y orientación
  • USB-Cpuerto para energía y programación
  • Arrancar / Reiniciarbotones
  • Disponiblepines GPIOpara complementos como timbres o sensores

Para este juego, el acelerómetro es esencial: informa continuamente la inclinación X/Y, lo que permite que el punto se mueva suavemente según el ángulo de la tabla. La sección de video de este proyecto muestra claramente cómo el punto se desliza y reacciona a medida que inclinas el módulo a la izquierda/derecha/adelante/atrás.:contentReference[oaicite:0]{index=0}

Proyectos cubiertos en el video (marcas de tiempo)

  • 00:00- Introducción
  • 02:01- Instalando placas ESP32
  • 03:32- Instalando bibliotecas
  • 05:32- Proyecto 1: Punto Móvil
  • 11:11- Proyecto 2: Desplazamiento de texto
  • 12:59- Proyecto 3: Texto HTTP
  • 16:41- Proyecto 4: Tilt Dot
  • 18:55- Proyecto 5: Flecha Arriba
  • 20:02-Proyecto 6: Juego de Objetivos (este proyecto)

Esta porción del video muestra tanto el movimiento del punto como la lógica de detección del círculo en acción, lo que facilita entender cómo se comportan las coordenadas.:contentReference[oaicite:1]{index=1}

Instalando placas ESP32 en Arduino IDE

Si ya has completado los proyectos anteriores, la instalación de la placa está hecha. De lo contrario, sigue:

  1. File > Preferences→ Agregar URL de la placa ESP32.
  2. Tools > Board > Boards Manager…→ Instalar "ESP32".
  3. Selecciona la placa ESP32-S3 enTools > Board.
  4. Seleccione el puerto COM correcto bajoTools > Port.

Instalando las bibliotecas requeridas

Este juego usa:

  • Adafruit NeoMatrix
  • Adafruit NeoPixel
  • Adafruit GFX
  • QMI8658(sensor de movimiento)

Instálalos a través de:

  1. Sketch > Include Library > Manage Libraries…
  2. Buscar:NeoMatrix→ Instalar
  3. Instalar dependenciasGFX+NeoPixel)
  4. Buscar e instalarQMI8658

Cómo funciona el juego del objetivo

El acelerómetro QMI8658C proporciona valores de inclinación X e Y. Estos se asignan a las coordenadas LED (0-7 en ambas direcciones). Tu punto se mueve a través de la matriz basado en el ángulo de la placa.

Se dibuja un círculo (o anillo) en la pantalla como el "área objetivo". Ganas un "impacto" siempre que el punto se superponga al círculo. En ese momento:

  • El color objetivo cambia (aleatoriamente o predefinido)
  • Un zumbador opcional suena (si está conectado)

Dado que la matriz es pequeña, el círculo se dibuja utilizando una simple verificación de radio. El juego se ejecuta continuamente, por lo que puedes inclinarte hacia adelante y hacia atrás para golpear el círculo repetidamente.

Proyecto 6 - Configuración de Código (Juego Objetivo)

A continuación se presentan los principales ajustes ajustables por el usuario que se encuentran en la parte superior del boceto. El código completo se incluye automáticamente a continuación de este artículo.

Configuración de la Matriz


// Matrix configuration
const int MATRIX_PIN    = 14;
const int MATRIX_WIDTH  = 8;
const int MATRIX_HEIGHT = 8;

La matriz RGB está cableada directamente al GPIO 14—no cambies esto.

Brillo


uint8_t matrixBrightness = 40;   // 0–255

Para uso en interiores, 30-60 es ideal.

Color del punto


// Dot color (R, G, B)
uint8_t dotRed   = 255;
uint8_t dotGreen = 255;
uint8_t dotBlue  = 255;

Este es el punto que mueves al inclinar la tabla.

Color del círculo (aleatorio o fijo)


// Circle (target) color
uint8_t circleRed   = 0;
uint8_t circleGreen = 0;
uint8_t circleBlue  = 255;

// If true, choose a new random color each time the dot hits
bool randomCircleColor = true;

ConjuntorandomCircleColor = false;si quieres un color fijo.

Radio del Círculo


// Target size (radius)
int targetRadius = 3;   // 3 fits well on 8×8 matrix

Los radios más grandes facilitan el juego; los más pequeños lo dificultan.

Sensibilidad de inclinación


// Sensitivity of tilt mapping
float tiltScale = 4.0f;   // increase = faster movement across screen

Si el punto se mueve demasiado rápido o salta, reduce este número.

Configuración del zumbador (Opcional)


// Buzzer pin (optional)
int buzzerPin = 6;      // connect buzzer + to pin 6, – to GND
bool useBuzzer = true;  // set false to disable sound

Si no conectas un zumbador, simplemente configura.useBuzzer = false;

Resumen

El Proyecto 6 combina todo lo aprendido de proyectos anteriores: dibujo de matrices, entrada de acelerómetro, control de color, suavizado de movimiento y sonido opcional. Inclinar la placa mueve el punto, y tocar el círculo cambia su color y (opcionalmente) activa un beep. Es una divertida demostración de detección de movimiento en una pantalla RGB compacta.

El código completo del "Juego de Objetivos" se muestra automáticamente debajo de este artículo. También puedes ver la parte del Proyecto 6 del video para observar cómo se mueve el punto y cómo se detectan los golpes. Si deseas construir tu propio juego, los enlaces de afiliados para comprar el módulo de matriz LED RGB ESP32-S3 aparecen debajo de la sección de código.

Imágenes

ESP32 S3 Matrix
ESP32 S3 Matrix
ESP32 S3 Matrix  pin out
ESP32 S3 Matrix pin out
ESP32-S3_RGB_8x8_matrix-3
ESP32-S3_RGB_8x8_matrix-3
ESP32 S3 Matrix displaying rainbow heart 3
ESP32 S3 Matrix displaying rainbow heart 3
ESP32-S3_RGB_8x8_matrix1
ESP32-S3_RGB_8x8_matrix1
ESP32-S3_RGB_8x8_matrix-2
ESP32-S3_RGB_8x8_matrix-2
804-ESP32-S3 RGB LED Matrix Project 6 - Cible game
Idioma: C++
¡Copiado!

Cosas que podrías necesitar

Recursos y referencias

Archivos📁

Archivo de Fritzing