Inhoudsopgave:

ESP32 VGA Tetris: 3 stappen
ESP32 VGA Tetris: 3 stappen

Video: ESP32 VGA Tetris: 3 stappen

Video: ESP32 VGA Tetris: 3 stappen
Video: ESP32 VGA [Arduino, 3D] 2024, Juli-
Anonim
ESP32 VGA Tetris
ESP32 VGA Tetris

In deze Instructables zal ik laten zien hoe je een kloon van het klassieke spel Tetris kunt bouwen, met behulp van een ESP32 en het genereren van de output voor een VGA-monitor. Deze game wordt mogelijk gemaakt door de verbazingwekkende ESP32Lib Arduino-bibliotheek van bitluni.

Je hebt de ESP32-kaartondersteuning nodig die is geïnstalleerd in de Arduino IDE (ik gebruik de laatste versie die nu beschikbaar is, d.w.z. de 1.8.9 IDE). Je kunt het vinden in de Bibliotheek Manager, zoekend naar "bitluni". Aangezien de laatste versie slechts een paar weken geleden is gepubliceerd, is er nog steeds aan gewerkt, maar het geeft al enkele eenvoudige voorbeelden.

Vergeleken met mijn eerdere projecten waar ik soortgelijke vintage game-klonen schreef voor de Arduino of ESP8266, is de ESP32 extreem krachtiger, de VGA-uitgang met verschillende resoluties (320x200, 320x240, 360x400, 460x480) en tot 14-bits kleuren. Verder heb je orden van grootte meer geheugen.

In deze Tetris-kloon gebruik ik gewoon een resolutie van 320x200 met 8 kleuren. De code is een snelle "conversie" van een eerdere versie voor de Arduino VGA, dus het is slecht ontworpen en niet geoptimaliseerd. Aan de andere kant is het ESP32 VGA-potentieel veel hoger, wat de mogelijkheid geeft om steeds meer geavanceerde games te schrijven die, denk ik, vergelijkbaar zijn met die uit het DOS-tijdperk. Ik zou willen dat dit project van nut zou zijn voor andere makers om in de toekomst veel andere spellen te schrijven.

Stap 1: ESP32-kaarten, Arduino IDE-installatie en configuratie

ESP32-kaarten, Arduino IDE-installatie en -configuratie
ESP32-kaarten, Arduino IDE-installatie en -configuratie

Allereerst dien je een ESP32 aan te schaffen. Er zijn veel versies beschikbaar, maar ik raad aan om er een te kiezen met veel pinnen. Ik heb deze versie gekocht, maar je kunt drie andere versies vinden in de beschrijving van deze video.

Er zijn verschillende methoden om de ESP32 te programmeren, maar hier moet je de nieuwste Arduino IDE gebruiken. Om het te installeren en om de bitluni ESP32lib VGA-bibliotheek te uploaden, kunt u deze eenvoudige tutorial volgen. Het laat ook zien hoe u uw specifieke ESP32-bord in de Arduino IDE kunt configureren.

Op dit punt kunt u beginnen met het uploaden van het eerste voorbeeld: ga naar File/Examples/bitluni ESP32Lib/VGA2DFeatures, zoals weergegeven in de afbeelding aan het begin van deze stap. Als het uploaden probleemloos werkt, moet u de VGA-poort aansluiten zoals weergegeven in de volgende stap.

Stap 2: VGA- en knoppenverbinding

VGA en Knoppen Aansluiting
VGA en Knoppen Aansluiting

Om de VGA-monitor op de ESP32 aan te sluiten, kunt u ofwel een vrouwelijke DSUB15-connector gebruiken (d.w.z. een standaard 15-pins VGA-connector) of gewoon een VGA-kabel doorknippen.

Voor Tetris en de voorbeelden van de bibliotheek met 8 kleuren heeft u geen weerstand nodig, sluit de pinnen gewoon als volgt aan:

  • VGA rood naar ESP32 ping G2
  • VGA groen naar ESP32 ping G15
  • VGA blauw naar ESP32 ping G21
  • VGA Hsync naar ESP32 ping G32
  • VGA Vsync naar ESP32 ping G33
  • VGA GND naar ESP32 GND

Op dit punt zou u het voorbeeld van VGA2DFeatures op uw VGA-monitor moeten kunnen zien.

Om Tetris te spelen heb je vier knoppen en vier weerstanden van ongeveer 1 tot 2 kOhm nodig.

Sluit de vier weerstanden van GND aan op de ESP32-pinnen G25, G26, G34 en G35.

Sluit de ene kant van de knop als volgt aan op ESP32 3,3 Volt en de andere kant:

  • knop rechts naar G26
  • knop links naar G34
  • knop draaien naar G25
  • knop omlaag naar G35

Laatste stap: download ESP32_VGA_Tetris_V1.0.ino aan het einde van deze pagina en kopieer het naar een map met dezelfde naam.

Upload het op de ESP32-microcontroller en je kunt meteen beginnen met Tetris spelen!

Stap 3: Conclusie en dankbetuigingen

Ik ben bitluni zeer dankbaar, de auteur van de ESP32 VGA-bibliotheek en de tutorials en voorbeelden om het te gebruiken en te exploiteren.

Bezoek zijn site en video om meer details en al zijn mogelijkheden te zien.

Eindelijk, als je deze Instructable leuk vond, overweeg dan om ervoor te stemmen in de Arduino & microcontrollers-wedstrijd!

Aanbevolen: