Indholdsfortegnelse:

Sådan uploades spil til Arduboy og 500 spil til Flash-cart: 8 trin
Sådan uploades spil til Arduboy og 500 spil til Flash-cart: 8 trin

Video: Sådan uploades spil til Arduboy og 500 spil til Flash-cart: 8 trin

Video: Sådan uploades spil til Arduboy og 500 spil til Flash-cart: 8 trin
Video: ЭТО НУЖНО ЗНАТЬ НОВИЧКАМ! КАК ПРОЙТИ ЭКОНОМНО ОБНОВЛЕННУЮ ЛОКАЦИЮ ЭХО 1 Last Day on Earth: Survival 2024, Juli
Anonim
Sådan uploades spil til Arduboy og 500 spil til Flash-cart
Sådan uploades spil til Arduboy og 500 spil til Flash-cart

Jeg lavede noget hjemmelavet Arduboy med Serial Flash -hukommelse, der kan gemme max 500 spil til at spille på vejen. Jeg håber at dele hvordan man indlæser spil til det, herunder hvordan man gemmer spil i den serielle flash -hukommelse og opretter sin egen konsoliderede spilpakke til at spille på farten.

Du kan se denne youtube video fra ende til anden oprettelsesproces og forklaring

Trin 1: Konfigurer Arduino IDE

Hvis du er ny på Arduino, skal du gå til https://www.arduino.cc for at downloade Arduino IDE til det operativsystem, du bruger f.eks. Windows 10 eller Mac OSX eller Linux.

Installer det derefter.

Trin 2: Lav USBasp -kablet

I modsætning til at indlæse binære koder/spil på ethvert Arduino -kort, kan programmering af bootloaderen ikke udføres via USB -porten.

For at brænde den brugerdefinerede bootloader (Cathy3K) til Atmega32U4 -chippen skal du have en USBasp -programmør. Vores skabelse fungerer dog ved 3.3V, vi er nødt til yderligere at ændre USBasp -programmeren til at fungere i 3.3V.

Se det følgende instruerbare projekt for at ændre din USBasp -programmer til at fungere ved både 3.3V eller 5V gennem jumperindstillinger.

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

Følg derefter pin -layoutet og videoen for at lave USBasp til ArduBaby -programkablet. det originale USBasp -kabel, der følger med USBasp, har to stik, hver med 10 ben. Vi skærer dette kabel halvt og forbinder et 6 -polet hanhoved til den ene ende, mens den anden ende bevares med USBasp -kortet ved 10pin.

Denne anden ende forbinder GND, VCC, MOSI, MISO, SCK, Reset pins fra USBasp til de tilsvarende pins på ATmega32U4 gennem den mandlige header, der forbinder til de første seks pins af den kvindelige header på Ardubaby (min version af hjemmelavet Arduboy). Din version kan have et andet pinlayout. Du kan henvise til min video for at ændre designet, så det passer til din version af hjemmelavet Arduboy.

For at gøre programmet eller brænde bootloaderen til ATmega32U4, fjerner du knaphatten og tilslutter dette 6-benede USBasp-kabel.

Sørg for at markere, hvilken pin der er pin one tydeligt på kabelens overskrift, så det ikke vil gøre den forkerte forbindelse. Da jeg designede pinlayoutet til Ardubaby -knaphattehovederne, forsøgte jeg at arrangere benene således, at selvom du byttede pin 1 med pin 13, vil -ve strømforsyningen ikke ved et uheld mødes med +ve strømforsyningen for at undgå skader. Du ved dog aldrig, der kan ske andre ting, der stadig kan beskadige dit kit, hvis du opretter forbindelse i den forkerte retning.

Jeg brænder et lille hul for at markere det på hovedet ved hjælp af spidsen af loddejernet.

Trin 3: Brænd bootloaderen

MR. Blinky oprettede Arduboy-hjemmelavet pakke til hjemmelavet Arduboy.

Hans pakke indeholder boardchauffører og bibliotek af Arduboy, der fungerer med forskellige versioner af den originale Arduboy såvel som hjemmelavede.

1. Gennemse til MR. Blinkys GitHub -mappe for den hjemmelavede Arduboy. https://github.com/MrBlinky/Arduboy-homemade-package 2. Følg instruktionerne på GitHub for at konfigurere din Arduino IDE med den hjemmelavede pakke. 3. Kopier først url'en til "Ekstra bestyrelseschef" for Arduboy hjemmelavede pakke.

4. Start Arduino IDE. Klik på Præferencer i topmenuen i Arduino. Indsæt denne tekst i "Yderligere Boards Manager -webadresser" Bemærk: Hvis du allerede har anden tekst i dette felt, skal du indsætte denne ekstra tekst i begyndelsen, derefter tilføje en "," og beholde den anden tekst intakt. 5. Afslut Arduino IDE, og start IDE igen for at få virkning af ændringen ovenfor. 6. Klik på Værktøjer -> Board: -> Board Manager. Indtast hjemmelavet for at søge. Vælg at installere den hjemmelavede Arduboy -pakke af Mr. Blinky. Klik derefter på opdater for at få den nyeste version. Pakken tilføjes til Arduino. 7. Vælg nu Værktøjs-> Bord: “Hjemmelavet Arduboy. og vælg følgende parametre for hjemmelavet Arduboy”Baseret på:“SparkFun Pro Micro 5V - Standard ledninger”Kerne:“Arduboy Optimized core”Bootloader:“Cathy3K”Programmer: USBasp 8. Sluk for Ardubaby og fjern knaphatten. 9. Indstil jumperen på USBasp til 3,3V. Sørg for, at du bruger en modificeret USBasp, der udelukkende fungerer i 3.3V. 10. Tilslut USBasp til USB -porten på din computer. Tilslut det specielle USBasp til ArduBaby -kablet til USBasp og den anden ende til Ardubabyens knaphovedhoved, line pin 1 til pin 1. Kun de første 6 pins af Ardubaby bruges til bootloader -brænding.

11. Din Ardubaby skal være tændt nu via den 3.3V strøm, der leveres fra USBasp. 12. Tryk én gang på reset -knappen på ArduBaby. 13. Knyt værktøjs-> tavler-> Burn Bootloader-knappen på Arduino IDE. 14. Kontroller meddelelsen for at se, om bootloader -brændingen er vellykket. 15. Hvis ikke, skal du kontrollere kablet og sørge for at tilslutte stifterne i den rigtige retning og stille pin 1 op med pin 1. Nogle gange vil Ardubaby begynde at spille et tidligere spil, hvis opstartmenuen er timeout. Så du skal hurtigt klikke på knappen Brænd bootloader, lige efter at du har trykket på reset -knappen for at sætte Ardubaby i ventetid på flash -tilstand. 16. Hvis det hele er godt, genstarter ArduBaby, og du vil enten se opstartsmenuen eller det forrige spil, du har indlæst i ArduBaby.

Trin 4: Kompiler og upload enkelt spil til Arduboy

Spil til Arduboy kan downloades fra følgende kilder:

Arduboy community forum for spil:

GitHub-søgningen på "Arduboy-spil" https://github.com/topics/arduboy-game eller søg bare "GitHub arduboy-spil" på google.

Spilsamlinger deles af andre. f.eks. Erwins Arduboy -samlinger

arduboy.ried.cl/

Du kan downloade kildekoden til det spil, som du indlæser til Arduino og uploader det til Arduboy. Se videoen om, hvordan dette gøres.

eller bare hex -filen (den kompilerede binære fil, men præsenteret i hex -nummer udskrives til en tekstfil i stedet for binær fil).

YFor kildekode skal du bare åbne kildekoden i Arduino IDE.

Kildekoden f.eks. picovaders.ino skal gemmes i en mappe med samme navn f.eks. picovaders

De påkrævede Arduboy2 -biblioteker bør allerede være installeret i det foregående trin, hvor vi indlæser bestyrelseslederen for Arduboy hjemmelavet pakke.

Tilslut bare Arduboy til USB -porten på din computer.

Tænd den, og klik derefter på Upload -knappen på Arduino IDE for at kompilere og uploade koden til Arduboy for at spille spillet.

Trin 5: Upload enkelt hex -filer

Hex-fil er en tekstfil, der indeholder binære koder, der resulterer i sammensætningen af dit Arduino-program (skitse), men repræsenteret i et tekstfilformat ved hjælp af tocifrede hexadecimale tal 0-9, A-F.

Du kan få disse hex -filer på forskellige måder.

1. Vi kan downloade hex -filer fra de forskellige kilder, vi forklarede ovenfor:

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

Søg efter "Arduboy -spil" på GitHub.com eller på google.com

Gem disse hex -filer i filer med en udvidelse af.hex.

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

I Arduino IDE skal du vælge Sketch> Export Compiled Binary. Din skitse vil blive kompileret, derefter vil en kopi af den kompilerede.hex -fil blive udsendt til biblioteket på din skitse. Gå til skitsemappen eller vælg Skitse> Vis skitsemappe i IDE for at se hex -filen. Hvis du installerede MR. Blinkys hjemmelavede pakke, oprettes der to versioner af.hex -filen. For eksempel, hvis du kompilerer picovaders.ino sketh, vil de følgende to.hex -filer blive oprettet.

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

Vi vil bruge den første fil: picovaders.ino-arduboy-promicro-ssd1306.hex

3. For at uploade hex -fil til Arduboy skal du bruge en uploader. Der er mange på internettet. Jeg kan godt lide at bruge MR. Blinkys uploader, da den er enkel at bruge.

Gå til https://github.com/MrBlinky/Arduboy-Python-Utilities og følg instruktionerne der for at installere MR. Blinkys Arduboy Python-værktøjer. Hvis du ikke har en python installeret, skal du først følge instruktionerne for at installere python og de nødvendige python -moduler.

4. Tilslut Arduboy til USB -porten på din computer. Tænd for Arduboy.

5. Start shell -programmet i dit operativsystem f.eks. terminalappen i Mac OSX eller kommandoprompten i Windows for at skrive følgende kommandoer for at uploade hex -filen til Arduboy. Tager vores tidligere skitse picovaders.ino som et eksempel.

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

6. Når spillet er uploadet, nulstilles Arduboy og starter spillet.

Trin 6: Skriv spil til Serial Flash

1. For at skrive den konsoliderede spilfil til seriel flash, skal du bruge MR. Blinkys Arduboy Python Utilities igen. Du burde have dette allerede installeret, hvis du følger det foregående trin.

Ellers skal du gå til https://github.com/MrBlinky/Arduboy-Python-Utilities og følge instruktionerne der for at installere MR. Blinkys Arduboy Python-værktøjer. Hvis du ikke har en python installeret, skal du først følge instruktionerne for at installere python og de nødvendige python -moduler.

2. Opret indeksfilen til den konsoliderede spilbilledfil til at indeholde op til 500 spil.

Vi vil bruge scriptet Brug flashcart-builder.py til at opbygge de konsoliderede billedfiler til alle de spil, du vil gemme i den serielle flash på Arduboy. En 16 MB seriel flash kan indeholde op til 500 spil. Dette script bygger et binært flash -billede fra en indeksfil (.csv) og følgende 2 filer for hvert spil: a..hex -filer, der er tekstfilen, der indeholder de hexadecimale koder for de binære billeder af de kompilerede Arduboy -spil. Se filen Se eksempel-flashcart / flashcart-index.csv for eksempel syntaks. Denne fil er inkluderet i pakken, hvis du klikker på Klon eller Download. b.-p.webp

YouTube -videoen forklarer også, hvordan man sætter tingene det rigtige sted i denne.csv -indeksfil. En ting at bemærke, eksemplerne.csv -fil fra MR. Blinkys GitHub bruges i Windows -pc, omvendt skråstreg "\" bruges i sti -navnene. Hvis du bruger et liunx -system eller MAC OSX, skal du ændre det til "/".

For at få en hurtig start kan du downloade min pakke med 63 spil fra https://github.com/cheungbx/ArduBaby 63games.zip

Denne pakke indeholder hex-filer og png-filer fra de 63 spil, jeg har valgt, plus games.csv-indeksfilen og filen games-image.bin, der er bygget med flashcard-builder.py-scriptet.

Du kan tilføje flere spil til games.csv og opbygge din egen konsoliderede spil binære billedfil, der skal skrives til den serielle flash. Du kan sætte max 500 spil på 16M seriel flash.

Jeg forklarer, hvordan du laver.csv -filen ved hjælp af games.csv, som du kan downloade fra min GitHub.

Selvom.csv -filen kan åbnes ved hjælp af excel. Brug IKKE excel til at åbne filen. Det ødelægger filen. Brug kun en almindelig tekst -editor. Du kan bruge notesblok i Windows. Jeg brugte textEdit i MAC og klikker på "Format"-> "Make Plain Text".

Den første linje i.csv -filen er overskriften, du kan ignorere. Liste; Beskrivelse; Titelskærm; Hex -fil

Den anden linje peger på den grafiske billedfil (skal være 128x64 pixel i-p.webp

Spillene konfigureres fra den tredje linje. Spil er organiseret i grupper i bootloader -menuen kaldet kategorier. Denne linje er gruppetitlen på spillelisten for den gruppe f.eks. Action spil. Det peger også på den grafiske billedfil for gruppen af spil. "1" i begyndelsen angiver gruppenummer 1. Alle spil, der følger denne gruppe, starter med dette nummer. 1; Action-spil; kategoriskærme / Action.png;;;

Derefter tilføjer du en linje for hvert spil inden for den gruppe. Startende med gruppe nummer 1, spillets navn og stien til den grafiske fil for et øjebliksbillede af skærmen og stien til hex -filen. Alle adskilt af ";". Tilføj en mere ";" for at springe over parameteren for gemningsfilen. 1; 1943; Arcade/Nineteen43.png; Arcade/Nineteen43.hex;; 1; 2048; Arcade/2048.png; Arcade/2048.hex;;

Når du er færdig med den første gruppe af spil, kan du tilføje den anden gruppe af spil og så videre. f.eks.

9; Demo & Test; demoer/demotest.png;;; 9; varmt smør; demoer/HotButter_AB.png; demoer/HotButter_AB.hex;; 9; Flashcart test; demoer/flashcart-test/flashcart-test-title.png; demoer/flashcart-test/flashcart-test.hex; demoer/flashcart-test/badapple-frames.bin;

Den sidste linje har en gem fil i parameteren, som er en tegneseriefilm.

3. Hvis du vil opbygge den konsoliderede spilbilledfil, skal du indtaste kommandoen, hvor games.csv er din spilindeksfil.

python flashcart-builder.py spil.csv

Dette vil oprette en fil med navnet games-image.bin

4. Skriv den konsoliderede spilbilledfil til Arduboy.

Vi bruger MR. Blinkys flashcart-writer.py script til at skrive den konsoliderede spilbilledfil til den serielle flash-hukommelse i Arduboy.

Hvis du bruger min sample games-image.bin-fil, kan du skrive denne kommando.

python flashcart-writer.py spil-image.bin

Hvis du bruger en SSD1309 OLED -skærm i stedet for SSD1306 OLED på standardbygningen, kan du lappe skærmdriveren med det samme. For automatisk at anvende SSD1309-patchen på det uploadede billede skal du lave en kopi af flashcart-writer.py og omdøbe den til flashcart-writer-1309.py. Skriv derefter

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

Trin 7: Spil spil fra seriel flash

Hvis du vil spille spil fra seriel flash, skal du tænde for Arduboy.

Hvis du allerede har et spil indlæst, starter spillet automatisk. Tryk én gang på reset -knappen øverst på Ardubaby for at gå til bootloader -menuen.

Bootloader -menuen vises. RGB -LED'en lyser i rækkefølge.

Hvis du i stedet ser et ikon, der ligner en USB -port, betyder det, at din serielle flash -hukommelseschip ikke fungerer. Kontroller ledningerne.

Hvis du ikke trykker på nogen taster inden for 12 sekunder, køres spillet, der allerede er gemt i ATMega32U4s interne flash -hukommelse.

For at gå tilbage fra et spil til bootloader -menuen skal du bare trykke på knappen Nulstil en gang.

Du kan trykke på venstre eller højre knap for at rulle gennem den forskellige kategori (gruppe) af spil. Tryk på knappen ned eller op for at rulle gennem spil inden for en kategori (gruppe). Tryk på knappen "B" for at kopiere spillet fra den serielle flash -hukommelse til ATMega32U4s interne Flash -hukommelse. Spillet starter inden for et sekund.

Nu har du en lille spillekonsol, som du kan spille på farten.

Jeg udfordrer dig til at samle og indlæse din 16M seriel flash med 500 spil. Jeg har ikke set nogen, der har gjort det endnu for at fylde serienummeret op. Hvis du kan gøre det, må du dele den konsoliderede spilfil med os.

Trin 8: Referencer

En fuld instruktion herom vil blive offentliggjort i dette link til Instructables.comTBD

Youtube-video til demonstration af ArduBaby-spilkonsollen

Youtube -video til 3.3V modifikation af USBasp bootloader programmereren.

Spilfiler og skemaer for kredsløbet i denne video findes på dette GitHub -link

Skemaer

MR. Blinkys GitHub-link til Arduboy hjemmelavet pakke

MR. Blinkys GitHub-link til python-værktøjer til spiloverførsel og seriel flash-hukommelsesoperationer

Erwins Arduboy -spilsamlinger

Kreditter til skaberen (Kevin Bates), Arduboy er en meget vellykket 8 bit spilkonsol. Der var tusindvis af spil skrevet af amatøren, som delte dem frit på Arduboy's community forum, så flere mennesker kan lære at kode.

Kreditter til MR. Blinky for at oprette den hjemmelavede pakke, flashcart og python -værktøjer.

Anbefalede: