Inhaltsverzeichnis:

Ardubaby Mini-Spielekonsole mit 500 Spielen - Gunook
Ardubaby Mini-Spielekonsole mit 500 Spielen - Gunook

Video: Ardubaby Mini-Spielekonsole mit 500 Spielen - Gunook

Video: Ardubaby Mini-Spielekonsole mit 500 Spielen - Gunook
Video: Arduboy - самая маленькая консоль 🎮 #retrogaming #gameboy #игры #8bit #16bit #arduboy #arduino 2024, Juli
Anonim
Ardubaby Mini-Spielekonsole mit 500 Spielen
Ardubaby Mini-Spielekonsole mit 500 Spielen
Ardubaby Mini-Spielekonsole mit 500 Spielen
Ardubaby Mini-Spielekonsole mit 500 Spielen

Dank an den Schöpfer (Kevin Bates), der Arduboy ist eine sehr erfolgreiche 8-Bit-Spielekonsole. Es gab Tausende von Spielen, die von dem Bastler geschrieben wurden, der sie frei im Community-Forum von Arduboy geteilt hat, damit mehr Leute das Programmieren lernen können.

Das Hardware-Design ist ebenfalls Open Source und ermöglicht es Herstellern wie mir, ihre eigene Hardware-Version zu entwerfen und Software-Dienstprogramme zu entwickeln, um ihre Funktion zu verbessern. Dank an MR. Blinky, der die Flash-Cart-Schaltung, das hausgemachte Paket für die Arduino IDE und die Python-Dienstprogramme zur Verwaltung des Flash-Carts entwickelt hat, der 500 Spiele auf einem seriellen 16-Mbyte-Flash-Speicher speichern kann, um unterwegs ohne Computer zu spielen.

Beim Studium der Diskussionsthreads im Community-Forum von Arduboy habe ich gelernt, was ich brauche, um mehrere hausgemachte Arduboys zu erstellen. Für Neueinsteiger ist das vielleicht nicht einfach. Daher möchte ich das, was ich gelernt habe, in einem einzigen End-to-End-Video und dieser schriftlichen Anleitung teilen. Ich hoffe, dies wird denjenigen helfen, die nach Antworten suchen, um ihr eigenes Kit zu bauen, aber nicht wissen, wie sie diese Fragen stellen sollen oder nicht den richtigen Kanal gefunden haben, um diese Fragen zu stellen.

Meine Version des Arduboy ist winzig, nur 1/4 der Größe der Kreditkarte (3,5 cm x 5,0 cm0), aber etwas dick (2 cm einschließlich der unteren Abdeckung), hat aber alle Schnickschnack, die Sie brauchen: 0,9 OLED, Kopfhöreranschluss, Lautstärkeregler, RGB-LED.

und vor allem der Erweiterungsport, mit dem Sie Ihre Spielkonsolentasten gegen andere austauschen können, indem Sie die obere Platine (die Tastenkappe) austauschen.

Sie können dann lautlose Tasten, Joystick-ähnliche Tasten oder sogar analoge Controller wie ein Potentiometer verwenden.

Sie können auch Feuchtigkeits- und Temperatursensoren hinzufügen, um eine winzige Wetterstation zu bauen, oder Ultraschallsensoren hinzufügen, um einen Entfernungsmesser zu bauen.

Es verfügt auch über zusätzliche 16 MB seriellen Flash-Speicher zum Speichern von bis zu 500 Arduboy-Spielen oder Dienstprogrammen. Mit dem von MR. Blinky entwickelten Bootloader (Cathy3K) können Sie eines der 500 Spiele unterwegs aufrufen und in Sekundenschnelle auf den ATmega32U4-Chip (Mikrocontroller des Arduboy) flashen, um mit dem Spielen zu beginnen, ohne Verbindung zu Ihrem Computer oder Telefon.

Schritt 1: Holen Sie sich alle Teile

Holen Sie sich alle Teile
Holen Sie sich alle Teile

Die meisten Teile können online über amazon.com, aliexpress.com oder taobao.com gekauft werden. Einige davon könnten von unbenutzten Arduino-Boards geerntet werden.

Es hat mich weniger als USD 12 (ohne Versand) gekostet, all dies von taobao.com zu kaufen und nach Hongkong zu versenden.

Arduino Pro Micro

OLED 64x128 SSD1306 SPI 0,96"

Winbond W25Q128 16Mbyte Speicherchip

3,7 V 280 MaH Lipo-Akku USB-LiPO-Akkulademodul (4,2 V)

3,5-mm-Kopfhörerbuchse 10K Mini-VR (B103) zur Lautstärkeregelung

10K mini VR (B103) für Potentiometer oder Drehregler (optional)

Mini-Piezo-Lautsprecher

3k, 3x 1K Widerstand

3-in-1-RGB-LED-Sieben

5x5mm Lautlos-Taste

9x4mm Schiebeschalter für Netzschalter

zwei 5x8cm doppelseitiges Perfboard

ein 5x8cm einseitiges Perfboard

1x13-polige Buchsenleiste

1x13-Pin-Stiftleiste

1x7-Pin-Buchsenleiste

1x7-Pin-Stiftleiste 3,5x5cm Acrylplatte für Rückabdeckung

Versandkosten in Ihr Budget aufzunehmen

Schritt 2: Machen Sie die Hauptplatine

Machen Sie das Mainboard
Machen Sie das Mainboard
Machen Sie das Mainboard
Machen Sie das Mainboard
Machen Sie das Mainboard
Machen Sie das Mainboard

1. Erstellen Sie den Rahmen für das Mainboard.

A. Nehmen Sie die 8cm x 5cm Perfboards. Schneiden Sie es mit einer Schere (oder einer Säge) zu, um ein 3,5 cm x 5 cm kleineres Perforationsbrett zu erhalten. Das sollte immer noch 18 Reihen und 13 Spalten Pinholes haben. Schneiden Sie ein 3,5 cm x 5 cm großes Stück aus einer Acrylplatte aus, das als hintere Abdeckung verwendet werden soll.

B. Löten Sie eine 13-polige Buchsenleiste in die letzte Reihe unten für den Knopfhut und die Erweiterung. C. Löten Sie eine 7-polige Buchsenleiste in die erste Reihe oben für die 7-polige OLED.

D. Löten Sie einen lautlosen Knopf für den Reset-Knopf. e. Löten Sie einen Schiebeschalter für den Netzschalter. F. Löten Sie eine 3,5-mm-Stereo-Kopfhörerbuchse für Kopfhörer. g. Kleben Sie einen 3-poligen 10K-Mini-Variablen-Widerstand auf.

2. Stellen Sie das 4,2 V LIPO-Batterieladegerät und den 3,3 V-Reglerkreis her.

A. Entlöten Sie den 5-poligen 5V-Regler auf der Pro-Micro-Platine, damit wir Strom von einem externen 3,3-V-Regler liefern können.

B. Schneiden Sie das LIPO-Akkulademodul so zu, dass es direkt neben der 3,4-mm-Akkubuchse auf die Hauptplatine passt. Sie müssen den Schnitt an der Stelle vornehmen, an der der USB-Anschluss auf den Rest der Schaltung trifft. Wenn dieser immer noch zu groß ist, müssen Sie möglicherweise etwas weiter trimmen. In meinem Fall muss ich einen der Widerstände verschieben und neu verlöten, damit ich weiter trimmen kann.

C. Schneiden Sie die Lasche oben am 3,3-V-Regler (AMS1117-3.3) ab, um Platz zu sparen und auch einen Kurzschluss zu vermeiden. Löten Sie dann tPin 1 an den negativen Ausgang und Pin 3 an den positiven Ausgang des LIPO-Lademoduls. Löten Sie einen 0,1uF-Kondensator zwischen Pin 1 und Pin 2, um das Rauschen zu entkoppeln und zu reduzieren. Verwenden Sie nach Möglichkeit einen kleinen SMD-Kondensator, um Platz zu sparen.

D. Verbinden Sie ein 0,3 mm laminiertes (isoliertes) Kabel vom RAW-Pin des Pro-Mikroboards mit dem positiven 5-V-Eingang des Batterielademoduls. Verbinden Sie ein Kabel vom GND-Pin der Pro-Mikroplatine mit dem negativen Eingang des Batterielademoduls. Schließen Sie ein Kabel vom mittleren Pin (Pin 2) des 3.3V-Reglers an. Verbinden Sie den Minus- und Pluspol der LIPO-Batterie mit dem Minus- bzw. Plusausgang des Batterieladegeräts.

D. Verbinden Sie das USB-Kabel von Ihrem Computer mit dem Pro-Micro Board. Der RAW-Pin sollte die 5V vom USB-Kabel zum LIPO-Akkulademodul liefern, das zum Laden des LIPO-Akkus geregelt wird. Die Lade-LED sollte aufleuchten. Der 3,3-V-Regler sollte den 4,2-V-Ausgang in 3,3 V umwandeln, um das Pro-Micro-Board mit Strom zu versorgen. Die LED auf der Pro-Micro-Platine sollte aufleuchten.

e. Starten Sie Arduino IDE und klicken Sie auf Tools -> Ports, um den Portnamen zu überprüfen und zu überprüfen, ob der USB-Port des Pro Micro von Ihrem Computer erkannt wird. Auf meinem MAC OSX wird "/dev/cu.usbmodem14201 (Arduino Leonardo)" angezeigt. Klicken Sie auf Tools-Boards und wählen Sie „Arduino Leonardo“. Laden Sie dann die Beispielskizze „Blink“. Testen Sie dann den Upload, um zu überprüfen, ob Sie auf das Pro Micro hochladen können. Wenn ein Problem auftritt, überprüfen Sie die Verkabelung und das Löten erneut.

3. Erstellen Sie die serielle Flash-Tochterplatine. A. Schneiden Sie ein kleineres einseitiges Perfboard mit 7 Stiftlöchern x 4 Stiftlöchern aus, das als Tochterplatine verwendet wird, um den Flash-Speicherchip und die zusätzlichen Breakout-Pins von D11, D12, D14 aufzunehmen. B. Teilen Sie die Lötpads der vorletzten Reihe der Platine in zwei Hälften. Dies wird verwendet, um das serielle Flash-Speichermodul zu montieren, das ein oberflächenmontiertes Gerät mit einem engen Abstand zwischen den Pins ist, so dass die mittleren beiden Pins auf den beiden Hälften des Lötpads stehen und nicht kurzgeschlossen werden. C. Löten Sie den Winbond W25Q128-Speicherchip auf das Perfboard. Stellen Sie sicher, dass sich keine zwei Pins berühren.

4. Löten Sie zusätzliche Breakouts vom ATMega32U4-Chip für die Pins D11, D12, D13. A. Löten Sie mit einer feinen Lötspitze und einer Lupe drei 0,5 mm laminierte (isolierte) Drähte auf die Pins des ATMega32U4-Chips, um die Pins D11, D12, D13 auszubrechen. Siehe Pinbelegung von ATMega32U4. Dies ist der schwierigste Teil des Projekts. Ich habe jedes Mal eine halbe Stunde damit verbracht, das zu löten. Sie müssen sehr vorsichtig sein, um nicht versehentlich andere Pins des Mikrocontrollers kurzzuschließen, während Sie dennoch eine solide Verbindung herstellen, die lange hält. Sehen Sie sich YouTube-Videos an, um zu erfahren, wie Sie so winzige Lötarbeiten ausführen und wie Sie mit den Entlötfäden versehentlich verschüttetes Lot retten können. Ich würde Heißluftgebläse / Heißluftgebläse nicht empfehlen, es sei denn, Sie sind geschickt genug. Wenn Abstand und Leistung nicht gut kontrolliert werden, kann dies leicht die Lötstellen des ATMega32U4-Chips ruinieren oder andere Komponenten schmelzen und die gesamte Platine bis zur Wiederherstellung beschädigen.

B. Löten Sie die anderen Enden der drei Drähte auf die mittleren 3 Lötpads in der letzten Reihe der seriellen Flash-Tochterplatine.

5. Montieren Sie die serielle Flash-Tochterplatine auf dem Pro Micro-Chip. A. Löten Sie 0,5-mm-Drähte an der ersten Stiftreihe oben auf der Pro Micro-Platine, d. h. TX und RAW.

B. Löten Sie 0,5-mm-Drähte (z. B. die von den Beinen der Transistoren) an die letzten vier Stiftreihen auf der Rückseite des Pro Micro-Chips. d.h. D6, D7, D8, D9 und SCLK, MISO, MOSI und A10. Der Draht sollte von oben nach unten herausragen, damit wir ihn zum Löten auf der Tochterplatine verwenden und unten mit der Hauptplatine verbinden können. C. Löten Sie die serielle Flash-Tochterplatine an das Pro Micro, indem Sie die letzten Pinreihen des Pro Micro mit der der Tochterplatine verbinden.

6. Montieren Sie die LIPO Batterieladeplatine auf der Hauptplatine. A. Löten Sie 0,5 mm Drähte (z. B. die von den Beinen der Transistoren) an die 4 Ecken der LIPO-Batterieladeplatine (für -ve Eingang, +ve Eingang, -ve Ausgang, +ve Ausgang). Bohren Sie ein Loch an der Stelle, an der sich der mittlere Stift des 3V-Reglers befindet. Löten Sie einen 0,3 mm laminierten Draht an den mittleren Stift (3,3 V Ausgang). b. Löten Sie die 4 Beine der Batterieladeplatine auf die Hauptplatine, direkt neben der 3,5-mm-Kopfhörerbuchse. Um Platz zu sparen, sollte die Ladeplatine nach unten gedrückt werden, damit sie auf die Hauptplatine trifft.

7. Montieren Sie das Pro Micro Board an der Unterseite des Mainboards und löten Sie alle Pins der letzten 4 Reihen und der ersten Reihe des Pro Micro an das Mainboard an. Die anderen Pins müssen nicht gelötet werden, sie werden später bei Bedarf mit laminierten Drähten verbunden. Dies ermöglicht eine einfachere Modifikation und bei Bedarf den Austausch des Pro Micro, wenn es verbrannt ist.

8. Machen Sie den Rest des Lötens.

Verbinden Sie die Pins des Pro Micro Boards mit den verschiedenen Komponenten und Headern. Alle Lötverbindungen werden an der Unterseite des doppelseitigen Perfboards hergestellt. Nachdem alle Lötarbeiten abgeschlossen sind, testen Sie die Verbindung.

9. Bedecken Sie die Unterseite der Hauptplatine mit der Acrylplatte der gleichen Größe.

Schritt 3: Machen Sie den Knopfhut

1. Erstellen Sie den Rahmen für den Knopfhut

A. Nehmen Sie die 8cm x 5cm Perfboards. Schneiden Sie es mit einer Schere (oder einer Säge) zu, um ein 3,5 cm x 5 cm kleineres Perforationsbrett zu erhalten. Das sollte immer noch 18 Reihen und 13 Spalten Pinholes haben. Schneiden Sie ein Fenster mit 2,8 x 2,2 cm Fenster aus, das groß genug ist, um das Glas des OLED nach hinten herausragen zu lassen. Ich habe dazu eine Diamanttrennscheibe verwendet. Das Werkzeug ist so scharf und stark, dass Sie Ihre Finger verlieren können, wenn Sie nicht aufpassen. Sie können den Zuschnitt an der zweiten Nadellochreihe von oben und an der neunten Nadellochreihe von unten platzieren. und in der 2. Spalte von Stiftlöchern von jeder Seite.

B. Löten Sie einen 13-poligen Stecker in die letzte Reihe des Perfboards.

C. Layout-Tasten auf dem Perfboard für D-PAD (Richtungstasten, oben, unten, links, rechts) und die A-Taste und die B-Taste. Löten Sie sie dann auf der Vorderseite des Perfboards.

D. Verbinden Sie an der Unterseite des Perfboards eine Seite aller Tasten mit dem Erdungsstift (Pin 2) des männlichen Headers.

e. Verbinden Sie den zweiten Pin jedes Knopfes mit dem entsprechenden Pin am Stecker für diesen Knopf.

F. Wenn Sie eine Tastenkappe für einen Potentiometer-Dreh- oder Drehregler bauen, installieren Sie anstelle der D-PAD-Richtungstasten einen 3-poligen 10K-variablen Widerstand. Vergewissern Sie sich, dass die Teilenummer des variablen Widerstands mit „B“beginnt (z. B. „B103“steht für Max. 10K), nicht mit „A“. „A“bedeutet, dass der Drehwinkel proportional zum LOG des Widerstands ist. B bedeutet, dass der Drehwinkel proportional zum Widerstand ist. Wir benötigen VRs vom Typ B für den rotierenden Gamecontroller. Verbinden Sie eine Seite des Potentiometers (den GND-Pin) mit GND (Pin 2 des Button-Hut-Headers). Verbinden Sie die andere Seite des Potentiometers mit VCC (Pin 3 des Button-Hat-Headers). Verbinden Sie den mittleren Pin des Potentiometers mit dem ausgewählten Analog-zu-Digital-Pin des Pro Micro-Boards (einer von A0, A1, A2, A3), je nachdem, mit welchem Pin das Spiel codiert ist. Wenn die Steuerung nicht glatt ist (herumspringt), können Sie einen 100pf-Kondensator zwischen dem GND-Pin und dem mittleren Pin des Potentiometers anschließen, um das Rauschen in der Schaltung zu entkoppeln.

Schritt 4: Arduino-IDE einrichten

Wenn Sie neu bei Arduino sind, navigieren Sie zu https://www.arduino.cc, um die Arduino-IDE für das Betriebssystem herunterzuladen, das Sie verwenden, z. B. Windows 10 oder Mac OSX oder Linux.

Dann installieren Sie es.

Schritt 5: Machen Sie das USBasp-Kabel

Machen Sie das USBasp-Kabel
Machen Sie das USBasp-Kabel

Im Gegensatz zum Laden von Binärcodes/Spielen auf ein Arduino-Board kann der Bootloader nicht über den USB-Port programmiert werden.

Um den benutzerdefinierten Bootloader (Cathy3K) auf den Atmega32U4-Chip zu brennen, benötigen Sie einen USBasp-Programmierer. Unsere Kreation funktioniert jedoch bei 3,3 V, wir müssen den USBasp-Programmierer weiter modifizieren, damit er mit 3,3 V funktioniert.

Beziehen Sie sich auf das folgende anweisbare Projekt, um Ihren USBasp-Programmierer so zu ändern, dass er sowohl mit 3,3 V als auch mit 5 V über die Jumper-Einstellungen arbeitet.

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

Folgen Sie dann dem Pin-Layout und dem Video, um das USBasp-zu-ArduBaby-Programmkabel herzustellen. Das originale USBasp-Kabel, das mit dem USBasp geliefert wird, hat zwei Anschlüsse mit je 10 Pins. Wir werden dieses Kabel in zwei Hälften hacken und einen 6-Pin-Stecker an ein Ende anschließen, während das andere Ende, das mit der USBasp-Platine verbunden ist, bei 10pin bleibt.

Dieses andere Ende verbindet die GND-, VCC-, MOSI-, MISO-, SCK- und Reset-Pins vom USBasp mit den entsprechenden Pins des ATmega32U4 über den Stecker, der mit den ersten sechs Pins der Buchse des Ardubaby verbunden ist.

Um das Programm auszuführen oder den Bootloader auf ATmega32U4 zu brennen, entfernen Sie die Knopfleiste und stecken dieses 6-polige USBasp-Kabel ein.

Stellen Sie sicher, dass Sie deutlich auf der Kopfzeile des Kabels markieren, welcher Pin Pin eins ist, damit keine falsche Verbindung hergestellt wird. Als ich das Pin-Layout für die Ardubaby-Button-Hat-Header entwerfe, habe ich versucht, die Pins so anzuordnen, dass selbst wenn Sie Pin 1 mit Pin 13 vertauscht haben, das -ve-Netzteil nicht versehentlich mit dem +ve-Netzteil zusammentrifft, um Schäden zu vermeiden. Sie wissen jedoch nie, dass andere Dinge passieren können, die Ihr Kit beschädigen könnten, wenn Sie in der falschen Richtung anschließen.

Ich werde ein kleines Loch brennen, um das auf dem Header mit der Spitze des Lötkolbens zu markieren.

Schritt 6: Brennen Sie den Bootloader

MR. Blinky hat das Arduboy-Hausgemachte-Paket für selbstgemachten Arduboy kreiert.

Sein Paket enthält die Board-Treiber und die Bibliothek von Arduboy, die mit verschiedenen Versionen des ursprünglichen Arduboy sowie seinen selbstgebauten Versionen funktioniert.

1. Navigieren Sie zum GitHub-Ordner von MR. Blinky nach dem hausgemachten Arduboy. https://github.com/MrBlinky/Arduboy-homemade-package 2. Folgen Sie den Anweisungen auf dem GitHub, um Ihre Arduino-IDE mit dem hausgemachten Paket zu konfigurieren. 3. Kopieren Sie zuerst die URL des „Zusätzlichen Board-Managers“für das hausgemachte Arduboy-Paket.

4. Starten Sie die Arduino-IDE. Klicken Sie im Hauptmenü von Arduino auf Einstellungen. Fügen Sie diesen Text in die „Additional Boards Manager URLs“ein. Hinweis: Wenn Sie bereits anderen Text in diesem Feld haben, fügen Sie diesen zusätzlichen Text am Anfang ein, fügen Sie dann ein „, “hinzu und lassen Sie den anderen Text intakt. 5. Beenden Sie die Arduino IDE und starten Sie die IDE erneut, um die obige Änderung zu übernehmen. 6. Klicken Sie auf Tools -> Board: -> Board-Manager. Geben Sie hausgemacht ein, um zu suchen. Wählen Sie aus, um das hausgemachte Arduboy-Paket von Mr. Blinky zu installieren. Klicken Sie dann auf Update, um die neueste Version zu erhalten. Das Paket wird Arduino hinzugefügt. 7. Wählen Sie nun Tools-> Board: „Home-made Arduboy. und wählen Sie die folgenden Parameter für Homemade Arduboy“Basierend auf: „SparkFun Pro Micro 5V - Standard Wiring“Core: „Arduboy Optimized core“Bootloader: „Cathy3K“Programmierer: USBasp 8. Schalten Sie den Ardubaby aus und entfernen Sie die Knopfleiste. 9. Setzen Sie den Jumper am USBasp auf 3.3V. Stellen Sie sicher, dass Sie einen modifizierten USBasp verwenden, der vollständig mit 3,3 V arbeitet. 10. Verbinden Sie den USBasp mit dem USB-Port Ihres Computers. Verbinden Sie das spezielle USBasp-zu-ArduBaby-Kabel mit USBasp und das andere Ende mit dem Button-Hat-Header des Ardubaby, richten Sie Pin 1 auf Pin 1 aus. Nur die ersten 6 Pins des Ardubaby werden zum Brennen des Bootloaders verwendet.

11. Ihr Ardubaby sollte jetzt über die 3,3 V Stromversorgung des USBasp eingeschaltet werden. 12. Drücken Sie einmal die Reset-Taste des ArduBaby. 13. Klicken Sie auf die Schaltfläche Tools-> Boards-> Burn Bootloader auf der Arduino IDE. 14. Überprüfen Sie die Meldung, um zu sehen, ob das Brennen des Bootloaders erfolgreich war. 15. Wenn nicht, überprüfen Sie das Kabel und stellen Sie sicher, dass Sie die Pins in der richtigen Richtung anschließen und Pin 1 mit Pin 1 ausrichten. Manchmal beginnt Ardubaby ein vorheriges Spiel zu spielen, wenn das Boot-Menü eine Zeitüberschreitung hat. Sie müssen also schnell auf die Schaltfläche Bootloader brennen klicken, nachdem Sie die Reset-Taste gedrückt haben, um den Ardubaby in den Wartemodus für Flash zu versetzen. 16. Wenn alles in Ordnung ist, wird das ArduBaby neu gestartet und Sie sehen entweder das Startmenü oder das vorherige Spiel, das Sie auf das ArduBaby geladen haben.

Schritt 7: Kompilieren Sie einzelne Spiele und laden Sie sie auf Arduboy hoch

Spiele für Arduboy können von den folgenden Quellen heruntergeladen werden:

Arduboy-Community-Forum für Spiele:

Die GitHub-Suche nach "Arduboy-Spiele" https://github.com/topics/arduboy-game oder einfach "GitHub-Arduboy-Spiele" bei Google suchen.

Von anderen geteilte Spielesammlungen. z. B. Erwins Arduboy-Kollektionen

arduboy.ried.cl/

Sie können den Quellcode des Spiels herunterladen, das Sie auf Arduino laden und auf den Arduboy hochladen. Sehen Sie sich das Video an, wie das geht.

oder nur die Hex-Datei (die kompilierte Binärdatei, die jedoch in Hex-Zahl angezeigt wird, wird in eine Textdatei anstelle einer Binärdatei ausgegeben).

Für Quellcode öffnen Sie einfach den Quellcode in der Arduino IDE.

Der Quellcode z. B. picovaders.ino muss in einem gleichnamigen Ordner gespeichert werden, z. B. Picovader

Die erforderlichen Arduboy2-Bibliotheken sollten bereits im vorherigen Schritt installiert sein, in dem wir den Board-Manager für das hausgemachte Arduboy-Paket laden.

Schließen Sie den Arduboy einfach an den USB-Port Ihres Computers an.

Schalten Sie es ein und klicken Sie dann auf die Schaltfläche Hochladen in der Arduino-IDE, um den Code zu kompilieren und auf den Arduboy hochzuladen, um das Spiel zu spielen.

Schritt 8: Einzelne Hex-Dateien hochladen

Hex-Datei ist eine Textdatei mit Binärcodes, die aus der Kompilierung Ihres Arduino-Programms (Skizze) resultieren, aber in einem Textdateiformat mit zweistelligen Hexadezimalzahlen 0-9, A-F dargestellt werden.

Sie können diese Hex-Datei auf verschiedene Weise erhalten.

1. Wir können Hex-Dateien aus den verschiedenen Quellen herunterladen, die wir oben erklärt haben:

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

Suchen Sie auf GitHub.com oder auf google.com nach "Arduboy-Spielen".

Speichern Sie diese Hex-Dateien in Dateien mit der Erweiterung.hex.

2. Alternativ können Sie Ihre eigene Hex-Datei erstellen.

Wählen Sie in der Arduino IDE Sketch > Export Compiled Binary. Ihre Skizze wird kompiliert, dann wird eine Kopie der kompilierten.hex-Datei in das Verzeichnis Ihrer Skizze ausgegeben. Navigieren Sie zum Skizzenordner oder wählen Sie in der IDE Skizze > Skizzenordner anzeigen, um die Hex-Datei anzuzeigen. Wenn Sie das hausgemachte Paket von MR. Blinky installiert haben, werden zwei Versionen der.hex-Datei erstellt. Wenn Sie beispielsweise das Sketh picovaders.ino kompilieren, werden die folgenden beiden.hex-Dateien erstellt.

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

Wir verwenden die erste Datei: picovaders.ino-arduboy-promicro-ssd1306.hex

3. Um eine Hex-Datei auf Arduboy hochzuladen, müssen Sie einen Uploader verwenden. Es gibt viele im Internet. Ich verwende gerne den Uploader von MR. Blinky, da er einfach zu bedienen ist.

Navigieren Sie zu https://github.com/MrBlinky/Arduboy-Python-Utilities und befolgen Sie die dortigen Anweisungen, um die Arduboy Python-Dienstprogramme von MR. Blinky zu installieren. Wenn Sie kein Python installiert haben, müssen Sie zuerst die Anweisungen zum Installieren von Python und den erforderlichen Python-Modulen befolgen.

4. Verbinden Sie den Arduboy mit dem USB-Port Ihres Computers. Schalten Sie den Arduboy ein.

5. Starten Sie das Shell-Programm in Ihrem Betriebssystem z. B. die Terminal-App in Mac OSX oder die Eingabeaufforderung in Windows, um die folgenden Befehle einzugeben, um die Hex-Datei auf den Arduboy hochzuladen. Nehmen wir als Beispiel unsere vorherige Skizze picovaders.ino.

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

6. Sobald das Spiel hochgeladen ist, wird der Arduboy zurückgesetzt und das Spiel gestartet.

Schritt 9: Spiele auf seriellen Flash schreiben

1. Um die konsolidierte Spieldatei in den seriellen Flash zu schreiben, müssen Sie erneut MR. Blinkys Arduboy Python Utilities verwenden. Sie sollten dies bereits installiert haben, wenn Sie den vorherigen Schritt befolgen.

Navigieren Sie andernfalls zu https://github.com/MrBlinky/Arduboy-Python-Utilities und befolgen Sie die dortigen Anweisungen, um die Arduboy Python-Dienstprogramme von MR. Blinky zu installieren. Wenn Sie kein Python installiert haben, müssen Sie zuerst die Anweisungen zum Installieren von Python und den erforderlichen Python-Modulen befolgen.

2. Erstellen Sie die Indexdatei für die konsolidierte Spielabbilddatei, um bis zu 500 Spiele zu speichern.

Wir verwenden das Skript Verwenden Sie das flashcart-builder.py, um die konsolidierten Spielbilddateien für alle Spiele zu erstellen, die Sie im seriellen Flash des Arduboy speichern möchten. Ein serieller 16-MB-Flashspeicher kann bis zu 500 Spiele aufnehmen. Dieses Skript erstellt ein binäres Flash-Image aus einer Indexdatei (.csv) und den folgenden 2 Dateien für jedes Spiel: a..hex-Dateien, das ist die Textdatei, die die hexadezimalen Codes der Binärbilder der kompilierten Arduboy-Spiele enthält. Siehe die Datei example-flashcart\flashcart-index.csv für Beispielsyntax. Diese Datei ist im Paket enthalten, wenn Sie auf Klonen oder Herunterladen klicken. B..png-Grafikdateien, die im Bootloader-Menü von Arduboy angezeigt werden, damit Sie wissen, welches Spiel Sie auswählen werden. Einige der Spiele-Repositorys haben diese Grafikdatei zusammen mit ihrer Spielquelldatei oder Hex-Datei. Wenn Sie es nicht finden können, können Sie Ihr eigenes erstellen, indem Sie das Spiel entweder auf dem Arduboy-Emulator (https://felipemanga.github.io/ProjectABE/) ausführen und den Bildschirm aufnehmen. Oder geben Sie einfach den Namen des Spiels auf einem Power-Pint ein und machen Sie einen Screenshot davon. Dann die Grafiken, die Sie mit dem Pinsel in Windows aufgenommen/erstellt haben, auf 128 x 64 Pixel herunter oder in der Vorschau in Mac OSX.

Das Youtube-Video erklärt auch, wie Sie diese.csv-Indexdatei richtig platzieren. Zu beachten ist, dass die Beispiel-.csv-Datei von MR. Blinkys GitHub auf Windows-PCs verwendet wird, Backslash "\" werden in den Pfadnamen verwendet. Wenn Sie ein Linux-System oder MAC OSX verwenden, müssen Sie es in "/" ändern.

Für einen schnellen Einstieg können Sie mein Paket mit 63 Spielen von https://github.com/cheungbx/ArduBaby 63games.zip herunterladen

Dieses Paket enthält die Hex- und PNG-Dateien der 63 von mir ausgewählten Spiele sowie die Indexdatei games.csv und die Datei games-image.bin, die mit dem Skript flashcard-builder.py erstellt wurde.

Sie können weitere Spiele zu games.csv hinzufügen und Ihre eigene konsolidierte Binär-Image-Datei für Spiele erstellen, die in den seriellen Flash geschrieben werden kann. Sie können maximal 500 Spiele auf den seriellen 16M-Flashspeicher legen.

Ich werde erklären, wie man die.csv-Datei mit der games.csv erstellt, die Sie von meinem GitHub herunterladen können.

Obwohl die.csv-Datei mit Excel geöffnet werden kann. Verwenden Sie NICHT Excel, um die Datei zu öffnen. Es wird die Datei beschädigen. Bitte verwenden Sie nur einen Nur-Text-Editor. Sie können den Notizblock in Windows verwenden. Ich habe das textEdit in MAC verwendet und auf "Format"-> "Make Plain Text" geklickt.

Die erste Zeile der.csv-Datei ist der Header, den Sie ignorieren können. Liste;Beschreibung;Titelbildschirm;Hex-Datei

Die zweite Zeile zeigt auf die grafische Bilddatei (muss 128x64 Pixel im PNG-Dateiformat sein) für den Bootloader-Manu-Bildschirm. 0;Bootloader;arduboy_loader.png;;;

Die Spiele werden ab der dritten Zeile konfiguriert. Spiele sind im Bootloader-Menü in Gruppen organisiert, die als Kategorien bezeichnet werden. Diese Zeile ist der Gruppentitel der Liste der Spiele für diese Gruppe, z. B. Actionspiel. Es verweist auch auf die grafische Bilddatei für die Spielegruppe. Die "1" am Anfang bezeichnet die Gruppennummer 1. Alle Spiele, die dieser Gruppe folgen, beginnen mit dieser Nummer. 1;Action-Spiele;Kategorie-Bildschirme\Action.png;;;

Dann fügen Sie für jedes Spiel innerhalb dieser Gruppe eine Zeile hinzu. Beginnend mit der Gruppennummer 1, dem Namen des Spiels und dem Pfad der Grafikdatei für einen Schnappschuss des Bildschirms und dem Pfad der Hex-Datei. Alles durch ";" getrennt. Fügen Sie ein weiteres ";" um den Parameter für die Sicherungsdatei zu überspringen. 1;1943;Arcade/Nineteen43.png;Arcade/Nineteen43.hex;; 1;2048;Arcade/2048.png;Arcade/2048.hex;;

Nachdem Sie die erste Gruppe von Spielen beendet haben, können Sie die zweite Gruppe von Spielen hinzufügen und so weiter. z. B.

9;Demo & Test;demos/demotest.png;;; 9;Heiße Butter;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;

Die letzte Zeile enthält eine Sicherungsdatei im Parameter, die ein Zeichentrickfilm ist.

3. Um die konsolidierte Spielabbilddatei zu erstellen, geben Sie den Befehl ein, wobei games.csv Ihre Spielindexdatei ist.

python flashcart-builder.py games.csv

Dadurch wird eine Datei namens games-image.bin erstellt

4. Schreiben Sie die konsolidierte Spiel-Image-Datei in Arduboy.

Wir verwenden das flashcart-writer.py-Skript von MR. Blinky, um die konsolidierte Spielbilddatei in den seriellen Flash-Speicher des Arduboy zu schreiben.

Wenn Sie meine Beispieldatei games-image.bin verwenden, können Sie diesen Befehl eingeben.

python flashcart-writer.py games-image.bin

Wenn Sie einen SSD1309-OLED-Bildschirm anstelle des SSD1306-OLED im Standard-Build verwenden, können Sie den Bildschirmtreiber im laufenden Betrieb patchen. Um den SSD1309-Patch automatisch auf das hochgeladene Image anzuwenden, erstellen Sie eine Kopie von flashcart-writer.py und benennen Sie sie in flashcart-writer-1309.py um. Geben Sie dann ein

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

Schritt 10: Spiele von seriellem Flash spielen

Um Spiele von seriellem Flash zu spielen, schalten Sie den Arduboy ein.

Wenn Sie bereits ein Spiel geladen haben, startet das Spiel automatisch. Drücken Sie einmal die Reset-Taste oben auf dem Ardubaby, um zum Bootloader-Menü zu gelangen.

Das Bootloader-Menü wird angezeigt. Die RGB-LED leuchtet nacheinander auf.

Wenn stattdessen ein Symbol angezeigt wird, das wie ein USB-Anschluss aussieht, bedeutet dies, dass Ihr serieller Flash-Speicherchip nicht funktioniert. Bitte überprüfen Sie die Verkabelung.

Wenn Sie innerhalb von 12 Sekunden keine Taste drücken, wird das bereits im internen Flash-Speicher des ATMega32U4 gespeicherte Spiel ausgeführt.

Um von einem Spiel zum Bootloader-Menü zurückzukehren, drücken Sie einfach einmal die Reset-Taste.

Sie können die linke oder rechte Taste drücken, um durch die verschiedenen Kategorien (Gruppen) von Spielen zu blättern. Drücken Sie die Abwärts- oder Aufwärtstaste, um durch die Spiele innerhalb einer Kategorie (Gruppe) zu blättern. Drücken Sie die Taste "B", um das Spiel vom seriellen Flash-Speicher auf den internen Flash-Speicher des ATMega32U4 zu kopieren. Das Spiel beginnt innerhalb einer Sekunde.

Jetzt haben Sie eine winzige Spielkonsole, die Sie unterwegs spielen können.

Ich fordere Sie auf, Ihren 16M Serial Flash mit 500 Spielen zu sammeln und zu laden. Ich habe noch niemanden gesehen, der das getan hat, um den seriellen Flash aufzufüllen. Wenn Sie dies tun können, teilen Sie uns diese konsolidierte Spieldatei mit.

Empfohlen: