Innholdsfortegnelse:

Ardubaby minispillkonsoll med 500 spill: 10 trinn
Ardubaby minispillkonsoll med 500 spill: 10 trinn

Video: Ardubaby minispillkonsoll med 500 spill: 10 trinn

Video: Ardubaby minispillkonsoll med 500 spill: 10 trinn
Video: Power On: The Story of Xbox | Chapter 6: TV…Or Not TV 2024, Juli
Anonim
Ardubaby minikonsoll med 500 spill
Ardubaby minikonsoll med 500 spill
Ardubaby minikonsoll med 500 spill
Ardubaby minikonsoll med 500 spill

Kreditt til skaperen (Kevin Bates), Arduboy er en veldig vellykket 8 -biters spillkonsoll. Det var tusenvis av spill skrevet av hobbyisten som delte dem fritt på fellesskapsforumet til Arduboy, slik at flere kan lære å kode.

Maskinvaredesignet er også åpen kildekode og lar produsenter som meg designe sin egen versjon av maskinvare og utvikle programvareverktøy for å forbedre funksjonen. Kreditt til MR. Blinky som designet Flash-Cart-kretsen, hjemmelaget pakke for Arduino IDE og python-verktøyene for å administrere Flash-vognen som er i stand til å lagre 500 spill på et 16Mbyte serielt flashminne for å spille på veien uten datamaskin.

Når jeg studerte diskusjonstrådene på Arduboy's community forum, lærte jeg hva jeg trenger for å lage flere hjemmelagde Arduboys. For nykommere er dette kanskje ikke lett. Derfor vil jeg dele det jeg lærte i en enkelt ende-til-ende-video og denne skriftlige instruksjonen. Håper dette vil hjelpe de som leter etter svar med å bygge sitt eget sett, men ikke vet hvordan de skal spørre eller ikke fikk den riktige kanalen til å stille disse spørsmålene.

Min versjon av Arduboy er liten, bare 1/4 av størrelsen på kredittkortet (3,5 cm x 5,0 cm0), men litt tykk (2 cm inkludert bunndekselet), men har alle bjeller og fløyter du trenger: 0,9 OLED, hodetelefonkontakt, volumkontroll, RGB LED.

og viktigst, ekspansjonsporten som lar deg bytte spillkonsollknappene med forskjellige ved å bytte det øvre kretskortet (knapphatten).

Du kan deretter bruke stille knapper, joystick -lignende knapper eller til og med analoge kontroller som et potensiometer.

Du kan også legge til fuktighets- og temperatursensor for å bygge en liten værstasjon, eller legge til super soniske sensorer for å bygge en avstandsmåler.

Den har også ytterligere 16M byte serielt flashminne for lagring av opptil 500 Arduboy -spill eller verktøy. Ved å bruke bootloader (Cathy3K) designet av MR. Blinky, kan du hente et hvilket som helst av de 500 spillene på veien og selvblinke det på ATmega32U4-brikken (mikro-kontrolleren til Arduboy) på sekunder for å begynne å spille, uten å begynne å spille tilkobling til datamaskinen eller telefonen.

Trinn 1: Få alle delene

Få alle delene
Få alle delene

De fleste delene kan kjøpes online via amazon.com, aliexpress.com eller taobao.com. Noen av disse kan høstes fra ubrukte Arduino -brett.

Det kostet meg mindre enn USD 12 (unntatt frakt) å kjøpe alt dette fra taobao.com og sende til Hong Kong.

Arduino Pro Micro

OLED 64x128 SSD1306 SPI 0,96"

Winbond W25Q128 16Mbyte minnebrikke

3.7V 280 MaH Lipo batteri USB LiPO batterilader modul (4.2V)

3,5 mm hodetelefonkontakt 10K mini VR (B103) for volumkontroll

10K mini VR (B103) for potensiometer eller roterende kontroller (valgfritt)

mini Piezo -høyttaler

3k, 3x 1K motstand

3-i-1 RGB LED Seven

5x5mm lydløs knapp

9x4mm skyvebryter for strømbryter

to perfeksjonstavler på 5 x 8 cm med dobbeltside

ett perfeksjonstavle på 5 x 8 cm

1x13 pin kvinnelig topptekst

1x13 pin mannlig overskrift

1x7 pin kvinnelig overskrift

1x7 -pins hanhode 3,5x5cm Akrylbrett for bakside

fraktkostnad som er inkludert i budsjettet

Trinn 2: Lag hovedkortet

Lag hovedstyret
Lag hovedstyret
Lag hovedstyret
Lag hovedstyret
Lag hovedstyret
Lag hovedstyret

1. Lag rammen for hovedkortet.

en. Ta de 8 x 5 cm perfbrettene. Klipp den med en saks (eller en sag) for å lage et 3,5 cm x 5 cm mindre perf -brett. Det bør fortsatt ha 18 rader og 13 kolonner med pinhull. Klipp ut et stykke på 3,5 x 5 cm fra et akrylbrett som skal brukes som bakdeksel.

b. Lodd et 13-pins kvinnelig topptekst til den siste raden nederst for knapphatten og utvidelsen. c. Lodd et 7-pinners kvinnelig topptekst til første rad øverst for 7-pinners OLED.

d. Lodd en stille knapp for tilbakestillingsknappen. e. Lodd en glidebryter for strømbryteren. f. Lodd en 3,5 mm stereo hodetelefonkontakt for hodetelefoner. g. Fest en 3-pinners 10K mini-variabel motstand.

2. Lag 4.2V LIPO batterilader og 3.3V regulator krets.

en. desolder 5-pinners 5V-regulatoren på Pro-Micro-kortet, slik at vi kan levere strøm fra en ekstern 3.3V-regulator.

b. Trim LIPO batteriladermodul slik at den får plass på hovedkortet ved siden av 3,4 mm batterikontakt. Du må gjøre kuttet på det punktet der USB -kontakten møter resten av kretsen. Hvis dette fortsatt er for stort, må du kanskje trimme litt lenger. I mitt tilfelle må jeg flytte og lodde en av motstanden igjen slik at jeg kan trimme ytterligere.

c. Klipp av tappen øverst på 3.3V regulatoren (AMS1117-3.3) for å redusere plass, og også for å unngå kortslutning. Deretter loddes tpin 1 til den negative utgangen og pin 3 den positive utgangen til LIPO -batteriladermodulen. Lodd en 0.1uF kondensator mellom Pin 1 og Pin 2 for å koble fra og redusere støy. Bruk en liten kondensator av SMD -typen for å redusere plass hvis mulig.

d. Koble en 0,3 mm laminert (isolert) ledning fra RAW -pinnen på Pro -mikrokortet til den positive 5V -inngangen til batteriladermodulen. Koble en ledning fra GND -pinnen på Pro -mikrokortet til den negative inngangen til batteriladermodulen. Koble en ledning fra den midterste pinnen (pin 2) på 3.3V -regulatoren. Koble de negative og positive polene på LIPO -batteriet til henholdsvis den negative og positive utgangen på batteriladeren.

d. Koble USB-kabelen fra datamaskinen til Pro-Micro-kortet. RAW -pinnen skal levere 5V fra USB -kabelen til LIPO -batteriladermodulen, som vil bli regulert for å lade LIPO -batteriet. Ladelampen skal lyse. 3.3V-regulatoren bør konvertere 4.2V-utgangen til 3.3V for å slå på Pro-Micro-kortet. Lysdioden på Pro-Micro-kortet skal lyse.

e. Start Arduino IDE, og klikk på Verktøy -> Porter for å sjekke portnavnet for å kontrollere om Pro Micros USB -port gjenkjennes av datamaskinen din. På min MAC OSX viser den “/dev/cu.usbmodem14201 (Arduino Leonardo)”. Klikk på Verktøy-tavler og velg "Arduino Leonardo". Last deretter inn eksempelskissen “Blink”. Test deretter opplastingen for å sjekke om du kan laste opp til Pro Micro. Hvis det er et problem, sjekk ledningene og lodding på nytt.

3. Lag det serielle flash -datterkortet. en. Klipp ut et mindre perf -brett på én side med 7 -pinners hull x 4 -pinners hull som skal brukes som datterkort for å huske flash -minnebrikken og de ekstra breakout -pinnene til D11, D12, D14. b. Del loddeputer på 2. siste rad på brettet i to halvdeler. Dette vil bli brukt til å montere den serielle flash -minnemodulen, som er en overflatemontert enhet med en smal avstand mellom pinnene, slik at de to midterste pinnene vil stå på de to halvdelene av loddeputen og ikke kortslutte. c. Lodd Winbond W25Q128 minnebrikke på perf -kortet. Sørg for at ikke to pinner kommer i kontakt.

4. Lodd ytterligere breakouts fra ATMega32U4 -brikken for pinnene D11, D12, D13. en. Ved hjelp av en fin loddetipp og et forstørrelsesglass loddes tre 0,5 mm laminerte (isolerte) ledninger på pinnene på ATMega32U4 -brikken for å bryte ut pinnene D11, D12, D13. Se pinneoppsettet til ATMega32U4. Dette er den vanskeligste delen av prosjektet. Jeg brukte en halv time hver gang jeg trenger å lodde dette. Du må være super forsiktig så du ikke ved et uhell kortslutter andre pinner på mikrokontrolleren, mens du fremdeles lager en solid skjøt som vil vare. Se på youtube -videoer for å lære hvordan du gjør slike små loddearbeider, og hvordan du redder et utilsiktet utslipp av soldater ved hjelp av avlodningstrådene. Jeg vil ikke anbefale varmluftspistol/vifte med mindre du er dyktig nok. Hvis avstanden og kraften ikke er godt kontrollert, kan det lett ødelegge loddene til ATMega32U4 -brikken eller smelte andre komponenter og skade hele brettet til det punktet utover gjenoppretting.

b. lodde de andre endene av de tre ledningene på de midterste 3 loddetinnene på den siste raden i det serielle flash -datterkortet.

5. Monter det serielle flash -datterkortet på Pro Micro -brikken. en. Lodd 0,5 mm ledninger i den første pinnraden på toppen av Pro Micro -kortet, dvs. TX og RAW.

b. Lodd 0,5 mm ledninger (f.eks. De fra bena på transistorene) til de fire siste radene med pinner på baksiden av Pro Micro -brikken. dvs. D6, D7, D8, D9 og SCLK, MISO, MOSI og A10. Ledningen skal stikke ut fra toppen og ned til bunnen, slik at vi kan bruke den til å lodde på datterbrettet og koble det til hovedkortet nederst. c. Lodd det serielle flash -datterkortet til Pro micro ved å koble de siste radene av Pro Micro til datterkortet.

6. Monter LIPO batteriladerbrettet på hovedkortet. en. Lodd 0,5 mm ledninger (f.eks. De fra bena på transistorene) til de fire hjørnene på LIPO -batteriladerkortet (for -ve input, +ve input, -ve output, +ve output). Bor et hull på stedet der den midterste pinnen til 3V -regulatoren befinner seg. Lodd en 0,3 mm laminert ledning til den midterste pinnen (3,3V utgang).. b. Lodd de fire benene på batteriladerkortet på hovedkortet, ved siden av 3,5 mm hodetelefonkontakten. For å redusere plass, bør laderkortet trykkes ned for å møte hovedkortet.

7. Monter Pro -mikrokortet nederst på hovedkortet og lodd alle pinnene fra de fire siste radene og den første raden i Pro Micro til hovedkortet. Du trenger ikke å lodde de andre pinnene, de vil bli forbundet med laminerte ledninger etter behov senere. Dette er for å muliggjøre enklere modifisering og om nødvendig bytte av Pro Micro hvis den er brent.

8. Lag resten av loddetinnet.

Koble pinnene på Pro Micro -kortet til de forskjellige komponentene og topptekstene. All loddetilkobling vil bli utført på undersiden av dobbeltsidens perf -bord. Etter at all lodding er utført, tester du tilkoblingen.

9. Dekk bunnen av hovedbrettet med samme akrylplate.

Trinn 3: Lag Button Hat

1. Lag rammen for knapphatten

en. Ta de 8 x 5 cm perfbrettene. Klipp den med en saks (eller en sag) for å lage et 3,5 cm x 5 cm mindre perf -brett. Det bør fortsatt ha 18 rader og 13 kolonner med pinhull. Klipp ut et vindu med 2,8 x 2,2 cm vindu som er stort nok til å la glasset til OLED stikke ut fra baksiden. Jeg brukte et diamantskjærehjul for å gjøre dette. Verktøyet er så skarpt og sterkt at du kan miste fingrene hvis du ikke er forsiktig. Du kan plassere skjæringen i den andre raden med pinnehull fra toppen, og de niende radene med borehull fra bunnen. og ved den andre kolonnen med pinnehull fra hver side.

b. Lodd et 13-pins mannlig topptekst på den siste raden i perf-brettet.

c. Layoutknapper på perf-bordet for D-PAD (retningsknapper, opp, ned, venstre, høyre) og A-knappen og B-knappen. Deretter loddes de på forsiden av perf -brettet.

d. På undersiden av perf -brettet, kobler du den ene siden av alle knappene til bakkenålen (pin 2) på den mannlige overskriften.

e. Koble den andre pinnen på hver knapp til den tilsvarende pinnen på hannoverskriften for den knappen.

f. Hvis du bygger en knapphatt for et potensiometer roterende eller hjulkontroll, vil du installere en 3-pinners 10K variabel motstand i stedet for D-PAD-retningsknappene. Kontroller at delenummeret til den variable motstanden starter med "B" (f.eks. "B103" står for maks. 10K), ikke "A". "A" betyr at svingvinkelen er proporsjonal med motstandens LOG. B betyr at vinkelen på svingen er proporsjonal med motstanden. vi trenger type B VR for roterende spillkontroller Koble den ene siden av potensiometeret (GND -pinnen) til GND (pin 2 på knapphattoverskriften). Koble den andre siden av potensiometeret til VCC (pin 3 på knapphodet). Koble den midtre pinnen på potensiometeret til den valgte analoge til digitale pinnen på Pro Micro -kortet (en av A0, A1, A2, A3) avhengig av hvilken pinne spillet er kodet med. Hvis kontrollen ikke er jevn (hopper rundt), kan du koble en 100pf kondensator mellom GND -pinnen og den midterste pinnen på potensiometeret for å koble fra støy på kretsen.

Trinn 4: Sett opp Arduino IDE

Hvis du er ny på Arduino, kan du gå til https://www.arduino.cc for å laste ned Arduino IDE for operativsystemet du bruker f.eks. Windows 10 eller Mac OSX eller Linux.

Installer den deretter.

Trinn 5: Lag USBasp -kabelen

Lag USBasp -kabelen
Lag USBasp -kabelen

I motsetning til å laste binære koder/spill til et hvilket som helst Arduino -kort, kan programmering av opplasting ikke gjøres via USB -porten.

For å brenne den tilpassede oppstartslasteren (Cathy3K) til Atmega32U4 -brikken, må du skaffe deg en USBasp -programmerer. Vår opprettelse fungerer imidlertid på 3.3V, vi må ytterligere modifisere USBasp -programmereren for å fungere i 3.3V.

Se følgende instruksjonsprosjekt for å endre USBasp -programmereren til å fungere både på 3,3V eller 5V gjennom jumperinnstillinger.

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

Følg deretter pin -oppsettet og videoen for å lage USBasp til ArduBaby -programkabelen. den originale USBasp -kabelen som følger med USBasp har to kontakter, hver 10 pins. Vi vil kutte denne kabelen i to og koble en 6 -pinners hannhodet til den ene enden mens den andre enden som kobles til USBasp -kortet er 10pin.

Denne andre enden vil koble GND, VCC, MOSI, MISO, SCK, Tilbakestill pinner fra USBasp til de tilsvarende pinnene på ATmega32U4 gjennom den mannlige overskriften som kobles til de seks første pinnene i den kvinnelige overskriften på Ardubaby.

For å gjøre programmet eller brenne bootloaderen til ATmega32U4, fjerner du knapphatten og kobler til denne 6-pinners USBasp-kabelen.

Sørg for å markere hvilken pinne som er pinne en tydelig på overskriften på kabelen, slik at det ikke blir feil tilkobling. Da jeg utformet pinneoppsettet for Ardubaby -knapphattene, prøvde jeg å ordne pinnene slik at selv om du byttet pin 1 med pin 13, vil -ve strømforsyningen ikke tilfeldigvis møte +ve strømforsyningen for å unngå skader. Men du vet aldri, andre ting kan skje som fortsatt kan skade settet ditt hvis du kobler til feil retning.

Jeg vil brenne et lite hull for å markere det på overskriften ved hjelp av spissen av loddejernet.

Trinn 6: Brenn oppstartslasteren

MR. Blinky opprettet Arduboy-hjemmelaget pakke for hjemmelaget Arduboy.

Pakken hans inkluderer brettdriverne og biblioteket til Arduboy som fungerer med forskjellige versjoner av den originale Arduboy, så vel som hjemmelagde.

1. Bla til MR. Blinkys GitHub -mappe for den hjemmelagde Arduboy. https://github.com/MrBlinky/Arduboy-homemade-package 2. Følg instruksjonene på GitHub for å konfigurere din Arduino IDE med den hjemmelagde pakken. 3. Kopier først nettadressen til “Ekstra brettsjef” for hjemmelaget Arduboy -pakke.

4. Start Arduino IDE. Klikk Innstillinger fra Arduino toppmeny. Lim inn denne teksten i "Ekstra Boards Manager -nettadresser" Merk: Hvis du allerede har annen tekst i dette feltet, setter du inn denne tilleggsteksten i begynnelsen, legger til en "," og beholder den andre teksten intakt. 5. Avslutt Arduino IDE og start IDE igjen for å tre i kraft av endringen ovenfor. 6. Klikk på Verktøy -> Styret: -> Styreleder. Skriv inn hjemmelaget for å søke. Velg å installere Arduboy hjemmelagde pakken av Mr. Blinky. Klikk deretter på oppdater for å få den nyeste versjonen. Pakken blir lagt til i Arduino. 7. Velg nå Tools-> Board: “Hjemmelaget Arduboy. og velg følgende parametere for hjemmelaget Arduboy”Basert på:“SparkFun Pro Micro 5V - Standard ledninger”Kjerne:“Arduboy Optimized core”Bootloader:“Cathy3K”Programmerer: USBasp 8. Slå av Ardubaby og fjern knapphatten. 9. Sett jumperen på USBasp til 3,3V. Sørg for at du bruker en modifisert USBasp som fungerer helt i 3.3V. 10. Koble USBasp til USB -porten på datamaskinen. Koble den spesielle USBasp til ArduBaby -kabelen til USBasp, og den andre enden til knapphodet på Ardubabyen, sett opp pin 1 til pin 1. Bare de første 6 pinnene i Ardubaby brukes til oppstartslasterforbrenning.

11. Ardubabyen din skal være slått på nå via 3,3V strøm fra USBasp. 12. Trykk på tilbakestillingsknappen til ArduBaby én gang. 13. Klikk på Verktøy-> Tavler-> Brenn oppstartslaster-knappen på Arduino IDE. 14. Sjekk meldingen for å se om oppstartslasteren brenner. 15. Hvis ikke, sjekk kabelen og sørg for at du kobler pinnene i riktig retning og stiller pinne 1 på linje med pinne 1. Noen ganger vil Ardubaby begynne å spille et tidligere spill hvis oppstartsmenyen går ut. Så du må klikke på Burn bootloader -knappen raskt rett etter at du trykker på reset -knappen for å sette Ardubaby i ventemodus for blits. 16. Hvis alt er bra, starter ArduBaby på nytt, og du vil enten se oppstartsmenyen eller det forrige spillet du har lastet ned til ArduBaby.

Trinn 7: Kompiler og last opp enkeltspill til Arduboy

Spill for Arduboy kan lastes ned fra følgende kilder:

Arduboy community forum for spill:

GitHub-søket på "Arduboy games" https://github.com/topics/arduboy-game eller bare søk "GitHub arduboy games" på google.

Spillsamlinger som deles av andre. f.eks. Erwins Arduboy -samlinger

arduboy.ried.cl/

Du kan laste ned kildekoden til spillet du laster inn til Arduino og laster opp til Arduboy. Se videoen om hvordan dette gjøres.

eller bare hex -filen (den kompilerte binære filen, men presentert i Hex -nummer, skrives ut til en tekstfil i stedet for binær fil).

For kildekoden, bare åpne kildekoden i Arduino IDE.

Kildekoden f.eks. picovaders.ino må lagres i en mappe med samme navn, f.eks. picovaders

De nødvendige Arduboy2 -bibliotekene bør allerede være installert i forrige trinn der vi laster inn styrelederen for Arduboy hjemmelagde pakke.

Bare koble Arduboy til USB -porten på datamaskinen.

Slå den på, klikk deretter på Last opp -knappen på Arduino IDE for å kompilere og laste opp koden til Arduboy for å spille spillet.

Trinn 8: Last opp single hex -filer

Hex-fil er en tekstfil som inneholder binære koder som resulterer i samlingen av Arduino-programmet (skisse), men representert i et tekstfilformat ved bruk av tosifrede heksadesimale tall 0-9, A-F.

Du kan få disse hex -filene på forskjellige måter.

1. Vi kan laste ned hex -filer fra de forskjellige kildene vi forklarte ovenfor:

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

Søk etter "Arduboy -spill" på GitHub.com eller på google.com

Lagre disse hex -filene i filer med en utvidelse av.hex.

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

Velg Sketch> Export Compiled Binary i Arduino IDE. Skissen din vil bli samlet, og deretter vil en kopi av den kompilerte.hex -filen bli sendt ut til katalogen for skissen din. Bla til skissemappen eller velg Sketch> Show Sketch Folder i IDE for å se hex -filen. Hvis du installerte MR. Blinkys hjemmelagde pakke, vil to versjoner av.hex -filen bli opprettet. For eksempel, hvis du kompilerer picovaders.ino sketh, vil de følgende to.hex -filene bli opprettet.

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

Vi bruker den første filen: picovaders.ino-arduboy-promicro-ssd1306.hex

3. For å laste opp hex -fil til Arduboy, må du bruke en opplastning. Det er mange på internett. Jeg liker å bruke opplasteren til MR. Blinky, siden den er enkel å bruke.

Bla til https://github.com/MrBlinky/Arduboy-Python-Utilities og følg instruksjonene der for å installere MR. Blinkys Arduboy Python-verktøy. Hvis du ikke har en python installert, må du først følge instruksjonene for å installere python og nødvendige python -moduler.

4. Koble Arduboy til USB -porten på datamaskinen. Slå på Arduboy.

5. Start skallprogrammet i operativsystemet f.eks. terminalappen i Mac OSX eller ledeteksten i Windows for å skrive inn følgende kommandoer for å laste opp hex -filen til Arduboy. Tar vår tidligere skisse picovaders.ino som et eksempel.

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

6. Når spillet er lastet opp, vil Arduboy nullstille og starte spillet.

Trinn 9: Skriv spill til Serial Flash

1. For å skrive den konsoliderte spillfilen til seriell flash, må du bruke MR. Blinkys Arduboy Python Utilities igjen. Du bør ha dette allerede installert hvis du følger forrige trinn.

Ellers kan du gå til https://github.com/MrBlinky/Arduboy-Python-Utilities og følge instruksjonene der for å installere MR. Blinkys Arduboy Python-verktøy. Hvis du ikke har en python installert, må du først følge instruksjonene for å installere python og nødvendige python -moduler.

2. Lag indeksfilen for den konsoliderte spillbildefilen for å inneholde så mange som 500 spill.

Vi bruker scriptet Bruk flashcart-builder.py til å bygge en konsoliderte spillbildefiler for alle spillene du vil lagre i den serielle blitsen til Arduboy. En 16 MB serieblits kan inneholde opptil 500 spill. Dette skriptet bygger et binært flash -bilde fra en indeksfil (.csv) og følgende 2 filer for hvert spill: a..hex -filer som er tekstfilen som inneholder de heksadesimale kodene til de binære bildene i de kompilerte Arduboy -spillene. Se filen Se eksempel-flashcart / flashcart-index.csv for eksempel syntaks. Denne filen er inkludert i pakken hvis du klikker Klon eller Last ned. b.-p.webp

YouTube -videoen forklarer også hvordan du plasserer ting på rett sted for denne.csv -indeksfilen. En ting å merke seg, eksemplene. Csv -filen fra MR. Blinkys GitHub brukes i Windows -PC, omvendt skråstrek "\" brukes i banenavnene. Hvis du bruker et liunx -system eller MAC OSX, må du endre det til "/".

For å komme raskt i gang kan du laste ned pakken min med 63 spill fra https://github.com/cheungbx/ArduBaby 63games.zip

Denne pakken inneholder hex-filer og png-filer fra de 63 spillene jeg har valgt, pluss games.csv-indeksfilen og games-image.bin-filen som er bygd ved hjelp av flashcard-builder.py-skriptet.

Du kan legge til flere spill i games.csv og bygge din egen konsoliderte binære bildefil for spill som skal skrives til seriell flash. Du kan sette maks 500 spill på 16M seriell blits.

Jeg skal forklare hvordan du lager.csv -filen ved hjelp av games.csv som du kan laste ned fra min GitHub.

Selv om.csv -filen kan åpnes ved hjelp av excel. IKKE bruk excel for å åpne filen. Det vil ødelegge filen. Bruk bare en ren tekstredigerer. Du kan bruke notisblokk i Windows. Jeg brukte textEdit i MAC og klikket "Format"-> "Make Plain Text".

Den første linjen i.csv -filen er overskriften du kan ignorere. Liste; Beskrivelse; Tittelskjerm; Hex -fil

Den andre linjen peker på den grafiske bildefilen (må være 128 x 64 piksler i-p.webp

Spillene konfigureres fra tredje linje. Spill er organisert i grupper i bootloader -menyen kalt kategorier. Denne linjen er gruppetittelen på listen over spill for den gruppen f.eks. Action spill. Det peker også på den grafiske bildefilen for gruppen av spill. "1" i begynnelsen angir gruppe nummer 1. Alle spill som følger denne gruppen starter med dette nummeret. 1; Action-spill; kategoriskjermer / Action.png;;;

Deretter legger du til en linje for hvert spill i den gruppen. Starter med gruppe nummer 1, spillets navn og banen til den grafiske filen for et øyeblikksbilde av skjermen og banen til hex -filen. Alle atskilt med ";". Legg til en til ";" for å hoppe over parameteren for lagringsfilen. 1; 1943; Arcade/Nineteen43.png; Arcade/Nineteen43.hex;; 1; 2048; Arcade/2048.png; Arcade/2048.hex;;

Etter at du er ferdig med den første spillgruppen, kan du legge til den andre spillgruppen 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 siste linjen har en lagringsfil i parameteren som er en tegneseriefilm.

3. For å bygge den konsoliderte spillbildefilen, skriv inn kommandoen, der games.csv er din spillindeksfil.

python flashcart-builder.py games.csv

Dette vil opprette en fil som heter games-image.bin

4. Skriv den konsoliderte spillbildefilen til Arduboy.

Vi bruker MR. Blinkys flashcart-writer.py-skript for å skrive den konsoliderte spillbildefilen til det serielle flashminnet til Arduboy.

Hvis du bruker min eksempel-spill-image.bin-fil, kan du skrive denne kommandoen.

python flashcart-writer.py spill-image.bin

Hvis du bruker en SSD1309 OLED -skjerm i stedet for SSD1306 OLED på standardversjonen, kan du lappe skjermdriveren i farten. Hvis du vil bruke SSD1309-oppdateringen automatisk på det opplastede bildet, må du lage en kopi av flashcart-writer.py og gi den nytt navn til flashcart-writer-1309.py. Skriv deretter inn

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

Trinn 10: Spill spill fra Serial Flash

For å spille spill fra seriell blits, slå på Arduboy.

Hvis du allerede har et spill lastet inn, starter spillet automatisk. Trykk på tilbakestillingsknappen øverst på Ardubaby en gang for å gå til opplastingsmenyen.

Bootloader -menyen vises. RGB -lysdioden lyser i rekkefølge.

Hvis du ser et ikon som ser ut som en USB -port i stedet, betyr det at den serielle flash -minnebrikken ikke fungerer. Sjekk ledningene.

Hvis du ikke trykker på noen taster innen 12 sekunder, kjøres spillet som allerede er lagret i ATMega32U4s interne flashminne.

For å gå tilbake fra et spill til bootloader -menyen, trykker du bare på Reset -knappen én gang.

Du kan trykke på venstre eller høyre knapp for å bla gjennom den forskjellige kategorien (gruppen) av spill. Trykk på ned- eller oppknappen for å bla gjennom spillene i en kategori (gruppe). Trykk på "B" -knappen for å kopiere spillet fra det serielle flashminnet til ATMega32U4s interne Flash -minne. Spillet starter innen et sekund.

Nå har du en liten spillkonsoll som du kan spille på veien.

Jeg utfordrer deg til å samle og laste opp 16M seriell blits med 500 spill. Jeg har ikke sett noen som har gjort det ennå for å fylle opp serieblitsen. Hvis du kan gjøre det, må du dele den konsoliderte spillfilen med oss.

Anbefalt: