Indholdsfortegnelse:

ESP32 VGA Tetris: 3 trin
ESP32 VGA Tetris: 3 trin

Video: ESP32 VGA Tetris: 3 trin

Video: ESP32 VGA Tetris: 3 trin
Video: ESP32 VGA four games & joystick 2024, November
Anonim
ESP32 VGA Tetris
ESP32 VGA Tetris

I denne Instructables vil jeg vise, hvordan man bygger en klon det klassiske spil Tetris, ved hjælp af en ESP32 og genererer output til en VGA -skærm. Dette spil er muliggjort af det fantastiske ESP32Lib Arduino -bibliotek udført af bitluni.

Du skal bruge ESP32 -kortstøtten installeret i Arduino IDE (jeg bruger den sidste tilgængelige version nu, dvs. 1.8.9 IDE). Du kan finde det i Library Manager, der søger efter "bitluni". Siden den sidste version er blevet offentliggjort for et par uger siden, er den stadig i gang, men den giver allerede nogle enkle eksempler.

Sammenlignet med mine tidligere projekter, hvor jeg skrev lignende vintage spilkloner til Arduino eller ESP8266, er ESP32 ekstremt mere kraftfuld, VGA -output med forskellige opløsninger (320x200, 320x240, 360x400, 460x480) og op til 14Bit farver. Desuden har du størrelsesordener mere hukommelse.

I denne Tetris -klon bruger jeg bare en opløsning på 320x200 med 8 farver. Koden er en hurtig "konvertering" af en tidligere version til Arduino VGA, derfor er den dårligt designet og ikke optimeret. På den anden side er ESP32 VGA -potentialet meget højere, hvilket giver mulighed for at skrive flere og mere sofistikerede spil, som jeg gætter på, kan sammenlignes med dem fra DOS -æraen. Jeg ville ønske, at dette projekt ville være til nytte for andre producenter til at skrive mange andre spil i fremtiden.

Trin 1: ESP32 -plader, Arduino IDE -installation og konfiguration

ESP32 -plader, Arduino IDE -installation og -konfiguration
ESP32 -plader, Arduino IDE -installation og -konfiguration

Først og fremmest skal du puchase en ESP32. Der er mange versioner til rådighed, men jeg anbefaler at vælge en med mange pins. Jeg købte denne version, men du kan finde tre andre versioner i beskrivelsen af denne video.

Der er forskellige metoder til at programmere ESP32, men her skal du bruge den nyeste Arduino IDE. For at installere det og uploade bitluni ESP32lib VGA -biblioteket kan du følge denne nemme vejledning. Det viser også, hvordan du konfigurerer dit specifikke ESP32 -kort i Arduino IDE.

På dette tidspunkt kan du begynde at uploade det første eksempel: Gå til Filer/Eksempler/bitluni ESP32Lib/VGA2DFeatures, som vist på billedet i begyndelsen af dette trin. Hvis upload fungerer uden problemer, skal du tilslutte VGA -porten som vist i næste trin.

Trin 2: Tilslutning af VGA og knapper

VGA og knapper tilslutning
VGA og knapper tilslutning

For at tilslutte VGA -skærmen til ESP32 kan du enten bruge et DSUB15 hunstik (dvs. en standard 15 -pins VGA) eller bare klippe et VGA -kabel.

For Tetris og bibliotekseksemplerne med 8 farver har du ikke brug for nogen modstand, bare tilslut stifterne som følger:

  • VGA rød til ESP32 ping G2
  • VGA grøn til ESP32 ping G15
  • VGA blå til ESP32 ping G21
  • VGA Hsync til ESP32 ping G32
  • VGA Vsync til ESP32 ping G33
  • VGA GND til ESP32 GND

På dette tidspunkt skal du kunne se eksemplet på VGA2DFeatures på din VGA -skærm.

For at spille Tetris skal du bruge fire knapper og fire modstande på cirka 1 til 2 kOhm.

Tilslut de fire modstande til fra GND til ESP32 -benene G25, G26, G34 og G35.

Tilslut den ene side af knappen til ESP32 3.3 Volt, og den anden side som følger:

  • knappen lige til G26
  • knap venstre til G34
  • knappen drejes til G25
  • knap ned til G35

Sidste trin: download ESP32_VGA_Tetris_V1.0.ino i slutningen af denne side, og kopier den til en mappe med samme navn.

Upload den på ESP32 mikrokontroller, og du kan straks begynde at spille Tetris!

Trin 3: Konklusion og anerkendelser

Jeg er meget taknemmelig over for bitluni, forfatteren af ESP32 VGA -biblioteket og selvstudierne og eksemplerne til at bruge og udnytte det.

Besøg venligst hans websted og video for at se flere detaljer og alle dets muligheder.

Endelig, hvis du kunne lide denne Instructable, overvej at stemme på den i Arduino & microcontrollers -konkurrencen!

Anbefalede: