Мазмуну:

ESP32 VGA Tetris: 3 кадам
ESP32 VGA Tetris: 3 кадам

Video: ESP32 VGA Tetris: 3 кадам

Video: ESP32 VGA Tetris: 3 кадам
Video: Модуль TTGO VGA32 2024, Ноябрь
Anonim
ESP32 VGA Tetris
ESP32 VGA Tetris

Бул көрсөтмөлөрдө мен классикалык Tetris оюнунун клонун кантип курууну, ESP32ди колдонууну жана VGA мониторунун өндүрүшүн көрсөтөм. Бул оюн bitluni тарабынан жасалган укмуштуудай ESP32Lib Arduino китепканасы аркылуу мүмкүн болду.

Сизге Arduino IDEде орнотулган ESP32 тактасынын колдоосу керек болот (мен азыр жеткиликтүү болгон акыркы версиясын колдонуп жатам, башкача айтканда 1.8.9 IDE). Сиз муну Китепкана менеджеринен "битлуни" издеп таба аласыз. Акыркы версия бир нече жума мурун жарыялангандыктан, ал дагы эле иштөөдө, бирок буга чейин бир нече жөнөкөй мисалдарды келтирген.

Мурунку долбоорлорго салыштырмалуу, мен Arduino же ESP8266 үчүн окшош винтаждык оюн клондорун жазгам, ESP32 өтө күчтүү, VGA ар кандай токтомдор менен чыгат (320x200, 320x240, 360x400, 460x480) жана 14Bit түскө чейин. Мындан тышкары, сизде эс тутуму чоңураак.

Бул Tetris клонунда мен 8 түстүү 320x200 токтомун колдонуп жатам. Код-бул Arduino VGAнын мурунку версиясынын тез "конверсиясы", ошондуктан ал начар иштелип чыккан жана оптимизацияланган эмес. Башка жагынан алганда, ESP32 VGA потенциалы бир топ жогору, бул DOS доорундагы оюндарга салыштырмалуу барган сайын татаал оюндарды жазууга мүмкүнчүлүк берет. Мен бул долбоор келечекте башка көптөгөн оюндарды жазуу үчүн башка жаратуучуларга пайдалуу болоорун каалайм.

1 -кадам: ESP32 такталары, Arduino IDE орнотуу жана конфигурациялоо

ESP32 такталары, Arduino IDE орнотуу жана конфигурациялоо
ESP32 такталары, Arduino IDE орнотуу жана конфигурациялоо

Эң биринчиден, сиз ESP32 жүктөп алышыңыз керек. Көптөгөн версиялар бар, бирок мен көп казыктары бар бирин тандап алууну сунуштайм. Мен бул версияны сатып алдым, бирок сиз бул видеонун сыпаттамасында дагы үч версиясын таба аласыз.

ESP32ди программалоонун ар кандай ыкмалары бар, бирок бул жерде акыркы Arduino IDEди колдонуу керек. Аны орнотуу жана bitluni ESP32lib VGA китепканасын жүктөө үчүн, бул оңой үйрөткүчтү ээрчий аласыз. Ал ошондой эле Arduino IDEдеги ESP32 тактаңызды кантип конфигурациялоону көрсөтөт.

Бул жерде сиз биринчи мисалды жүктөп баштасаңыз болот: бул кадамдын башында сүрөттө көрсөтүлгөндөй File/Examples/bitluni ESP32Lib/VGA2DFeatures баракчасына өтүңүз. Эгерде жүктөө эч кандай көйгөйсүз иштесе, VGA портун кийинки кадамда көрсөтүлгөндөй туташтыруу керек.

2 -кадам: VGA жана Buttons Connection

VGA жана баскычтардын туташуусу
VGA жана баскычтардын туташуусу

VGA мониторун ESP32ге туташтыруу үчүн, DSUB15 аял коннекторун колдонсоңуз болот (б.а. стандарттуу 15 пин VGA) же жөн эле VGA кабелин кесип коюңуз.

Тетрис жана 8 түстүү китепкананын мисалдары үчүн сизге эч кандай каршылыктын кереги жок, төөнөгүчтөрдү төмөнкүдөй туташтырыңыз:

  • VGA кызыл ESP32 пинг G2ге
  • VGA жашыл ESP32 пинг G15ке чейин
  • VSP көк түстөн ESP32 пингге G21
  • VSP HSync to ESP32 ping G32
  • VGA Vsync to ESP32 ping G33
  • VGA GNDден ESP32 GNDге чейин

Бул жерде сиз VGA мониторуңуздагы VGA2DFeatures мисалын көрө алышыңыз керек.

Тетристи ойноо үчүн болжол менен 1ден 2 кОмго чейинки төрт баскыч жана төрт резистор керек.

Төрт резисторду GNDден ESP32 казыктарына G25, G26, G34 жана G35 туташтырыңыз.

Баскычтын бир тарабын ESP32 3.3 Вольтко, экинчи жагын төмөнкүдөй туташтырыңыз:

  • баскычты оңго G26
  • баскыч G34кө солго
  • баскычы G25ке айланат
  • баскычы G35ке чейин

Акыркы кадам: бул барактын аягында ESP32_VGA_Tetris_V1.0.ino жүктөп алып, ошол эле аталыштагы папканы көчүрүп алыңыз.

Аны ESP32 микроконтроллерине жүктөңүз, сиз дароо Tetrisти ойной баштайсыз!

3 -кадам: Жыйынтык жана ыраазычылык

Мен bitluni, ESP32 VGA китепканасынын авторуна жана аны колдонуу жана колдонуу боюнча окуу куралдарына жана мисалдарга абдан ыраазымын.

Сураныч, көбүрөөк маалымат жана анын бардык мүмкүнчүлүктөрүн көрүү үчүн анын сайтына жана видеосуна баш багыңыз.

Акыр -аягы, эгер сиз бул Нускаманы жактырсаңыз, Arduino & microcontrollers конкурсунда ага добуш берүүнү ойлонуп көрүңүз!

Сунушталууда: