Inhaltsverzeichnis:

Arduino Pocket Game Console + A-Maze - Labyrinth-Spiel - Gunook
Arduino Pocket Game Console + A-Maze - Labyrinth-Spiel - Gunook

Video: Arduino Pocket Game Console + A-Maze - Labyrinth-Spiel - Gunook

Video: Arduino Pocket Game Console + A-Maze - Labyrinth-Spiel - Gunook
Video: How to make a Marble maze game 2024, November
Anonim
Arduino Pocket-Spielkonsole + A-Maze - Labyrinth-Spiel
Arduino Pocket-Spielkonsole + A-Maze - Labyrinth-Spiel

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

Breadboard-Prototyping
Breadboard-Prototyping
Breadboard-Prototyping
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

Steckbrettverkabelung / Schaltplan
Steckbrettverkabelung / Schaltplan
Steckbrettverkabelung / Schaltplan
Steckbrettverkabelung / Schaltplan
Steckbrettverkabelung / Schaltplan
Steckbrettverkabelung / 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

Image
Image

Schritt 6: Gehäuse und Miniaturisierung

Gehäuse und Miniaturisierung
Gehäuse und Miniaturisierung
Gehäuse und Miniaturisierung
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.

Wettbewerb im Taschenformat
Wettbewerb im Taschenformat
Wettbewerb im Taschenformat
Wettbewerb im Taschenformat

Zweiter im Taschenformat-Wettbewerb