Inhaltsverzeichnis:

Lazy 301 Dart Buddy! - Gunook
Lazy 301 Dart Buddy! - Gunook

Video: Lazy 301 Dart Buddy! - Gunook

Video: Lazy 301 Dart Buddy! - Gunook
Video: 20 MOMENTS YOU WOULDN'T BELIEVE IF NOT FILMED 2024, November
Anonim
Lazy 301 Dart Buddy!
Lazy 301 Dart Buddy!
Lazy 301 Dart Buddy!
Lazy 301 Dart Buddy!
Lazy 301 Dart Buddy!
Lazy 301 Dart Buddy!

Meine College-Mitbewohner und ich haben vor kurzem eine verbeulte Dartscheibe geerbt…

Wir haben angefangen, Spiele wie 301 zu erkunden, bei denen jeder Spieler bei 301 Punkten beginnt und im Laufe einiger Runden auf null Punkte herunterfährt. Das hat Spaß gemacht, aber das Schreiben auf das (kleine) Whiteboard neben der Tafel war zeitaufwändig und verhinderte, dass der nächste Spieler schießen konnte, bis der vorherige Spieler aus dem Weg war.

Also, ich dachte, es wäre ein lustiges Nachmittagsprojekt, einen arduino-basierten Rechner zusammenzustellen, der uns helfen könnte.

In einer Stunde oder so hatte ich einen grob funktionierenden Prototyp auf einem Steckbrett. Aber mit ein paar weiteren Arbeitsstunden entfernte ich das Steckbrett und befestigte alles an einer billigen Kiste, die ich an die Wand hing.

Lieferungen

Arduino Nano

Jede billige Adafruit/Amazon-Version der folgenden:

16x2 LCD-Bildschirm

Tastenfeld

Potentiometer (verschiedene Widerstände funktionieren)

Männlich-männlich, männlich-weiblich, weiblich-weiblich sortierte Überbrückungsdrähte

Piezo-Lautsprecher

Steckbrett

Schritt 1: Code und Planung

Code und Planung
Code und Planung

Der Code war extrem einfach und einfach. Ich wollte hier nichts Besonderes, da es ein schnelles Projekt war, aber Sie können mit dem Code nach Belieben herumspielen. Ich habe das Spiel für einen bis vier Spieler geplant.

Ich habe eine Arduino-Funktion geschrieben, um vier Spieler zufrieden zu stellen. Ich habe es "game4p" genannt. Ich habe es dann noch dreimal kopiert und eingefügt und die Funktionen "game1P", "game2P" usw. umbenannt und zusätzlichen Code entsprechend gelöscht. Die Grundidee war folgende:

1) Spielstände drucken, Spieler 1 auffordern zu gehen

2) Wenn der Spieler die Punktzahl eingibt, gehe zum nächsten Spieler, falls einer vorhanden ist

3) wiederholen (2), bis alle Spieler gegangen sind, dann wieder bei (1) beginnen

4) Wenn die Punktzahl eines Spielers Null erreicht, beende das Spiel und fordere ein neues Spiel auf

Sie können sich den Code ansehen, um zu sehen, wie ich mit Dingen umgegangen bin wie

-Eingabe von Sachen in die Tastatur

-Sorgt für guten Input

-Erlaubt sowohl Addition als auch Subtraktion mit der unteren linken bzw. rechten Taste

Schritt 2: Tastatur

Tastenfeld
Tastenfeld

Ich habe eine billige Tastatur verwendet, um meine Eingaben zu verarbeiten.

Die Tastaturbibliothek von Arduino kümmert sich um all die coolen Dinge hinter den Kulissen, die hier schön erklärt werden. Grundsätzlich benötigen Sie einen Pin pro Zeile und einen Pin pro Spalte frei auf Ihrem Arduino.

In meinem Fall habe ich die untere rechte Taste verwendet, um eine Subtraktionsaktion auszulösen (um Ihre Punktzahl von 301 zu subtrahieren) und die untere linke Taste zum Hinzufügen (falls jemand es vermasselt hat, wäre das Spiel nicht ruiniert). Durch Drücken dieser Tasten, ohne zuerst eine Zahl einzugeben, wird einfach zum nächsten Spieler vorgerückt.

Nachdem ich ein paar Minuten mit dem seriellen Monitor und dem mitgelieferten Beispielcode, der mit der Tastaturbibliothek geliefert wird, herumgespielt hatte, war ich bereit, den LCD-Bildschirm zu integrieren, um die Tastendrücke anzuzeigen.

Schritt 3: LCD-Bildschirm

LCD Bildschirm
LCD Bildschirm

Auch für diese Komponente hat arduino eine eingebaute Bibliothek. Die LCD-Bibliothek verarbeitet alle Spielereien, die LCD-Bildschirme verwenden. Eine großartige Pinbelegungsressource finden Sie hier. Alle LCD-Bildschirme, die ich jemals verwendet habe, folgen der gleichen Pinbelegung, die in diesem Link erklärt wird.

Zum Zeitpunkt des groben Prototyps konnte ich kein Potentiometer finden, das benötigt wird, um den Kontrast des Textes auf dem Bildschirm mit der Hintergrundbeleuchtung einzustellen (benötigt für Pin 3). Also habe ich eine Reihe von Widerständen verwendet, um einen Spannungsteiler zu erstellen, und eine Stelle untersucht, die mir vernünftig erschien.

Nachdem ich noch ein paar Minuten mit dem seriellen Monitor herumgespielt hatte, war ich bereit, alles zusammenzusetzen!

Schritt 4: Endgültiges (grobes) Arbeitsprodukt

Hier ist ein Video des Steckbrettprodukts in Aktion. Alles funktioniert wie erwartet.

Du kannst hier nach deiner Arbeitszeit anhalten oder noch ein paar Stunden damit verbringen und es verpacken, um (etwas) schöner auszusehen, wie ich es getan habe…

Schritt 5: Alle Glocken und Pfeifen

Image
Image

Nein, es ist keine Bombe. Das sieht ziemlich grob aus, aber es erledigt die Arbeit!

Ich habe einen Lautsprecher für ein angenehmes Feedback hinzugefügt, das guten/schlechten Tastendrücken entspricht. Mit einer kleinen Plastikbox, die ich herumgelegt hatte, und einigen Kabelbindern konnte ich das Ding verpacken und an die Wand hängen!

Vielen Dank fürs Lesen, bitte bewerten und erwägen Sie, für mich in der "1 Hour Challenge" zu stimmen, in der dieses Projekt eingereicht wird.

Fragen gerne in die Kommentare!

Empfohlen: