Inhaltsverzeichnis:
- Schritt 1: Breadboard-Prototyping
- Schritt 2: Benötigte Teile
- Schritt 3: Steckbrettverdrahtung / Schaltplan
- Schritt 4: Quellcode
- Schritt 5: Sehen Sie es in Aktion
- Schritt 6: Gehäuse und Miniaturisierung
Video: Arduino Pocket Game Console + A-Maze - Labyrinth-Spiel - Gunook
2024 Autor: John Day | [email protected]. Zuletzt bearbeitet: 2024-01-30 07:20
Willkommen zu meinem ersten instructable
Das Projekt, das ich heute mit Ihnen teilen möchte, ist das Arduino-Labyrinth-Spiel, das zu einer Taschenkonsole wurde, die genauso leistungsfähig ist wie Arduboy und ähnliche Arduino-basierte Konsolen. Es kann dank des freiliegenden ICSP-Headers mit meinen (oder Ihren) zukünftigen Spielen geflasht werden.
Ich hatte vor einigen Monaten die Idee, ein Labyrinth-Spiel auf Arduino zu bauen, aber ohne hartcodierte Labyrinthe. Es sollte in der Lage sein, für jedes Level, das du spielst, ein neues Labyrinth zu generieren, damit du das gleiche Labyrinth nie wieder siehst:)
Dies zu codieren war eine kleine Herausforderung, da Arduino im RAM-Speicher begrenzt ist, und dann habe ich einige Beispiele gefunden, wie dies mit einem einfachen Bo-Taoshi-Algorithmus möglich ist.
Code, den ich als Ausgangspunkt verwendet habe, den ich von SANUKI UDON und seinem Projekt genommen habe, WIE MAN EINEN MAZE GENERATOR MIT ATTINY13A HERSTELLT
Schritt 1: Breadboard-Prototyping
Mein Ausgangspunkt war ein kleines Steckbrett mit nur 4 Tasten, die verbunden waren, um sich durch das Labyrinth zu bewegen, aber später, als ich entschied, dass es eine Spielkonsole sein sollte, fügte ich ein paar weitere Tasten hinzu. Auf einem größeren Steckbrett sieht man 2 weitere Tasten, und später habe ich eine dritte hinzugefügt, die als Start / Pause / Menütaste verwendet werden kann
Schritt 2: Benötigte Teile
- Arduino pro mini / Arduino Uno / Atmega328P-Chip
- 28-polige DIP-Buchse (optional)
- SSD1306 OLED-Display
- Piezo-Lautsprecher
- Druckknöpfe - 7 Stück
- Halter für Knopfzellenbatterien
- Kippschalter
- Drähte
- Prototyp-Leiterplatte (60x40mm)
Schritt 3: Steckbrettverdrahtung / Schaltplan
Anschließen der Komponenten wie im obigen Diagramm gezeigt.
Tasten:
- UP-Taste: Arduino-Pin 7
- DOWN-Taste: Arduino-Pin 6
- LINKE Taste: Arduino-Pin 9
- RECHTE Taste: Arduino-Pin 8
- A-Taste: Arduino-Pin 5
- B-Taste: Arduino-Pin 4
- START-Taste: Arduino-Pin 2
SSD1306 OLED-Bildschirm:
- SCL: Arduino-Pin A5
- SDA: Arduino-Pin A4
- VCC: Arduino VCC
- Masse: Arduino Masse
Summer:
- Summer positiv: Arduino-Pin 3
- Summer Masse: Arduino GND
Schritt 4: Quellcode
Den Quellcode des A-Maze-Spiels finden Sie hier:
Öffnen Sie in Arduino IDE und laden Sie es auf Ihr Board hoch oder verwenden Sie den ISP-Programmierer, um Ihren Chip zu programmieren.
Ich empfehle die Verwendung von USBTIny ISP, hatte nie Probleme damit:), aber Sie können auch gewöhnliches Arduino verwenden, um Ihren Chip zu programmieren.
In meinem Fall habe ich keinen externen Quarz verwendet, daher arbeitet mein Atmega328p-Chip mit einem internen Oszillator von 8 MHz.
Weitere Informationen finden Sie unter diesem Link:
Schritt 5: Sehen Sie es in Aktion
Schritt 6: Gehäuse und Miniaturisierung
Wenn Sie dieses Projekt mit einem gut aussehenden Gehäuse dauerhaft machen möchten, ist hier das einfache 3D-druckbare Gehäuse, das ich entworfen habe:
In den obigen Bildern sehen Sie, wie alle Komponenten auf der 4x6-Prototypplatine angeordnet sind.
Die meisten Tastenkabel verlaufen unter den Batteriehaltern, versuchen Sie es so einfach wie möglich zu machen, damit die Batteriehalter relativ bündig über der Platine mit Drähten dazwischen sitzen können.
Ich empfehle auch, andere Verdrahtungen unter dem Bildschirm vorzunehmen, da die Beine des Atmega-Chips gelötet und unter dem Bildschirm freigelegt sind. Wenn Sie mit dem Löten fertig sind, legen Sie etwas Isolierband unter den Bildschirm, um Kurzschlüsse usw.
ICSP-Header ist optional, und wenn Sie sich entscheiden, ihn nicht freizulegen, wird Ihre Montage viel einfacher, 6 Verbindungen weniger zu pflegen, aber programmieren Sie den Chip zuerst, bevor Sie ihn löten, oder verwenden Sie einen 28-poligen DIP-Sockel, damit Sie es einfach können Entfernen Sie den Chip zum Programmieren.
Zweiter im Taschenformat-Wettbewerb