Съдържание:

ESP32 VGA тетрис: 3 стъпки
ESP32 VGA тетрис: 3 стъпки

Видео: ESP32 VGA тетрис: 3 стъпки

Видео: ESP32 VGA тетрис: 3 стъпки
Видео: ESP32 VGA Beginner Tutorial [Arduino Library ESP32Lib] 2024, Ноември
Anonim
ESP32 VGA тетрис
ESP32 VGA тетрис

В тази инструкция ще покажа как да изградите клонинг на класическата игра Tetris, използвайки ESP32 и генерирайки изход за VGA монитор. Тази игра е възможна от невероятната библиотека ESP32Lib Arduino, направена от bitluni.

Ще ви е необходима поддръжка за платка ESP32, инсталирана в IDE на Arduino (използвам последната налична версия сега, т.е. 1.8.9 IDE). Можете да го намерите в Мениджъра на библиотеки, търсейки „bitluni“. Тъй като последната версия е публикувана само преди няколко седмици, тя все още се работи, но вече предоставя някои прости примери.

В сравнение с предишните ми проекти, където съм писал подобни клонове за ретро игри за Arduino или ESP8266, ESP32 е изключително по -мощен, VGA изходът с различни резолюции (320x200, 320x240, 360x400, 460x480) и до 14 бита цветове. Освен това имате порядъци повече памет.

В този клонинг на Tetris просто използвам резолюция 320x200 с 8 цвята. Кодът е бързо „преобразуване“на предишна версия за Arduino VGA, поради което е лошо проектиран и неоптимизиран. От друга страна, потенциалът на ESP32 VGA е много по -висок, което дава възможност да се пишат все по -сложни игри, сравними, предполагам, с тези от ерата на DOS. Иска ми се този проект да бъде от полза на други създатели за писане на много други игри в бъдеще.

Стъпка 1: Платки ESP32, инсталиране и конфигуриране на IDE на Arduino

Платки ESP32, инсталиране и конфигуриране на IDE на Arduino
Платки ESP32, инсталиране и конфигуриране на IDE на Arduino

Първо трябва да закупите ESP32. Има много налични версии, но аз препоръчвам да изберете една с много щифтове. Купих тази версия, но можете да намерите три други версии в описанието на това видео.

Има различни методи за програмиране на ESP32, но тук трябва да използвате най -новата Arduino IDE. За да го инсталирате и да качите bitluni ESP32lib VGA библиотека, можете да следвате този лесен урок. Той също така показва как да конфигурирате вашата конкретна платка ESP32 в Arduino IDE.

В този момент можете да започнете да качвате първия пример: отидете на File/Examples/bitluni ESP32Lib/VGA2DFeatures, както е показано на снимката в началото на тази стъпка. Ако качването работи без проблеми, трябва да свържете VGA порта, както е показано в следващата стъпка.

Стъпка 2: Свързване на VGA и бутони

VGA и бутони Свързване
VGA и бутони Свързване

За да свържете VGA монитора към ESP32, можете или да използвате женски конектор DSUB15 (т.е. стандартен 15 -пинов VGA такъв), или просто да отрежете VGA кабел.

За Tetris и примерите от библиотеката с 8 цвята не се нуждаете от никакъв резистор, просто свържете щифтовете, както следва:

  • VGA червен към ESP32 пинг G2
  • VGA зелен към ESP32 пинг G15
  • VGA синьо към ESP32 пинг G21
  • VGA Hsync към ESP32 ping G32
  • VGA Vsync към ESP32 пинг G33
  • VGA GND към ESP32 GND

В този момент трябва да можете да видите примера на VGA2DFeatures на вашия VGA монитор.

За да играете на тетрис, имате нужда от четири бутона и четири резистора от около 1 до 2 kOhm.

Свържете четирите резистора към от GND към изводите ESP32 G25, G26, G34 и G35.

Свържете едната страна на бутона към ESP32 3.3 Volt, а другата страна, както следва:

  • бутон надясно към G26
  • бутон отляво към G34
  • бутон завъртете до G25
  • бутон надолу до G35

Последна стъпка: изтеглете ESP32_VGA_Tetris_V1.0.ino в края на тази страница и го копирайте в папка със същото име.

Качете го на микроконтролера ESP32 и веднага можете да започнете да играете на Tetris!

Стъпка 3: Заключение и признания

Много съм благодарен на bitluni, авторът на ESP32 VGA библиотеката и уроците и примерите, които да я използват и експлоатират.

Моля, посетете неговия сайт и видео, за да видите повече подробности и целия му потенциал.

И накрая, ако този Instructable ви е харесал, помислете да гласувате за него в конкурса Arduino & microcontrollers!

Препоръчано: