Paragon-projektet: DOOM på en Arduino Nano ESP32
Det finns en klassisk fråga i datorspelens universum - men kan den köra Crysis? Men i världen av mikrodatorspel och mikrokontroller har vi en något annorlunda fråga - men kan den köra DOOM?
Nu har vi äntligen svaret för Arduino Nano. Och svaret är: ja!
Du kan faktiskt spela DOOM på en Arduino Nano ESP32, om än med några nödvändiga justeringar.
Men i slutet av detta lilla projekt kommer du att ha en helt portabel DOOM-konsol.
Stort tack till Naveen, som skapade detta och sedan laddade upp detaljerna till hackster.io för att visa dig hur du kan sätta ihop det själv!
Och det här är verkligen otroligt enkelt. Allt du behöver göra är att koppla ihop komponenterna och sedan konfigurera och flasha den inbyggda programvaran för att få igång DOOM.
På hacker.io-sidan uppskattar man att det här projektet kommer att ta 5 timmar. Men jag skulle säga att du förmodligen kan få det gjort mycket snabbare än så med Naveens fantastiska instruktioner.
Hårdvara
Så, som redan nämnts, kretsar detta projekt kring en Arduino Nano ESP32. Naveen har valt en Adafruit 2,8″ kapacitiv TFT-pekskärm som skärm, men om du har en annan skärm liggandes runt omkring så går det säkert bra.
Dessutom har Naveen använt en breadboard för att hålla ihop allt. Som du kanske har märkt är den här konsolen också gjord av lite överbliven plast för att bevisa konceptet. Naturligtvis kommer något sådant bara att fungera som en tillfällig lösning.
Om du vill ansluta den permanent kan du behöva vara kreativ med ett 3D-utskrivet hölje och en lödkolv.
Hur som helst, bortsett från det, om du tittar på bilden nedan ser du att Naveen också har använt en M5Stack Joystick och en Seeed Studio Grove dubbelknapp. Återigen, om du har en annan joystick eller andra knappar som ligger runt, kommer de att räcka.
Slutligen behöver du naturligtvis några jumperkablar för att koppla ihop allt via breadboardet.
Som Naveen förklarar är kopplingen mellan Nano och TFT-skärmen baserad på det seriella periferigränssnittet (SPI). Samtidigt är joysticken och knapparna anslutna via Interintegrerad kretsbuss (I2C).
Programvara
Naveen förtydligar att för att kunna porta DOOM måste spelet modifieras något, eftersom originalspelet kräver mer RAM och diskutrymme än vad Arduino Nano erbjuder.
Därför baseras installationen på Ducalex mycket coola Retro-Go-förvar på GitHub, som är inbyggd programvara som modifierar klassiska spel för ESP32-enheter.
För det här projektet har Naveen konfigurerat den så att den fungerar med joysticks, knappar och display. en DOOM-konfiguration som du säkert kommer att uppskatta.
Sedan behöver du bara flasha den inbyggda programvaran. Och sedan behöver du en konfigurationsfil för att aktivera WiFi automatiskt på ESP32.
Lägg detta på SD-kortet och sätt sedan in det i din Arduino Nano.
Spelet har en genomsnittlig bildhastighet på 34 FPS med en upplösning på 320×240 pixlar.
Nu kan du ha DOOM på språng med en Arduino Nano!
Slutsats
Du hittar fullständiga scheman, kod och mer information på sidan hacker.io.
Du kan också kolla in fler Paragon-projekt som vi har presenterat genom att klicka på här.
Vi har berättat om ett av Naveens projekt tidigare, Dator med mikrokontroller.
Låt mig avsluta detta med en bekännelse. För att vara ärlig har jag faktiskt aldrig genomfört det klassiska, fullständiga DOOM - har du?
это ложь в некоторой степени. представленная ссылка ведёт на Ардуино нано с атмега 128, а на картинках esp32. это небо и земля
Да, ссылка была неверной - спасибо за комментарий!
det är inte en Arduino nano med en atmega 328 (som den du länkade till).
Det är en Arduino nano-stm32. vilket inte är så chockerande att köra Doom på. betydligt kraftfullare än t.ex. en Amiga 500, som folk har fått Doom att köra på.
Ja, länken var felaktigt listad. Vi ber om ursäkt för misstaget!
det är en nano-esp32-version. Jag trodde att för en
ögonblick då du körde detta på en AVR nano.
Nej, jag är ledsen. Jag gjorde inte ESP32-delen tillräckligt tydlig! Jag har korrigerat texten.
Det är en "minimal" skillnad mellan en Arduino Nano (8 MHz, 2 kB RAM) och en ESP32 (240 MHz, mycket mer RAM)! Det är komplett irreführend formulerat.
Du har helt rätt! Ich habe den Text korrigiert. Tack för din kommentar!
Men du talar mycket bra tyska. Var kom du ifrån?
это не просто Arduino Nano, а ардуино с контроллером esp32. А ссылка отправляет нас в магазин где просто arduino nano, а не esp32
Да, ссылка была неверной - спасибо за комментарий!
Что бы писать такие статьи, нужно хоть немного разбираться в этом. Создатель молодец, а автор статьи написал полную ахинею.
Хаха извини за ахинею!
просьба поменять заголовок, так как используется Arduino Nano ESP32
Все в порядке?
to nie jest Arduino nano !
nano jest na atmedze a nie na esp
Masz rację, przepraszam za pomyłkę! Till Arduino Nano ESP32
wifi na karcie SD ???
Myślę, że w tłumaczeniu brakowało jednego słowa. Teraz lepiej?
ganska fast i esp idf framsteg. (koden är inte densamma som i era dokument) finns det en förkompilerad version som bara behöver laddas upp?
det skulle vara trevligt 😀.
Verkar som att min sista kommentar inte gick igenom haha
Jag är ganska fast vid esp-idf-utvecklingen. koden verkar ha ändrats över tiden.
ville bygga en till mina barn i julklapp haha
Finns det något alternativ för att få en förkompilerad bin-fil att ladda upp till esp32?
Med vänliga hälsningar och stort tack
Robbert