Innehållsförteckning:

Hur man laddar upp spel till Arduboy och 500 spel till Flash-cart: 8 steg
Hur man laddar upp spel till Arduboy och 500 spel till Flash-cart: 8 steg

Video: Hur man laddar upp spel till Arduboy och 500 spel till Flash-cart: 8 steg

Video: Hur man laddar upp spel till Arduboy och 500 spel till Flash-cart: 8 steg
Video: Hur man laddar upp spel på Hamsterpaj 2024, November
Anonim
Hur man laddar upp spel till Arduboy och 500 spel till Flash-cart
Hur man laddar upp spel till Arduboy och 500 spel till Flash-cart

Jag gjorde några hemlagade Arduboy med Serial Flash -minne som kan lagra max 500 spel att spela på vägen. Jag hoppas kunna dela hur man laddar spel till det, inklusive hur man lagrar spel i det seriella flashminnet och skapar ett eget konsoliderat spelpaket för att spela på vägen.

Du kan se den här YouTube -videon för att skapa och förklara hela processen från början till slut

Steg 1: Konfigurera Arduino IDE

Om du är ny på Arduino, bläddra till https://www.arduino.cc för att ladda ner Arduino IDE för operativsystemet du använder t.ex. Windows 10 eller Mac OSX eller Linux.

Installera den sedan.

Steg 2: Gör USBasp -kabeln

Till skillnad från att ladda binära koder/spel till något Arduino -kort kan programmering av startladdaren inte göras via USB -porten.

För att bränna den anpassade startladdaren (Cathy3K) till Atmega32U4 -chipet måste du skaffa en USBasp -programmerare. Vår skapelse fungerar dock på 3.3V, vi måste ytterligare modifiera USBasp -programmeraren för att fungera i 3.3V.

Se följande instruerbara projekt för att ändra din USBasp -programmerare för att fungera både på 3,3V eller 5V via bygelinställningar.

www.instructables.com/id/Modify-a-5V-USBasp-Arduino-Bootloader-Programmer-t/

Följ sedan stiftlayouten och videon för att göra USBasp till ArduBaby -programkabel. den ursprungliga USBasp -kabeln som medföljer USBasp har två kontakter, vardera 10 stift. Vi skär den här kabeln på mitten och ansluter en 6 -stifts hanrubrik till den ena änden medan den andra änden som ansluts med USBasp -kortet sitter kvar på 10pin.

Denna andra ände kommer att ansluta GND, VCC, MOSI, MISO, SCK, Återställ stiften från USBasp till motsvarande stift på ATmega32U4 genom den manliga rubriken som ansluter till de första sex stiften i den kvinnliga rubriken på Ardubaby (min version av hemlagad Arduboy). Din version kan ha en annan pin -layout. Du kan hänvisa till min video för att ändra designen för att passa din version av hemlagad Arduboy.

För att göra programmet eller bränna startladdaren till ATmega32U4, tar du bort knapphatten och ansluter den här 6-poliga USBasp-kabeln.

Se till att du markerar vilken stift som är stift ett tydligt på kabelns sidhuvud så att det inte blir fel anslutning. När jag utformade stiftlayouten för Ardubaby -knapphuvudena försökte jag ordna stiften så att även om du bytte stift 1 med stift 13, kommer -ve -strömförsörjningen inte av misstag att träffa +ve -strömförsörjningen för att undvika skador. Men du vet aldrig, andra saker kan hända som fortfarande kan skada ditt kit om du ansluter i fel riktning.

Jag kommer att bränna ett litet hål för att markera det på huvudet med hjälp av spetsen på lödkolven.

Steg 3: Bränn Bootloader

MR. Blinky skapade Arduboy-hemlagad-paketet för hemlagad Arduboy.

Hans paket innehåller styrelsedrivrutinerna och biblioteket för Arduboy som fungerar med olika versioner av den ursprungliga Arduboy samt hemgjorda.

1. Bläddra till MR. Blinkys GitHub -mapp för den hemlagade Arduboy. https://github.com/MrBlinky/Arduboy-homemade-package 2. Följ instruktionerna på GitHub för att konfigurera din Arduino IDE med det hemlagade paketet. 3. Kopiera först webbadressen till “Extra board manager” för Arduboy hemlagade paket.

4. Starta Arduino IDE. Klicka på Preferenser från Arduino -toppmenyn. Klistra in den här texten i "Ytterligare Boards Manager -webbadresser" Obs! Om du redan har annan text i det här fältet, infoga den här texten i början, lägg till en "," och behåll den andra texten intakt. 5. Avsluta Arduino IDE och starta IDE igen för att träda i kraft av ändringen ovan. 6. Klicka på Verktyg -> Board: -> Board Manager. Ange hemlagad för att söka. Välj att installera det hemlagade Arduboy -paketet av Mr. Blinky. Klicka sedan på uppdatera för att få den senaste versionen. Paketet kommer att läggas till Arduino. 7. Välj nu Verktygs-> Board:”Hemmagjord Arduboy. och välj följande parametrar för Hemlagad Arduboy”Baserat på:” SparkFun Pro Micro 5V - Standardkoppling”Kärna:” Arduboy Optimized core”Bootloader:“Cathy3K”Programmerare: USBasp 8. Stäng av Ardubaby och ta bort knapphatten. 9. Ställ bygeln på USBasp till 3.3V. Se till att du använder en modifierad USBasp som fungerar helt i 3.3V. 10. Anslut USBasp till USB -porten på din dator. Anslut den speciella USBasp till ArduBaby -kabeln till USBasp och den andra änden till knapphuvudet på Ardubaby, rad upp stift 1 till stift 1. Endast de första 6 stiften i Ardubaby används för startladdning.

11. Din Ardubaby ska vara påslagen nu via den 3,3V strömförsörjning som levereras av USBasp. 12. Tryck en gång på återställningsknappen på ArduBaby. 13. Klicka på Verktygs-> Kort-> Burn Bootloader-knappen på Arduino IDE. 14. Kontrollera meddelandet för att se om bootloader -bränningen lyckades. 15. Om inte, kontrollera kabeln och se till att du ansluter stiften i rätt riktning och ställer in stift 1 med stift 1. Ibland börjar Ardubaby spela ett tidigare spel om startmenyn tar slut. Så du måste klicka på knappen Burn bootloader snabbt direkt efter att du har tryckt på återställningsknappen för att sätta Ardubaby i vänteläge för blixtläge. 16. Om allt är bra kommer ArduBaby att starta om och du kommer att se antingen startmenyn eller det tidigare spelet du har laddat till ArduBaby.

Steg 4: Kompilera och ladda upp enskilda spel till Arduboy

Spel för Arduboy kan laddas ner från följande källor:

Arduboy community forum för spel:

GitHub-sökningen på "Arduboy-spel" https://github.com/topics/arduboy-game eller sök bara "GitHub arduboy-spel" på google.

Spelsamlingar som delas av andra. t.ex. Erwins Arduboy -samlingar

arduboy.ried.cl/

Du kan ladda ner källkoden för spelet som du laddar bilen till Arduino och ladda upp till Arduboy. Se videon om hur detta görs.

eller bara hex -filen (den sammanställda binära filen men presenterad i Hex -nummer skriv ut till en textfil istället för binär fil).

YFör källkod, öppna bara källkoden i Arduino IDE.

Källkoden t.ex. picovaders.ino måste lagras i en mapp med samma namn, t.ex. picovaders

De nödvändiga Arduboy2 -biblioteken bör redan vara installerade i föregående steg där vi laddar styrelsechefen för Arduboy hemlagade paket.

Anslut bara Arduboy till USB -porten på din dator.

Slå på den och klicka sedan på Upload -knappen på Arduino IDE för att kompilera och ladda upp koden till Arduboy för att spela spelet.

Steg 5: Ladda upp enstaka Hex -filer

Hex-fil är en textfil som innehåller binära koder som resulterar i sammanställningen av ditt Arduino-program (skiss), men representeras i ett textfilformat med tvåsiffriga hexadecimala siffror 0-9, A-F.

Du kan få dessa hex -filer på olika sätt.

1. Vi kan ladda ner hex -filer från de olika källorna som vi förklarade ovan:

community.arduboy.com/c/games Erwins Arduboy -spelsamlingar

Sök efter "Arduboy -spel" på GitHub.com eller på google.com

Spara dessa hex -filer i filer med en förlängning av.hex.

2. Alternativt kan du skapa din egen hex -fil.

I Arduino IDE väljer du Sketch> Export Compiled Binary. Din skiss kommer att sammanställas, sedan kommer en kopia av den sammanställda.hex -filen att skickas till katalogen för din skiss. Bläddra till skissmappen eller välj Sketch> Show Sketch Folder i IDE för att se hex -filen. Om du installerade MR. Blinkys hemlagade paket skapas två versioner av.hex -filen. Om du till exempel sammanställer picovaders.ino sketh, kommer följande två.hex -filer att skapas.

picovaders.ino-arduboy-promicro-ssd1306.hex picovaders.ino with_bootloader-arduboy-promicro-ssd1306.hex

Vi kommer att använda den första filen: picovaders.ino-arduboy-promicro-ssd1306.hex

3. För att ladda upp hex -fil till Arduboy måste du använda en uppladdare. Det finns många på internet. Jag gillar att använda MR. Blinkys uppladdare eftersom det är enkelt att använda.

Bläddra till https://github.com/MrBlinky/Arduboy-Python-Utilities och följ instruktionerna där för att installera MR. Blinkys Arduboy Python-verktyg. Om du inte har en python installerad måste du först följa instruktionerna för att installera python och nödvändiga python -moduler.

4. Anslut Arduboy till datorns USB -port. Slå på Arduboy.

5. Starta skalprogrammet i ditt operativsystem t.ex. terminalappen i Mac OSX eller kommandotolken i Windows för att skriva följande kommandon för att ladda upp hex -filen till Arduboy. Ta vår tidigare skiss picovaders.ino som ett exempel.

python uploader.py picovaders.ino-arduboy-promicro-ssd1306.hex

6. När spelet har laddats upp kommer Arduboy att återställa och starta spelet.

Steg 6: Skriv spel till Serial Flash

1. För att skriva den konsoliderade spelfilen till seriell flash måste du använda MR. Blinkys Arduboy Python Utilities igen. Du bör ha detta redan installerat om du följer föregående steg.

Annars går du till https://github.com/MrBlinky/Arduboy-Python-Utilities och följer instruktionerna där för att installera MR. Blinkys Arduboy Python-verktyg. Om du inte har en python installerad måste du först följa instruktionerna för att installera python och nödvändiga python -moduler.

2. Skapa indexfilen för den konsoliderade spelbildfilen för att rymma upp till 500 spel.

Vi kommer att använda skriptet Använd flashcart-builder.py för att bygga en konsoliderad bildbildfil för alla spel du vill lagra i Arduboy serieblixt. En 16 MB seriell blixt kan rymma upp till 500 spel. Detta skript bygger en binär flash -bild från en indexfil (.csv) och följande 2 filer för varje spel: a..hex -filer som är textfilen som innehåller hexadecimala koder för de binära bilderna i de sammanställda Arduboy -spelen. Se filen Se exempel-flashcart / flashcart-index.csv för exempelvis syntax. Denna fil ingår i paketet om du klickar på Klon eller Hämta. b.-p.webp

YouTube -videon förklarar också hur du placerar saker på rätt plats för denna.csv -indexfil. En sak att notera, exemplen.csv -fil från MR. Blinkys GitHub används i Windows PC, backslash "\" används i sökvägarna. Om du använder ett liunx -system eller MAC OSX måste du ändra det till "/".

För att få en snabb start kan du ladda ner mitt paket med 63 spel från https://github.com/cheungbx/ArduBaby 63games.zip

Detta paket innehåller hex-filer och png-filer för de 63 spel jag har valt, plus filen games.csv och filen-image.bin som är byggd med flashcard-builder.py-skriptet.

Du kan lägga till fler spel i games.csv och bygga din egen konsoliderade binära bildfil för att skrivas till den seriella flashen. Du kan sätta max 500 spel på 16M seriell blixt.

Jag ska förklara hur du gör.csv -filen med games.csv som du kan ladda ner från min GitHub.

Även om.csv -filen kan öppnas med excel. Använd INTE excel för att öppna filen. Det kommer att skada filen. Använd bara en vanlig textredigerare. Du kan använda anteckningsblock i Windows. Jag använde textEdit i MAC och klickade på "Format"-> "Make Plain Text".

Den första raden i.csv -filen är rubriken du kan ignorera. Lista; Beskrivning; Titelskärm; Hexfil

Den andra raden pekar på den grafiska bildfilen (måste vara 128x64 pixlar i-p.webp

Spelen konfigureras från den tredje raden. Spel är organiserade i grupper i bootloader -menyn som kallas kategorier. Den här raden är grupptiteln i listan över spel för den gruppen t.ex. Action spel. Det pekar också på den grafiska bildfilen för gruppen spel. "1" i början betecknar grupp nummer 1. Alla spel som följer den här gruppen börjar med detta nummer. 1; Action-spel; kategori-skärmar / Action.png;;;

Sedan lägger du till en rad för varje spel inom den gruppen. Börjar med grupp nummer 1, spelets namn och sökvägen till den grafiska filen för en ögonblicksbild av skärmen och sökvägen till hexfilen. Alla separerade med ";". Lägg till en till ";" för att hoppa över parametern för spara filen. 1; 1943; Arcade/Nineteen43.png; Arcade/Nineteen43.hex;; 1; 2048; Arcade/2048.png; Arcade/2048.hex;;

När du är klar med den första gruppen av spel kan du lägga till den andra gruppen av spel och så vidare. t.ex.

9; Demo & Test; demos/demotest.png;;; 9; Hot butter; demos/HotButter_AB.png; demos/HotButter_AB.hex;; 9; Flashcart test; demos/flashcart-test/flashcart-test-title.png; demos/flashcart-test/flashcart-test.hex; demos/flashcart-test/badapple-frames.bin;

Den sista raden har en sparfil i parametern som är en tecknad film.

3. För att bygga den konsoliderade spelbildfilen, skriv kommandot, där games.csv är din spelindexfil.

python flashcart-builder.py games.csv

Detta skapar en fil med namnet games-image.bin

4. Skriv den konsoliderade spelbildfilen till Arduboy.

Vi använder MR. Blinkys flashcart-writer.py-skript för att skriva den konsoliderade spelbildfilen till det seriella flashminnet i Arduboy.

Om du använder min sample games-image.bin-fil kan du skriva det här kommandot.

python flashcart-writer.py games-image.bin

Om du använder en SSD1309 OLED -skärm istället för SSD1306 OLED på standardversionen kan du patcha skärmdrivrutinen direkt. För att automatiskt tillämpa SSD1309-korrigeringen på den uppladdade bilden, gör en kopia av flashcart-writer.py och byt namn på den till flashcart-writer-1309.py. Skriv sedan

python flashcart-writer-1309.py games-image.bin

Steg 7: Spela spel från seriell blixt

För att spela spel från serieblixt, slå på Arduboy.

Om du redan har ett spel laddat startar spelet automatiskt. Tryck en gång på återställningsknappen högst upp på Ardubaby för att gå till startladdningsmenyn.

Bootloader -menyn visas. RGB -lysdioden tänds i följd.

Om du ser en ikon som ser ut som en USB -port visas istället, betyder det att ditt seriella flashminnechip inte fungerar. Kontrollera ledningarna.

Om du inte trycker på några knappar inom 12 sekunder körs spelet som redan är lagrat i ATMega32U4: s interna flashminne.

För att gå tillbaka från ett spel till bootloader -menyn, tryck bara på knappen Återställ en gång.

Du kan trycka på vänster eller höger knapp för att bläddra igenom olika kategorier (grupp) av spel. Tryck på nedåt- eller uppåtknappen för att bläddra igenom spelen inom en kategori (grupp). Tryck på "B" -knappen för att kopiera spelet från det seriella flashminnet till ATMega32U4: s interna Flash -minne. Spelet startar inom en sekund.

Nu har du en liten spelkonsol som du kan spela på vägen.

Jag utmanar dig att samla in och ladda upp din 16M serieblixt med 500 spel. Jag har inte sett någon som har gjort det än för att fylla på serieblixten. Om du kan göra det, dela den konsoliderade spelfilen med oss.

Steg 8: Referenser

En fullständig instruktion om detta kommer att publiceras i denna länk till Instructables.comTBD

Youtube-video för demonstration av spelkonsolen ArduBaby

Youtube -video för 3.3V modifiering av USBasp bootloader programmerare.

Spelfiler och scheman för kretsen i den här videon finns på denna GitHub -länk

Schemat

MR. Blinkys GitHub-länk för Arduboy hemgjorda paket

MR. Blinkys GitHub-länk för pythonverktyg för spelöverföring och seriell flashminnehantering

Erwins Arduboy -spelsamlingar

Tack till skaparen (Kevin Bates), Arduboy är en mycket framgångsrik 8 -bitars spelkonsol. Det fanns tusentals spel skrivna av amatören som delade dem fritt på Arduboys communityforum så att fler kan lära sig att koda.

Krediter till MR. Blinky för att skapa det hemlagade paketet, flashcart och pythonverktygen.

Rekommenderad: