Sadržaj:

Kako prenijeti igre na Arduboy i 500 igara na Flash-košaricu: 8 koraka
Kako prenijeti igre na Arduboy i 500 igara na Flash-košaricu: 8 koraka

Video: Kako prenijeti igre na Arduboy i 500 igara na Flash-košaricu: 8 koraka

Video: Kako prenijeti igre na Arduboy i 500 igara na Flash-košaricu: 8 koraka
Video: REVAN - THE COMPLETE STORY 2024, Novembar
Anonim
Kako prenijeti igre na Arduboy i 500 igara na Flash-košaricu
Kako prenijeti igre na Arduboy i 500 igara na Flash-košaricu

Napravio sam neki domaći Arduboy sa serijskom Flash memorijom koji može pohraniti maksimalno 500 igara za igranje na putu. Nadam se da ću podijeliti kako na njega učitati igre, uključujući kako pohraniti igre u serijsku flash memoriju i stvoriti vlastiti konsolidirani paket igara za igranje na cesti.

Ovaj youtube video možete pogledati od početka do kraja procesa stvaranja i objašnjenja

Korak 1: Postavite Arduino IDE

Ako ste tek počeli koristiti Arduino, posjetite https://www.arduino.cc da biste preuzeli Arduino IDE za operativni sistem koji koristite, na primjer Windows 10 ili Mac OSX ili Linux.

Zatim ga instalirajte.

Korak 2: Napravite USBasp kabel

Za razliku od učitavanja binarnih kodova/igara na bilo koju Arduino ploču, programiranje pokretačkog programa ne može se obaviti putem USB priključka.

Da biste narezali prilagođeni bootloader (Cathy3K) na čip Atmega32U4, morate nabaviti USBasp programer. Međutim, naša kreacija radi na 3.3V, moramo dodatno izmijeniti USBasp programer da radi na 3.3V.

Pogledajte sljedeći projekt s uputama za promjenu vašeg USBasp programatora za rad na 3.3V ili 5V kroz postavke kratkospojnika.

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

Zatim slijedite raspored pinova i video zapis da biste USB kabel priključili na ArduBaby program. Originalni USBasp kabel koji dolazi s USBaspom ima dva konektora, svaki od 10 pinova. Ovaj ćemo kabel prepoloviti i na jedan kraj spojiti 6 -polno muško zaglavlje, a drugi kraj koji se spaja s USBasp pločom na 10 pina.

Ovaj drugi kraj će spojiti pinove GND, VCC, MOSI, MISO, SCK, Reset sa USBaspa na odgovarajuće pinove ATmega32U4 preko muškog zaglavlja koje se povezuje sa prvih šest pinova ženskog zaglavlja na Ardubabyju (moja verzija domaći Arduboy). Vaša verzija može imati drugačiji raspored pinova. Možete se pozvati na moj video zapis kako biste promijenili dizajn koji odgovara vašoj verziji domaćeg Arduboya.

Da biste izveli program ili snimili pokretački program za učitavanje na ATmega32U4, uklonit ćete šešir dugmeta i priključiti ovaj 6-pinski USBasp kabel.

Pazite da na zaglavlju kabela jasno označite koji je pin jedan, tako da neće doći do pogrešne veze. Kada sam dizajnirao raspored pinova za Ardubaby zaglavlja dugmadi, pokušao sam rasporediti pinove tako da čak i ako ste pin 1 zamijenili iglom 13, napajanje -ve neće slučajno naići na +ve napajanje kako bi se izbjegla oštećenja. Međutim, nikad ne znate, mogu se dogoditi i druge stvari koje bi mogle oštetiti vaš komplet ako se povežete u pogrešnom smjeru.

Izgoreću malu rupu da to označim na zaglavlju vrhom lemilice.

Korak 3: narežite Bootloader

MR. Blinky je stvorio Arduboy-homemade-paket za domaći Arduboy.

Njegov paket uključuje upravljačke programe za ploču i biblioteku Arduboya koja radi s različitim verzijama originalnog Arduboya, kao i onima domaće izrade.

1. Pregledajte GitHub folder MR. Blinky za domaći Arduboy. https://github.com/MrBlinky/Arduboy-homemade-package 2. Slijedite upute na GitHubu da biste konfigurirali svoj Arduino IDE s domaćim paketom. 3. Prvo kopirajte url „Dodatnog upravitelja ploče“za Arduboy domaći paket.

4. Pokrenite Arduino IDE. U glavnom meniju Arduina kliknite Postavke. Zalijepite ovaj tekst u "Dodatne URL -ove upravitelja ploča" Napomena: Ako već imate drugi tekst u ovom polju, umetnite ovaj dodatni tekst na početak, zatim dodajte "," i zadržite drugi tekst netaknutim. 5. Izađite iz Arduino IDE -a i ponovo pokrenite IDE da bi stupila na snagu gornja promjena. 6. Kliknite Alati -> Ploča: -> Upravitelj odbora. Unesite domaće za pretraživanje. Odaberite da instalirate Arduboy domaći paket od Mr. Blinkyja. Zatim kliknite na ažuriranje da biste dobili najnoviju verziju. Paket će biti dodan u Arduino. 7. Sada odaberite Alati-> Ploča: „Domaći Arduboy. i odaberite sljedeće parametre za Domaći Arduboy”Na osnovu:“SparkFun Pro Micro 5V - Standardno ožičenje”Jezgra:“Arduboy Optimized core”Bootloader:“Cathy3K”Programer: USBasp 8. Isključite Ardubaby i uklonite šešir sa dugmeta. 9. Postavite kratkospojnik na USBaspu na 3,3 V. Uvjerite se da koristite modificirani USBasp koji u potpunosti radi na 3.3V. 10. Priključite USBasp na USB port računara. Spojite poseban USBasp na ArduBaby kabel na USBasp, a drugi kraj na zaglavlje dugmeta na Ardubabyju, poravnajte pin 1 na pin 1. Samo prvih 6 pinova Ardubabyja koristi se za snimanje pokretačkog programa.

11. Vaš Ardubaby bi trebao biti uključen sada putem napajanja od 3,3 V koje napaja USBasp. 12. Pritisnite taster za resetovanje na ArduBabyju jednom. 13. Pritisnite dugme Alati-> Ploče-> Burn Bootloader na Arduino IDE-u. 14. Provjerite poruku da vidite je li narezivanje pokretačkog programa uspješno. 15. Ako nije, provjerite kabel i provjerite jeste li spojili pinove u ispravnom smjeru i postavili pin 1 s pinom 1. Ponekad će Ardubaby početi igrati prethodnu igru ako meni za pokretanje istekne. Dakle, morate brzo pritisnuti dugme Burn bootloader odmah nakon što pritisnete gumb za resetiranje da biste Ardubaby stavili u način čekanja na flash. 16. Ako je sve u redu, ArduBaby će se ponovo pokrenuti i vidjet ćete izbornik za podizanje sustava ili prethodnu igru koju ste učitali na ArduBaby.

Korak 4: Sastavite i prenesite pojedinačne igre na Arduboy

Igre za Arduboy mogu se preuzeti sa sljedećih izvora:

Arduboy forum zajednice za igre:

GitHub traži "Arduboy igre" https://github.com/topics/arduboy-game ili jednostavno pretražite "GitHub arduboy igre" na google-u.

Kolekcije igara dijele drugi. npr. Erwinove kolekcije Arduboy

arduboy.ried.cl/

Možete preuzeti izvorni kod igre koju učitavate automobilom na Arduino i učitati na Arduboy. Pogledajte video kako se to radi.

ili samo heksadecimalna datoteka (kompajlirana binarna datoteka, ali predstavljena u heksadecimalnom broju, ispisuje se u tekstualnu datoteku umjesto u binarnu datoteku).

Y Za izvorni kod, samo otvorite izvorni kod unutar Arduino IDE -a.

Izvorni kod npr. picovaders.ino treba pohraniti u fasciklu sa istim imenom, npr. picovaders

Potrebne Arduboy2 biblioteke trebale bi biti već instalirane u prethodnom koraku gdje učitavamo upravitelja ploče za Arduboy domaći paket.

Samo povežite Arduboy na USB priključak vašeg računara.

Uključite ga, a zatim kliknite gumb Upload na Arduino IDE -u za kompajliranje i postavljanje koda na Arduboy kako biste igrali igru.

Korak 5: Otpremite pojedinačne šesterokutne datoteke

Hex datoteka je tekstualna datoteka koja sadrži binarne kodove koji su rezultat kompilacije vašeg Arduino programa (skica), ali predstavljeni u tekstualnoj datoteci koristeći dvocifrene heksadecimalne brojeve 0-9, A-F.

Ove heksadecimalne datoteke možete dobiti na različite načine.

1. Možemo preuzeti heksadecimalne datoteke iz različitih izvora koje smo gore objasnili:

community.arduboy.com/c/games Erwinove zbirke igara Arduboy

Potražite "Arduboy igre" na GitHub.com ili na google.com

Spremite ove heksadecimalne datoteke u datoteke s nastavkom.hex.

2. Alternativno, možete napraviti vlastitu hex datoteku.

U Arduino IDE -u odaberite Sketch> Export Compiled Binary. Vaša skica će se sastaviti, a zatim će se kopija kompajlirane.hex datoteke poslati u direktorij vaše skice. Idite u mapu skice ili u IDE -u odaberite Sketch> Show Sketch Folder da vidite heksadecimalnu datoteku. Ako ste instalirali MR. Blinkyjev domaći paket, kreirat će se dvije verzije.hex datoteke. Na primjer, ako sastavite picovaders.ino skelet, stvorit će se sljedeće dvije.hex datoteke.

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

Koristit ćemo prvu datoteku: picovaders.ino-arduboy-promicro-ssd1306.hex

3. Da biste učitali heksadecimalnu datoteku na Arduboy, morate koristiti uploader. Na internetu ih ima mnogo. Volim koristiti program za učitavanje MR. Blinky jer je jednostavan za korištenje.

Idite na https://github.com/MrBlinky/Arduboy-Python-Utilities i slijedite upute za instaliranje pomoćnih programa Arduboy Python programa MR. Blinky. Ako nemate instaliran python, morate slijediti upute za instaliranje pythona i potrebnih python modula.

4. Priključite Arduboy na USB port vašeg računara. Uključite Arduboy.

5. Pokrenite ljuski program u svom operativnom sistemu, npr. terminalna aplikacija u Mac OSX -u ili naredbeni redak u prozorima za upisivanje sljedećih naredbi za postavljanje hex datoteke na Arduboy. Uzimajući kao primjer našu prethodnu skicu picovaders.ino.

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

6. Nakon što se igra učita, Arduboy će se resetirati i pokrenuti igru.

Korak 6: Napišite igre u Serial Flash

1. Da biste zapisali konsolidiranu datoteku igre na serijski flash, morate ponovo koristiti pomoćne programe Arduboy Python programa MR. Blinky. Ovo biste trebali imati već instalirano ako slijedite prethodni korak.

U suprotnom, idite na https://github.com/MrBlinky/Arduboy-Python-Utilities i slijedite upute za instalaciju pomoćnih programa Arduboy Python programa MR. Blinky. Ako nemate instaliran python, morate slijediti upute za instaliranje pythona i potrebnih python modula.

2. Kreirajte indeksnu datoteku za datoteku slike konsolidirane igre koja može sadržavati čak 500 igara.

Koristit ćemo skriptu Use flashcart-builder.py za izradu konsolidiranih datoteka sa slikama igara za sve igre koje želite pohraniti u serijski flash Arduboya. Serijski blic od 16 MB može da primi čak 500 igara. Ova skripta gradi binarnu flash sliku iz indeksne datoteke (.csv) i sljedeće 2 datoteke za svaku igru: a..hex datoteke koje su tekstualne datoteke koje sadrže heksadecimalne kodove binarnih slika sastavljenih Arduboy igara. Pogledajte datoteku Pogledajte primjer-flashcart / flashcart-index.csv datoteku na primjer sintaksu. Ova datoteka je uključena u paket ako kliknete Kloniraj ili Preuzmi. b.-p.webp

Video na youtube -u također objašnjava kako postaviti stvari na pravo mjesto ove.csv indeksne datoteke. Treba napomenuti da se primjeri.csv datoteke sa MR. Blinky -jevog GitHub -a koriste na Windows računarima, obrnuta kosa crta "\" se koristi u imenima putanja. Ako koristite liunx sistem ili MAC OSX, morate ga promijeniti u "/".

Za brzi početak, možete preuzeti moj paket od 63 igre sa https://github.com/cheungbx/ArduBaby 63games.zip

Ovaj paket sadrži heksadecimalne datoteke i-p.webp

Možete dodati još igara u games.csv i izgraditi vlastitu konsolidiranu datoteku binarne slike igre za pisanje na serijski flash. Na 16M serijski blic možete staviti najviše 500 igara.

Objasnit ću kako napraviti.csv datoteku pomoću igre.csv koju možete preuzeti s mog GitHub -a.

Iako se.csv datoteka može otvoriti pomoću programa Excel. NEMOJTE koristiti Excel za otvaranje datoteke. To će oštetiti datoteku. Molimo koristite samo uređivač običnog teksta. Beležnicu možete koristiti u prozorima. Koristio sam textEdit u MAC-u i kliknuo "Format"-> "Make Plain Text".

Prvi red.csv datoteke je zaglavlje koje možete zanemariti. Lista; Opis; Naslovni ekran; Hex datoteka

Druga linija pokazuje na grafičku datoteku slike (mora imati 128x64 piksela u-p.webp

Igre su konfigurirane počevši od treće linije. Igre su organizirane u grupe u izborniku pokretačkog programa koji se nazivaju kategorije. Ova linija je naslov grupe na popisu igara za tu grupu, npr. Action Game. Takođe ukazuje na grafičku datoteku slike za grupu igara. "1" na početku označava grupu 1. Sve igre koje slijede nakon ove grupe počet će s tim brojem. 1; Akcione igre; ekrani kategorija / Action.png;;;

Zatim dodate jednu liniju za svaku igru unutar te grupe. Počevši od grupe 1, naziva igre i putanje grafičke datoteke za snimak ekrana, te putanje heksadecimalne datoteke. Sve odvojeno sa ";". Dodajte još jedan ";" da preskočite parametar za datoteku za spremanje. 1; 1943; Arcade/Nineteen43.png; Arcade/Nineteen43.hex;; 1; 2048; Arcade/2048.png; Arcade/2048.hex;;

Nakon što završite prvu grupu igara, možete dodati drugu grupu i tako dalje. npr.

9; Demo & Test; demos/demotest.png;;; 9; Vrući puter; 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;

Zadnji red ima datoteku za spremanje u parametru koji je crtani film.

3. Da biste izgradili konsolidiranu datoteku slike igre, upišite naredbu, gdje je games.csv vaša datoteka indeksa igre.

python flashcart-builder.py games.csv

Ovo će stvoriti datoteku pod nazivom games-image.bin

4. Napišite konsolidiranu datoteku slike igre u Arduboy.

Koristimo MR. Blinkyjevu datoteku flashcart-writer.py za pisanje konsolidirane datoteke slike igre u serijsku flash memoriju Arduboya.

Ako koristite moj primjer datoteke games-image.bin, možete upisati ovu naredbu.

python flashcart-writer.py games-image.bin

Ako koristite SSD1309 OLED ekran umjesto SSD1306 OLED -a na standardnoj verziji, možete zakrpati upravljački program ekrana u hodu. Da biste automatski primijenili zakrpu SSD1309 na prenesenu sliku, napravite kopiju flashcart-writer.py i preimenujte je u flashcart-writer-1309.py. Zatim otkucajte

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

Korak 7: Igrajte igre sa Serial Flash -a

Da biste igrali igre sa serijskog blica, uključite Arduboy.

Ako već imate učitanu igru, igra će se automatski pokrenuti. Jednom pritisnite tipku za poništavanje na vrhu Ardubabyja da biste otišli na izbornik pokretačkog programa.

Prikazat će se izbornik pokretačkog programa. RGB LED će svijetliti u nizu.

Ako umjesto toga vidite ikonu koja izgleda kao USB priključak, to znači da vaš serijski flash memorijski čip ne radi. Molimo provjerite ožičenje.

Ako ne pritisnete nijedan taster u roku od 12 sekundi, igra koja je već uskladištena u internoj fleš memoriji ATMega32U4 će se pokrenuti.

Da biste se vratili iz igre na meni za pokretanje, samo jednom pritisnite dugme Reset.

Možete pritisnuti lijevo ili desno dugme za kretanje kroz različite kategorije (grupe) igara. Pritisnite tipku dolje ili gore za kretanje kroz igre unutar kategorije (grupe). Pritisnite dugme "B" da kopirate igru iz serijske flash memorije u internu Flash memoriju ATMega32U4. Igra će početi u roku od sekunde.

Sada imate malu igraću konzolu koju možete igrati na putu.

Izazivam vas da prikupite i učitate 16M serijski blic sa 500 igara. Nisam još video nikoga ko je to uradio da napuni serijski blic. Ako to možete, podijelite tu konsolidiranu datoteku igre s nama.

Korak 8: Reference

Potpuno uputstvo o tome bit će objavljeno na ovom linku na stranici Instructables.comTBD

Youtube video za demonstraciju igraće konzole ArduBaby

Youtube video za 3.3V modifikaciju USBasp programatora za pokretanje.

Datoteke igara i sheme kola u ovom videu mogu se pronaći na ovoj GitHub vezi

Sheme

MR. Blinkyjeva GitHub veza za Arduboy domaći paket

MR. Blinkyjeva GitHub veza za python pomoćne programe za postavljanje igara i operacije serijske flash memorije

Erwinove zbirke igara Arduboy

Zasluge za kreatora (Kevin Bates), Arduboy je vrlo uspješna 8 -bitna igraća konzola. Bilo je hiljade igara koje je napisao hobist koji ih je slobodno podijelio na forumu zajednice u Arduboyu kako bi više ljudi moglo naučiti kodirati.

Zasluge za MR. Blinky za stvaranje domaćeg paketa, flashcart -a i pomoćnih programa python.

Preporučuje se: