Taula de continguts:

Com penjar jocs a Arduboy i 500 jocs a Flash-cart: 8 passos
Com penjar jocs a Arduboy i 500 jocs a Flash-cart: 8 passos

Vídeo: Com penjar jocs a Arduboy i 500 jocs a Flash-cart: 8 passos

Vídeo: Com penjar jocs a Arduboy i 500 jocs a Flash-cart: 8 passos
Vídeo: ЗАПРЕЩЁННЫЕ ТОВАРЫ с ALIEXPRESS 2023 ШТРАФ и ТЮРЬМА ЛЕГКО! 2024, De novembre
Anonim
Com penjar jocs a Arduboy i 500 jocs a Flash-cart
Com penjar jocs a Arduboy i 500 jocs a Flash-cart

Vaig fer un Arduboy casolà amb memòria Flash Serial que pot emmagatzemar fins a 500 jocs per jugar a la carretera. Espero compartir com carregar-hi jocs, inclòs com emmagatzemar-los a la memòria flash en sèrie i crear el vostre propi paquet de joc consolidat per jugar a la carretera.

Podeu veure aquest vídeo de youtube per obtenir una explicació i un procés de creació d’extrem a extrem

Pas 1: configureu Arduino IDE

Si no coneixeu Arduino, aneu a https://www.arduino.cc per descarregar l’IDE Arduino del sistema operatiu que utilitzeu, per exemple, Windows 10 o Mac OSX o Linux.

A continuació, instal·leu-lo.

Pas 2: feu el cable USBasp

A diferència de carregar codis / jocs binaris a qualsevol placa Arduino, la programació del carregador d’arrencada no es pot fer a través del port USB.

Per gravar el carregador d’arrencada personalitzat (Cathy3K) al xip Atmega32U4, heu d’aconseguir un programador USBasp. Tot i això, la nostra creació funciona a 3,3 V, hem de modificar encara més el programador USBasp perquè funcioni a 3,3 V.

Consulteu el següent projecte instructiu per modificar el programador USBasp perquè funcioni tant a 3.3V com a 5V mitjançant la configuració del pont.

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

A continuació, seguiu el disseny del pin i el vídeo per fer el cable del programa USBasp a ArduBaby. el cable USBasp original que s'inclou amb l'USBasp té dos connectors, cadascun de 10 pins. Tallarem aquest cable per la meitat i connectarem una capçalera masculina de 6 pins a un extrem mantenint l’altre extrem que es connecta amb la placa USBasp a 10 pins.

Aquest altre extrem connectarà els pins GND, VCC, MOSI, MISO, SCK, Reset des de l'USBasp als pins corresponents de l'ATmega32U4 a través de la capçalera masculina que es connecta als sis primers pins de la capçalera femenina de l'Ardubaby (la meva versió de casolà Arduboy). La vostra versió pot tenir un disseny de pins diferent. Podeu fer referència al meu vídeo per canviar el disseny perquè s’adapti a la vostra versió d’Arduboy casolà.

Per fer el programa o gravar el carregador d'arrencada a ATmega32U4, traureu el barret de botó i connectareu aquest cable USBasp de 6 pins.

Assegureu-vos de marcar quin pin és el pin one clarament a la capçalera del cable de manera que no es faci la connexió incorrecta. Quan vaig dissenyar la disposició dels pins per a les capçaleres del barret de botó Ardubaby, vaig intentar organitzar els pins de manera que, fins i tot si canvieu el pin 1 amb el pin 13, la font d'alimentació -ve no coincidirà accidentalment amb la font d'alimentació + ve per evitar danys. Tanmateix, mai se sap, poden passar altres coses que encara puguin danyar el vostre equip si us connecteu en la direcció incorrecta.

Cremaré un petit forat per marcar-lo a la capçalera amb la punta de la soldadora.

Pas 3: Cremeu el carregador d'arrencada

MR. Blinky va crear el paquet Arduboy-homemade-per a Arduboy casolà.

El seu paquet inclou els controladors de taulers i la biblioteca d'Arduboy que funciona amb diferents versions de l'Arduboy original, així com amb les casolanes.

1. Cerqueu la carpeta GitHub de MR. Blinky per obtenir el casolà Arduboy. https://github.com/MrBlinky/Arduboy-homemade-package 2. Seguiu les instruccions del GitHub per configurar el vostre IDE Arduino amb el paquet casolà. 3. Primer copieu l'URL del "Gestor de taulers addicionals" per al paquet casolà d'Arduboy.

4. Inicieu Arduino IDE. Feu clic a Preferències al menú superior d'Arduino. Enganxeu aquest text als "URL del gestor de taulers addicionals" Nota: si ja teniu altre text en aquest camp, inseriu aquest text addicional al principi i, a continuació, afegiu un "," i mantingueu l'altre text intacte. 5. Sortiu de l'IDE d'Arduino i torneu a iniciar l'IDE per fer efectiu el canvi anterior. 6. Feu clic a Eines -> Tauler: -> Gestor de taules. Introduïu a casa per cercar. Seleccioneu per instal·lar el paquet casolà Arduboy de Mr. Blinky. A continuació, feu clic a Actualitza per obtenir la versió més recent. El paquet s'afegirà a Arduino. 7. Ara seleccioneu Eines-> Tauler: "Arduboy casolà. i seleccioneu els paràmetres següents per a Arduboy casolà”Basat en:“SparkFun Pro Micro 5V - Cablejat estàndard”Nucli:“Arduboy Optimized core”Bootloader:“Cathy3K”Programador: USBasp 8. Apagueu l’Ardubaby i traieu el barret del botó. 9. Configureu el pont a l'USBasp a 3,3V. Assegureu-vos que utilitzeu un USBasp modificat que funcioni completament a 3,3V. 10. Connecteu l'USBasp al port USB de l'ordinador. Connecteu el cable USBasp especial a ArduBaby a USBasp i l’altre extrem a la capçalera del botó de l’Ardubaby, alineeu el pin 1 al pin 1. Només s’utilitzen els 6 primers pins de l’Ardubaby per gravar el carregador d’arrencada.

11. El vostre Ardubaby s'hauria d'engegar ara mitjançant l'alimentació de 3,3 V subministrada per l'USBasp. 12. Premeu el botó de restabliment de l'ArduBaby una vegada. 13. Feu clic al botó Eines-> Taulers-> Grava el carregador d'arrencada a l'IDE Arduino. 14. Comproveu el missatge per veure si la gravació del carregador d'arrencada té èxit. 15. Si no, comproveu el cable i assegureu-vos de connectar els pins en la direcció correcta i alinear el pin 1 amb el pin 1. De vegades, l'Ardubaby començarà a jugar un joc anterior si el menú d'arrencada s'espera. Per tant, heu de fer clic al botó Grava el carregador d’arrencada ràpidament just després de prémer el botó de reinicialització per posar Ardubaby al mode de flash pendent. 16. Si tot està bé, l'ArduBaby es reiniciarà i veureu el menú d'arrencada o el joc anterior que heu carregat a l'ArduBaby.

Pas 4: Compileu i pengeu jocs individuals a Arduboy

Els jocs per a Arduboy es poden descarregar des de les fonts següents:

Fòrum de la comunitat Arduboy per a jocs:

La cerca de GitHub a "Jocs Arduboy" https://github.com/topics/arduboy-game o simplement cerca "Jocs arduboy GitHub" a Google.

Col·leccions de jocs compartides per altres. per exemple. Col·leccions Arduboy d'Erwin

arduboy.ried.cl/

Podeu descarregar el codi font del joc que carregueu a Arduino i penjar-lo a l'Arduboy. Vegeu el vídeo sobre com es fa això.

o només el fitxer hexadecimal (el fitxer binari compilat però presentat en número hexadecimal imprès en un fitxer de text en lloc d’un fitxer binari).

YPer al codi font, només cal que obriu el codi font a Arduino IDE.

El codi font, per exemple, picovaders.ino s’ha d’emmagatzemar en una carpeta del mateix nom, per exemple. picovaders

Les biblioteques necessàries d'Arduboy2 ja haurien d'estar instal·lades al pas anterior on carreguem el gestor de taules per al paquet casolà d'Arduboy.

Simplement connecteu l'Arduboy al port USB de l'ordinador.

Activeu-lo i feu clic al botó Puja de l'IDE Arduino per compilar i penjar el codi a l'Arduboy per jugar al joc.

Pas 5: pengeu fitxers hexagonals individuals

El fitxer hexadecimal és un fitxer de text que conté codis binaris que resulten de la compilació del vostre programa Arduino (croquis), però representat en un format de fitxer de text mitjançant números hexadecimals de 0 a 9, A-F.

Podeu obtenir aquests fitxers hexadecimals de diferents maneres.

1. Podem descarregar fitxers hexadecimals de les diferents fonts que hem explicat anteriorment:

community.arduboy.com/c/games Arduboy Erwin's Game Collections

Cerqueu "Jocs Arduboy" a GitHub.com o a google.com

Deseu aquests fitxers hexadecimals a fitxers amb una extensió de.hex.

2. Com a alternativa, podeu crear el vostre propi fitxer hexadecimal.

A l’IDE Arduino, seleccioneu Esbós> Exporta el binari compilat. Es compilarà el vostre esbós i, a continuació, es publicarà una còpia del fitxer.hex compilat al directori del vostre esbós. Navegueu fins a la carpeta d'esbossos o a l'IDE seleccioneu Esbós> Mostra la carpeta d'esbós per veure el fitxer hexadecimal. Si heu instal·lat el paquet casolà de MR. Blinky, es crearan dues versions del fitxer.hex. Per exemple, si compileu el dibuix picovaders.ino, es crearan els dos fitxers.hex següents.

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

Utilitzarem el primer fitxer: picovaders.ino-arduboy-promicro-ssd1306.hex

3. Per carregar un fitxer hexadecimal a Arduboy, heu d'utilitzar un programa de càrrega. N’hi ha molts a Internet. M'agrada utilitzar el programa de càrrega de MR. Blinky, ja que és senzill d'utilitzar.

Navegueu a https://github.com/MrBlinky/Arduboy-Python-Utilities i seguiu les instruccions allà per instal·lar les utilitats Arduboy Python de MR. Blinky. Si no teniu instal·lat un python, primer heu de seguir les instruccions per instal·lar python i els mòduls python necessaris.

4. Connecteu l'Arduboy al port USB de l'ordinador. Enceneu l'Arduboy.

5. Inicieu el programa de l'intèrpret d'ordres al vostre sistema operatiu, per exemple. l'aplicació de terminal de Mac OSX o l'indicador d'ordres de Windows per escriure les ordres següents per carregar el fitxer hexadecimal a l'Arduboy. Prenent com a exemple el nostre anterior esbós picovaders.ino.

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

6. Un cop carregat el joc, l'Arduboy es reiniciarà i començarà el joc.

Pas 6: escriviu jocs a Serial Flash

1. Per escriure el fitxer de joc consolidat a Flash de sèrie, heu de tornar a utilitzar les utilitats Arduboy Python de MR. Blinky. Hauríeu d'instal·lar-ho ja si seguiu el pas anterior.

En cas contrari, aneu a https://github.com/MrBlinky/Arduboy-Python-Utilities i seguiu les instruccions allà per instal·lar les utilitats Arduboy Python de MR. Blinky. Si no teniu un python instal·lat, primer heu de seguir les instruccions per instal·lar python i els mòduls python necessaris.

2. Creeu el fitxer d'índex per al fitxer d'imatge de joc consolidat que contingui fins a 500 jocs.

Utilitzarem l'ús de l'script flashcart-builder.py per crear fitxers d'imatge de joc consolidats per a tots els jocs que vulgueu emmagatzemar al flash de sèrie de l'Arduboy. Un flash de 16 MB pot contenir fins a 500 jocs. Aquest script crea una imatge flash binària a partir d'un fitxer d'índex (.csv) i els dos fitxers següents per a cada joc: a..hex que és el fitxer de text que conté els codis hexadecimals de les imatges binàries dels jocs Arduboy compilats. Consulteu el fitxer example-flashcart / flashcart-index.csv per exemple de sintaxi. Aquest fitxer s’inclourà al paquet si feu clic a Clona o Baixa. b.-p.webp

El vídeo de youtube també explica com posar les coses al lloc adequat d’aquest fitxer d’índex.csv. Una cosa a tenir en compte és que els fitxers.csv d’exemples del GitHub de MR. Blinky s’utilitzen en PC amb Windows; la barra invertida "\" s’utilitza als noms de ruta. Si utilitzeu un sistema liunx o MAC OSX, haureu de canviar-lo a "/".

Per començar ràpidament, podeu descarregar el meu paquet de 63 jocs des de https://github.com/cheungbx/ArduBaby 63games.zip

Aquest paquet conté els fitxers hexadecimals i-p.webp

Podeu afegir més jocs a games.csv i crear el vostre propi fitxer d'imatges binàries consolidades de jocs que s'escriurà al flaix de sèrie. Podeu posar 500 jocs com a màxim al flaix de sèrie de 16 milions.

Us explicaré com fer el fitxer.csv mitjançant el joc.csv que podeu descarregar del meu GitHub.

Tot i que el fitxer.csv es pot obrir amb excel. NO utilitzeu Excel per obrir el fitxer. Danyarà el fitxer. Utilitzeu només un editor de text pla. Podeu utilitzar el bloc de notes a Windows. He utilitzat textEdit a MAC i he fet clic a "Format" -> "Crea text sense format".

La primera línia del fitxer.csv és la capçalera que podeu ignorar. Llista; Descripció; Pantalla de títol; Fitxer hexadecimal

La segona línia apunta al fitxer d'imatge gràfica (ha de tenir 128x64 píxels en format png) per a la pantalla manual del carregador d'arrencada. 0; Bootloader; arduboy_loader.png;;;

Els jocs es configuren a partir de la tercera línia. Els jocs s’organitzen en grups al menú del carregador d’arrencada anomenats categories. Aquesta línia és el títol del grup de la llista de jocs d’aquest grup, p. Joc d'acció. També apunta al fitxer d'imatges gràfiques del grup de jocs. L '"1" al principi indica el grup 1. Tots els jocs que segueixen aquest grup començaran amb aquest número. 1; Jocs d'acció; categories-pantalles / Action.png;;;

A continuació, afegiu una línia per a cada joc dins d'aquest grup. Començant pel grup número 1, el nom del joc i el camí del fitxer gràfic per a una instantània de la pantalla i el camí del fitxer hexadecimal. Tot separat per ";". Afegiu-ne un de més ";" per ometre el paràmetre del fitxer de desat. 1; 1943; Arcade / Nineteen43.png; Arcade / Nineteen43.hex;; 1; 2048; Arcade / 2048.png; Arcade / 2048.hex;;

Un cop hàgiu acabat el primer grup de jocs, podeu afegir el segon grup de jocs, etc. per exemple.

9; Demo & Test; demos / demotest.png;;; 9; mantega calenta; demostracions / HotButter_AB.png; demostracions / 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;

L'última línia té un fitxer de desat al paràmetre que és una pel·lícula de dibuixos animats.

3. Per crear el fitxer d'imatge de joc consolidat, escriviu l'ordre, on games.csv és el fitxer d'índex de joc.

python flashcart-builder.py games.csv

Això crearà un fitxer anomenat games-image.bin

4. Escriviu el fitxer d'imatge del joc consolidat a Arduboy.

Utilitzem l'script flashcart-writer.py de MR. Blinky per escriure el fitxer d'imatge de joc consolidat a la memòria flash de sèrie de l'Arduboy.

Si utilitzeu el meu fitxer de mostra games-image.bin, podeu escriure aquesta ordre.

python flashcart-writer.py games-image.bin

Si utilitzeu una pantalla OLED SSD1309 en lloc de l'OLED SSD1306 a la versió estàndard, podeu pegar el controlador de pantalla al vol. Per aplicar automàticament el pegat SSD1309 a la imatge carregada, feu una còpia de flashcart-writer.py i canvieu-lo amb el nom de flashcart-writer-1309.py. A continuació, escriviu

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

Pas 7: Juga a jocs des de Serial Flash

Per jugar a jocs des del flash en sèrie, enceneu l'Arduboy.

Si ja teniu un joc carregat, el joc s'iniciarà automàticament. Premeu el botó de restabliment a la part superior de l'Ardubaby una vegada per anar al menú del carregador d'arrencada.

Es mostrarà el menú del carregador d’arrencada. El LED RGB s’encendrà en seqüència.

Si al seu lloc apareix una icona que sembla un port USB, vol dir que el vostre xip de memòria flash sèrie no funciona. Si us plau, comproveu el cablejat.

Si no premeu cap tecla en un termini de 12 segons, s'executarà el joc ja emmagatzemat a la memòria flash interna de l'ATMega32U4.

Per tornar d'un joc al menú del carregador d'arrencada, només heu de prémer el botó Restableix una vegada.

Podeu prémer el botó esquerre o dret per desplaçar-vos per les diferents categories (grups) de jocs. Premeu el botó avall o amunt per desplaçar-vos pels jocs d'una categoria (grup). Premeu el botó "B" per copiar el joc de la memòria flash de sèrie a la memòria Flash interna de l'ATMega32U4. El joc començarà en un segon.

Ara teniu una petita consola de jocs que podeu jugar a la carretera.

Us desafio a recollir i carregar el vostre Flash Serial 16M amb 500 jocs. Encara no he vist ningú que ho hagi fet per omplir el flaix de sèrie. Si podeu fer-ho, compartiu aquest fitxer de joc consolidat amb nosaltres.

Pas 8: referències

Es publicarà una instrucció completa en aquest enllaç de Instructables.comTBD

Vídeo de Youtube per a la demostració de la consola de jocs ArduBaby

Vídeo de Youtube per a la modificació de 3,3 V del programador d'arrencada USBasp.

Els fitxers del joc i els esquemes del circuit d’aquest vídeo es poden trobar en aquest enllaç de GitHub

Esquemes

Enllaç GitHub de MR. Blinky per al paquet casolà Arduboy

Enllaç GitHub de MR. Blinky per a les utilitats Python per a càrregues de jocs i operacions de memòria flash en sèrie

Col·leccions de jocs Arduboy d'Erwin

Crèdits al creador (Kevin Bates), l'Arduboy és una consola de jocs de 8 bits molt reeixida. Hi havia milers de jocs escrits per l’aficionat que els compartia lliurement al fòrum de la comunitat d’Arduboy perquè més gent pugui aprendre a codificar.

Crèdits a MR. Blinky per crear el paquet casolà, el flashcart i les utilitats python.

Recomanat: