Tabla de contenido:

ESP32 VGA Tetris: 3 pasos
ESP32 VGA Tetris: 3 pasos

Video: ESP32 VGA Tetris: 3 pasos

Video: ESP32 VGA Tetris: 3 pasos
Video: Вывод информации на монитор по VGA 2024, Mes de julio
Anonim
ESP32 VGA Tetris
ESP32 VGA Tetris

En este Instructables mostraré cómo construir un clon del clásico juego Tetris, usando un ESP32 y generando la salida para un monitor VGA. Este juego es posible gracias a la increíble biblioteca Arduino ESP32Lib realizada por bitluni.

Necesitará el soporte de la placa ESP32 instalado en el IDE de Arduino (estoy usando la última versión disponible ahora, es decir, el IDE 1.8.9). Puede encontrarlo en el Administrador de bibliotecas buscando "bitluni". Dado que la última versión se publicó hace solo un par de semanas, aún se está trabajando, pero ya ofrece algunos ejemplos sencillos.

En comparación con mis proyectos anteriores en los que escribí clones de juegos antiguos similares para Arduino o ESP8266, el ESP32 es extremadamente más potente, la salida VGA con varias resoluciones (320x200, 320x240, 360x400, 460x480) y hasta 14 bits de colores. Además tienes órdenes de magnitud más de memoria.

En este clon de Tetris solo estoy usando una resolución de 320x200 con 8 colores. El código es una "conversión" rápida de una versión anterior para Arduino VGA, por lo que está mal diseñado y no optimizado. Por otro lado, las potencialidades de ESP32 VGA son mucho mayores, dando la posibilidad de escribir juegos cada vez más sofisticados comparables, supongo, a los de la era DOS. Deseo que este proyecto sea de utilidad para que otros fabricantes escriban muchos otros juegos en el futuro.

Paso 1: placas ESP32, instalación y configuración de Arduino IDE

Placas ESP32, instalación y configuración de Arduino IDE
Placas ESP32, instalación y configuración de Arduino IDE

En primer lugar, debe comprar un ESP32. Hay muchas versiones disponibles, pero recomiendo elegir una con muchos pines. Compré esta versión, pero puedes encontrar otras tres versiones en la descripción de este video.

Existen diferentes métodos para programar el ESP32, pero aquí debe usar el último IDE de Arduino. Para instalarlo y cargar la biblioteca bitluni ESP32lib VGA, puede seguir este sencillo tutorial. También muestra cómo configurar su placa ESP32 específica en el IDE de Arduino.

En este punto, puede comenzar a cargar el primer ejemplo: vaya a Archivo / Ejemplos / bitluni ESP32Lib / VGA2DFeatures, como se muestra en la imagen al comienzo de este paso. Si la carga funciona sin ningún problema, debe conectar el puerto VGA como se muestra en el siguiente paso.

Paso 2: Conexión de botones y VGA

Conexión VGA y botones
Conexión VGA y botones

Para conectar el monitor VGA al ESP32, puede usar un conector hembra DSUB15 (es decir, uno VGA estándar de 15 pines) o simplemente cortar un cable VGA.

Para Tetris y los ejemplos de la biblioteca de 8 colores, no necesita ninguna resistencia, simplemente conecte los pines de la siguiente manera:

  • VGA rojo a ESP32 ping G2
  • VGA verde a ESP32 ping G15
  • VGA azul a ESP32 ping G21
  • VGA Hsync a ESP32 ping G32
  • VGA Vsync a ESP32 ping G33
  • VGA GND a ESP32 GND

En este punto, debería poder ver el ejemplo de VGA2DFeatures en su monitor VGA.

Para jugar al Tetris, necesita cuatro botones y cuatro resistencias de aproximadamente 1 a 2 kOhm.

Conecte las cuatro resistencias desde GND a los pines G25, G26, G34 y G35 del ESP32.

Conecte un lado del botón a ESP32 3.3 voltios y el otro lado de la siguiente manera:

  • botón derecho a G26
  • botón a la izquierda para G34
  • botón girar a G25
  • botón hacia abajo a G35

Último paso: descargue ESP32_VGA_Tetris_V1.0.ino al final de esta página y cópielo en una carpeta con el mismo nombre.

¡Cárgalo en el microcontrolador ESP32 y podrás empezar a jugar Tetris inmediatamente!

Paso 3: Conclusión y agradecimientos

Estoy muy agradecido con bitluni, el autor de la biblioteca ESP32 VGA y los tutoriales y ejemplos para usarla y explotarla.

Por favor, visite su sitio y video para ver más detalles y toda su potencialidad.

Finalmente, si te gustó este Instructable, ¡considera votarlo en el concurso Arduino y microcontroladores!

Recomendado: