Indholdsfortegnelse:

ArduBaby - halv størrelse Arduboy med 500 spil på seriel flash: 10 trin
ArduBaby - halv størrelse Arduboy med 500 spil på seriel flash: 10 trin

Video: ArduBaby - halv størrelse Arduboy med 500 spil på seriel flash: 10 trin

Video: ArduBaby - halv størrelse Arduboy med 500 spil på seriel flash: 10 trin
Video: ArduBaby - half size Arduboy with 500 games 2024, November
Anonim
ArduBaby - halv størrelse Arduboy med 500 spil på seriel flash
ArduBaby - halv størrelse Arduboy med 500 spil på seriel flash
ArduBaby - halv størrelse Arduboy med 500 spil på seriel flash
ArduBaby - halv størrelse Arduboy med 500 spil på seriel flash

Du kan se denne youtube -video for at se enden til ende -processen, hvordan jeg skabte denne lille hjemmelavede Arduboy med den serielle flashhukommelse, der kan gemme så mange som 500 spil at spille på vejen.

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.

Hardwaredesignet er også open source og giver producenter som mig mulighed for at designe deres egen version af hardware og udvikle software -værktøjer til at forbedre dets funktion. Kreditter til MR. Blinky, der designede Flash-Cart-kredsløbet, hjemmelavet pakke til Arduino IDE og python-værktøjerne til at styre Flash-vognen, der er i stand til at lagre 500 spil på en 16Mbyte seriel flashhukommelse til spil på vejen uden en computer.

Når jeg studerede diskussionstrådene på Arduboy's community forum, lærte jeg, hvad jeg har brug for for at oprette flere hjemmelavede Arduboys. For tilflyttere er det måske ikke let. Derfor vil jeg dele det, jeg lærte i en enkelt ende-til-ende-video og denne skriftlige instruktion. Håber dette vil hjælpe dem, der leder efter svar, til at bygge deres eget kit, men ikke ved, hvordan de skal stille eller ikke fik den rigtige kanal til at stille disse spørgsmål.

Min version af Arduboy er lille kun 1/4 af størrelsen på kreditkortet (3,5 cm x 5,0 cm0), men lidt tyk (2 cm inklusive bunddækslet), men har alle de klokker og fløjter, du har brug for: 0,9 OLED, hovedtelefonstik, lydstyrkekontrol, RGB LED.

og vigtigst af alt, udvidelsesporten, der giver dig mulighed for at bytte dine spilkonsolknapper med forskellige ved at skifte det øverste printkort (knaphat).

Du kan derefter bruge lydløse knapper, joystick -lignende knapper eller endda analoge controllere som et potentiometer.

Du kan også tilføje fugtigheds- og temperatursensor til at bygge en lille vejrstation eller tilføje super soniske sensorer til at bygge en afstandsmåler.

Det har også yderligere 16M bytes seriel flashhukommelse til lagring af op til 500 Arduboy -spil eller hjælpeprogrammer. Ved at bruge bootloaderen (Cathy3K) designet af MR. Blinky kan du hente et hvilket som helst af de 500 spil på vejen og selvblinke det på ATmega32U4-chippen (mikro-controller i Arduboy) på få sekunder for at begynde at spille uden at forbindelse til din computer eller telefon.

Trin 1: Få alle delene

Få alle delene
Få alle delene

De fleste dele kan købes online via amazon.com, aliexpress.com eller taobao.com. Nogle af disse kunne høstes fra ubrugte Arduino -tavler. Det kostede mig mindre end USD 12 (eksklusive forsendelse) at købe alle disse fra taobao.com og sende til Hong Kong.

Arduino Pro Micro

OLED 64x128 SSD1306 SPI 0,96"

W25Q128 16Mbyte hukommelseschip

3,7V 280 Mah Lipo batteri

USB LiPO batterioplader modul (4.2V)

3,5 mm hovedtelefonstik

10K mini VR (B103) til lydstyrkekontrol

10K mini VR (B103) til potentiometer eller roterende controller (ekstraudstyr)

mini Piezo højttaler

3k modstander

Tre 1K modstande

3-i-1 RGB LED

Syv 5x5mm lydløse knapper

9x4mm glidekontakt til afbryder

to 5x8cm dobbeltsidede perf bord

ét 5x8cm enkelt side perf bord

1x13 pin hunhoved

1x13 pin hanhoved (pr. Hat)

1x7 pin kvindelig overskrift

1x7 pin hanhoved

3,5x5cm akrylplade til bagside

forsendelsesomkostninger inkluderet i dit budget

Trin 2: Lav hovedkortet

Lav hovedtavlen
Lav hovedtavlen
Lav hovedtavlen
Lav hovedtavlen
Lav hovedtavlen
Lav hovedtavlen

1. Opret rammen til bundkortet.

en. Tag de 8 x 5 cm perfbrædder. Klip den med en saks (eller en sav) for at lave en 3,5 cm x 5 cm mindre perfbrædder. Det skal stadig have 18 rækker og 13 kolonner med nålhuller. Klip et stykke 3,5 x 5 cm ud fra et akrylplade, der skal bruges som bagcover.

b. Lod et 13-benet hunhoved til den sidste række i bunden til knaphatten og udvidelsen.

c. Lod et 7-benet hunhoved til den første række øverst til den 7-benede OLED.

d. Lod en lydløs knap til nulstillingsknappen.

e. Lod en glidekontakt til afbryderen.

f. Lod et 3,5 mm stereo hovedtelefonstik til hovedtelefon.

g. Stick en 3-pin 10K mini-variabel modstand.

2. Lav 4.2V LIPO batterioplader og 3.3V regulator kredsløb.

en. aflod den 5-polede 5V-regulator på Pro-Micro-kortet, så vi kan levere strøm fra en ekstern 3.3V-regulator.

b. Trim LIPO batterioplader modulet, så det kan passe på hovedkortet lige ved siden af 3,4 mm batteristik. Du bliver nødt til at foretage snittet på det punkt, hvor USB -stikket møder resten af kredsløbet. Hvis dette stadig er for stort, skal du muligvis trimme lidt yderligere. I mit tilfælde skal jeg flytte og gen lodde en af modstanden, så jeg kan trimme yderligere.

c. Beskær fanen øverst på 3.3V-regulatoren (AMS1117-3.3) for at reducere pladsen, og også for at undgå kortslutning. Lod derefter tpin 1 til den negative output og pin 3 den positive output fra LIPO batterioplader modulet. Lod en 0.1uF kondensator mellem Pin 1 og Pin 2 for at afkoble og reducere støj. Brug en lille SMD -kondensator til at reducere plads, hvis det er muligt.

d. Tilslut en 0,3 mm lamineret (isoleret) ledning fra RAW -stiften på Pro -mikrokortet til den positive 5V -indgang på batteriopladermodulet. Tilslut en ledning fra GND -stiften på Pro -mikrokortet til den negative indgang på batteriopladermodulet. Tilslut en ledning fra den midterste pin (pin 2) på 3.3V regulatoren. Tilslut de negative og positive terminaler på LIPO -batteriet til henholdsvis den negative og positive udgang fra batteriopladeren.

d. Tilslut USB-kabel fra din computer til Pro-Micro-kortet. RAW -stiften skal levere 5V fra USB -kablet til LIPO -batteriopladermodulet, der reguleres til opladning af LIPO -batteriet. Opladnings -LED'en skal lyse. 3.3V-regulatoren skal konvertere 4.2V-udgangen til 3.3V for at tænde for Pro-Micro-kortet. LED'en på Pro-Micro-kortet skal lyse.

e. Start Arduino IDE, og klik på Værktøjer -> Porte for at kontrollere portnavnet for at kontrollere, om Pro Micros USB -port genkendes af din computer. På min MAC OSX viser den “/dev/cu.usbmodem14201 (Arduino Leonardo)”. Klik på Værktøj-tavler og vælg "Arduino Leonardo". Indlæs derefter eksempelskitsen “Blink”. Test derefter upload for at kontrollere, om du kan uploade til Pro Micro. Hvis der er et problem, skal du kontrollere ledningerne og lodningen igen.

3. Lav det serielle flash -datterkort.

en. Skær et mindre perf -bord med en enkelt side med 7 pin -huller x 4 pin -huller, der skal bruges som datterkort til at huske flash -hukommelseschippen og de ekstra breakout -pins i D11, D12, D14.

b. Del loddepuderne på 2. sidste række af brættet i to halvdele. Dette vil blive brugt til at montere det serielle flash -hukommelsesmodul, som er en overflademonteret enhed med en smal afstand mellem stifterne, således at de to midterste ben vil stå på de to halvdele af loddepuden og ikke kortslutte.

c. Lod Winbond W25Q128 -hukommelseschippen på perf -kortet. Sørg for, at der ikke er to stifter, der kommer i kontakt.

4. Lodder yderligere udbrud fra ATMega32U4 -chippen til benene D11, D12, D13.

en. Ved hjælp af en fin loddetip og et forstørrelsesglas loddes tre 0,5 mm laminerede (isolerede) ledninger fast på stifterne på ATMega32U4 -chippen for at bryde stifterne D11, D12, D13. Se pin -layoutet på ATMega32U4. Dette er den sværeste del af projektet. Jeg brugte en halv time hver gang jeg skulle lodde dette. Du skal være super forsigtig med ikke ved et uheld at kortslutte andre stifter på mikrokontrolleren, mens du stadig laver en solid samling, der vil vare.

Se youtube -videoer for at lære, hvordan man udfører sådan et lille loddearbejde, og hvordan man redder et utilsigtet spild af soldater ved hjælp af aflodningstrådene. Jeg vil ikke anbefale varmluftspistol/blæser, medmindre du er dygtig nok. Hvis afstanden og strømmen ikke er godt kontrolleret, kan det let ødelægge ATMega32U4 -chipens lodere eller smelte andre komponenter og beskadige hele kortet til det punkt, der ikke kan genoprettes.

b. lod de andre ender af de tre ledninger fast på de midterste 3 loddepuder i den sidste række af det serielle flash -datterkort.

5. Monter det serielle flash -datterkort på Pro Micro -chippen.

en. Lodde 0,5 mm ledninger i den første række af stifter øverst på Pro Micro -kortet, dvs. TX og RAW.

b. Lodde 0,5 mm ledninger (f.eks. Dem fra benene på transistorerne) til de sidste fire stifterækker på bagsiden af Pro Micro -chippen. dvs. D6, D7, D8, D9 og SCLK, MISO, MOSI og A10. Tråden skal stikke ud fra toppen og ned til bunden, så vi kan bruge den til at lodde på datterbrættet og forbinde det med hovedkortet i bunden.

c. Lod det serielle flash -datterkort til Pro micro ved at forbinde de sidste rækker af pins i Pro Micro til datterkortets.

6. Monter LIPO batterioplader på hovedkortet.

en. Lodde 0,5 mm ledninger (f.eks. Dem fra transistorernes ben) til de 4 hjørner af LIPO batterioplader (for -ve input, +ve input, -ve output, +ve output). Bor et hul på det sted, hvor den midterste pin på 3V -regulatoren findes. Lod en 0,3 mm lamineret ledning til den midterste pin (3,3 V output)..

b. Lod de 4 ben på batteriopladerkortet på hovedkortet, lige ved siden af 3,5 mm hovedtelefonstikket. For at reducere plads skal opladerkortet trykkes ned for at møde hovedkortet.

7. Monter Pro -mikrokortet i bunden af hovedkortet, og lod alle stifterne fra de sidste 4 rækker og den første række af Pro Micro på hovedkortet. Ingen grund til at lodde de andre stifter, de vil blive forbundet med laminerede ledninger efter behov senere. Dette er for at muliggøre lettere ændring og om nødvendigt udskiftning af Pro Micro, hvis den er brændt.

8. Lav resten af lodningen.

Tilslut stifterne på Pro Micro -kortet til de forskellige komponenter og overskrifter. Al loddetilslutning foretages i undersiden af dobbeltsidens perf bord. Efter al lodning er udført, test forbindelsen.

9. Dæk bunden af hovedkortet med akrylpladen af samme størrelse.

Trin 3: Lav Button Hat

Lav Button Hat
Lav Button Hat
Lav Button Hat
Lav Button Hat
Lav Button Hat
Lav Button Hat
Lav Button Hat
Lav Button Hat

en. Tag de 8 cm x 5 cm perfekte brædder. Klip den med en saks (eller en sav) for at lave en 3,5 cm x 5 cm mindre perfbrædder. Det skal stadig have 18 rækker og 13 kolonner med nålhuller. Skær et vindue ud med 2,8 x 2,2 cm vindue, der er stort nok til at lade OLED -glasset stikke ud bagfra. Jeg brugte et diamantskærehjul til dette. Værktøjet er så skarpt og stærkt, at du kan miste fingrene, hvis du ikke er forsigtig. Du kan placere skæringen i den anden række af nålhuller ovenfra og den niende række af nålhuller fra bunden. og ved 2. søjle af nålhuller fra hver side.

b. Lod et 13-benet hanhoved i den sidste række af perfbrættet.

c. Layoutknapper på perf-kortet til D-PAD (retningsknapper, op, ned, venstre, højre) og A-knappen og B-knappen. Derefter loddes dem på forsiden af perfbrættet.

d. I bunden af perf -bordet skal du tilslutte den ene side af alle knapper til jordstiftet (pin 2) på hanhovedet.

e. Tilslut den anden pin på hver knap til den tilsvarende pin på hanhovedet for den pågældende knap.

f. Hvis du bygger en knaphat til en potentiometer roterende eller opkaldsstyring, installerer du en 3-bens 10K variabel modstand i stedet for D-PAD retningsknapperne. Kontroller, at varenummeret på den variable modstand starter med "B" (f.eks. "B103" står for maks. 10K), ikke "A". "A" betyder, at drejningsvinklen er proportional med modstandens LOG. B betyder, at drejevinklen er proportional med modstanden. vi har brug for type B VR'er til roterende spilcontroller Tilslut den ene side af potentiometeret (GND -stiften) til GND (pin 2 på knappen hattehoved). Tilslut den anden side af potentiometeret til VCC (pin 3 på knappen hattehoved). Tilslut den midterste pin på potentiometeret til den valgte analoge til digitale pin på Pro Micro -kortet (en af A0, A1, A2, A3) afhængigt af hvilken pin spillet er kodet med. Hvis kontrollen ikke er glat (hopper rundt), kan du tilslutte en 100pf kondensator mellem GND -stiften og den midterste pin på potentiometeret for at afkoble fra støj på kredsløbet.

Trin 4: Lav USBasp -kablet

Lav USBasp -kablet
Lav USBasp -kablet
Lav USBasp -kablet
Lav USBasp -kablet
Lav USBasp -kablet
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.

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 5: Konfigurer Arduino IDE

Opsæt Arduino IDE
Opsæt Arduino IDE

Hvis du er ny i Arduino, skal du gå til

for at downloade Arduino IDE til det operativsystem, du bruger f.eks. Windows 10 eller Mac OSX eller Linux.

Følg derefter instruktionerne der for at installere det.

Trin 6: Brænd bootloaderen

Brænd Bootloader
Brænd Bootloader
Brænd Bootloader
Brænd Bootloader
Brænd Bootloader
Brænd Bootloader

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.

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. Pakken tilføjes til Arduino. Klik derefter på opdater for at opdatere den til den nyeste version.

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 7: Overhold og upload enkelt spil

Overhold og upload enkelt spil
Overhold og upload enkelt spil
Overhold og upload enkelt spil
Overhold og upload enkelt spil
Overhold og upload enkelt spil
Overhold og upload enkelt spil

Spil til Arduboy kan downloades fra følgende kilder:

Arduboy community forum for spil:

GitHub -søgningen om "Arduboy -spil"

github.com/topics/arduboy-game eller bare søg "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).

Du kan følge trinene i MR. Blinks uploader.py python -værktøjer for at uploade hex -filen til din Arduboy.

Kommando: python uploader.py yourgame.hex

Trin 8: Upload single Hex -filer til spil

Upload single Hex -filer til spil
Upload single Hex -filer til spil
Upload single Hex -filer til spil
Upload single Hex -filer til spil
Upload single Hex -filer til spil
Upload single Hex -filer til spil
Upload single Hex -filer til spil
Upload single Hex -filer til spil

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 9: Skriv spil til Serial Flash

Skriv spil til Serial Flash
Skriv spil til Serial Flash
Skriv spil til Serial Flash
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 søge efter

github.com/MrBlinky/Arduboy-Python-Utiliti…

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.

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

felipemanga.github.io/ProjectABE/

og fange skærmen. Eller bare skriv navnet på spillet på en power pint, og skærmbillede det. Derefter den grafik, du har taget/skabt ned til 128x64 pixel ved hjælp af pensel i vinduer, eller forhåndsvisning i Mac OSX.

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

0; Bootloader; arduboy_loader.png;;;

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 10: 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.

Anbefalede: