Inhaltsverzeichnis:
Video: Tap Tap Rainbow - ein Schnellreaktionsspiel für 2 Spieler - Gunook
2024 Autor: John Day | [email protected]. Zuletzt bearbeitet: 2024-01-30 07:15
Der LED-String verwendet nur 3 Drähte. Ich brauchte also nur 5V Strom (rot), Masse (weiß) und Signal (grün). Wenn Sie auch einen Espruino verwenden, lesen Sie unbedingt die Tutorials auf deren Website. Das für die RGB-LEDs ist sehr anschaulich erklärt.
Ich habe die LED-Kette in 3 Teile von 6 LEDs geschnitten und diese dann mit zusätzlichen Drähten verbunden. Auf diese Weise verwenden alle LEDs das gleiche Array, was mir 2 zusätzliche Ports auf der Platine erspart und die Programmierung einfacher ist.
Das Anschließen der Tasten war etwas schwieriger. Ich wollte so wenig wie möglich Ports auf dem Board verwenden, also dachte ich daran, ein I2C-Setup zu verwenden, scheiterte jedoch schrecklich daran. Ich konnte es nicht zum Laufen bringen, also habe ich mich um etwas anderes gekümmert.
Irgendwann fand ich auf Espruino ein Tutorial für ein Keypad, das als Keypad-Matrix mit 16 Tasten verdrahtet ist. Das sah ziemlich einfach zu implementieren aus, also bin ich diesen Weg gegangen. Ich brauchte nur 12 Tasten, also bräuchte ich eine 3x4-Matrix.
In einer Tastaturmatrix sind alle Tasten in Spalten und Reihen verdrahtet. Auf diese Weise benötigen Sie nur 8 Ports für 16 Tasten. In meinem Setup brauchte ich nur 2 mal 6 Tasten, also insgesamt 7 Ports auf dem Board (4 Reihen mit 3 Spalten). Es ist immer noch viel weniger als das separate Anschließen der 12 Tasten und das Keypad-Modul von Espruino ist wirklich einfach zu bedienen.
Ich habe ein gutes Tutorial über die Tastatur zu den Grundlagen der Schaltung gefunden, das mir bei der Verdrahtung der Tasten sehr geholfen hat.
Als ich es schaffte, alle meine Tasten zu verbinden, war ich sehr frustriert, weil die Stecker ständig abrutschten und es schon spät wurde. Also klebte ich alles zusammen auf den Karton und vergaß total zu fotografieren. Auch nicht sehr benutzerfreundlich an dem Tag, an dem ich einen Draht in 1 der Boxen neu anschließen muss.
Schritt 3: Schreiben des Codes
Espruino ist in Javascript programmiert, daher ist es für mich weitaus weniger komplex als das Schreiben von Code für Arduino.
Der Code könnte einige Optimierungen gebrauchen, aber für den Moment erledigt er die Arbeit. Es gibt auch einen Fehler (vielleicht ist es ein Feature:D), bei dem Sie nicht 2 Tasten gleichzeitig drücken können. Aber es macht es ein wenig schwieriger (lesen Sie frustrierend), das Spiel zu spielen, also habe ich das Problem noch nicht untersucht, ich mag es so (wenn Sie verlieren, ist es besonders frustrierend).
Die Programmierung der LEDs ist recht einfach. Jede LED in der Zeichenfolge hat 3 Werte in einem Array. Wenn Sie also ein Array wie [255, 0, 0, 255, 0, 0] haben, haben Sie die ersten 2 LEDs rot.
Im Schnellüberblick.
1. Zuerst definiere ich meine Farben und erstelle ein Array aller Farben
2. Dann definiere ich die Player-Einstellungen, wie die Button-IDs und welchen Index jeder Player in der LED-Reihe hat
3. Zu Beginn des Spiels mische ich alle Farben im Rainbow-Array und speichere diese Informationen in einem neuen Array. Dann setze ich alle LEDs zurück und zünde die oberen LEDs mit den gemischten Regenbogenfarben an
4. Schließlich haben wir den Code, der auf die Schlüsselereignisse lauscht. Ich speichere alle Eingaben in einem Array und überprüfe, ob dieses Array in der richtigen Reihenfolge ist.
5. Als nettes Extra habe ich gestern hinzugefügt, dass die Gewinner mit einer tollen Regenbogenanimation behandelt werden:D
Ich habe noch viele Dinge im Kopf, damit es noch mehr Spaß macht, aber das ist etwas für später;)
Ich kann den vollständigen Quellcode nicht hochladen, also habe ich ihn auf Gitlab gestellt
gitlab.com/marzsman/tap_tap_rainbow
Schritt 4: Viel Spaß damit !!! ?
Als meine Tochter und ich ihre Idee aufschrieben und darüber nachdachten, wie sie aussehen sollte, gefiel mir die Idee sofort. Aber ich muss sagen, ich hätte nie gedacht, dass es so viel Spaß macht zu spielen. Wir hatten schon einige große Rainbow-Tapping-Schlachten:D
Ich hoffe, dass jeder genauso viel Spaß damit hat wie wir.
Es ist auch das erste vollständige Projekt, das ich in so kurzer Zeit gemacht habe und etwas mit meiner 8-jährigen Tochter gemacht habe UND es ist auch mein erstes anweisbares (ENDLICH!), also ja, es ist in gewisser Weise ein ganz besonderes Projekt für mich. Also ich hoffe es gefällt!
Wenn Sie Fragen oder Anregungen haben, freue ich mich darauf!
Empfohlen:
Arduino Auto-Rückfahrwarnsystem - Schritt für Schritt: 4 Schritte
Arduino Auto-Rückfahrwarnsystem | Schritt für Schritt: In diesem Projekt entwerfe ich eine einfache Arduino-Auto-Rückwärts-Parksensorschaltung mit Arduino UNO und dem Ultraschallsensor HC-SR04. Dieses Arduino-basierte Car-Reverse-Warnsystem kann für eine autonome Navigation, Roboter-Ranging und andere Entfernungsr
Interessante Programmieranleitung für Designer - Bringen Sie Ihr Bild zum Laufen (Teil 2): 8 Schritte
Interessante Programmieranleitung für Designer – Bringen Sie Ihr Bild zum Laufen (Teil 2): Mathematik scheint für die meisten von Ihnen nutzlos zu sein. Die in unserem täglichen Leben am häufigsten verwendete ist einfach Addieren, Subtrahieren, Multiplizieren und Dividieren. Es ist jedoch ganz anders, wenn Sie mit Programm erstellen können. Je mehr Sie wissen, desto mehr wundervolle Ergebnisse werden Sie erhalten
Installieren des Windows-Subsystems für Linux (WSL): 3 Schritte
Installieren des Windows-Subsystems für Linux (WSL): Diese Anleitung soll Benutzern helfen, das Windows-Subsystem für Linux auf ihrem Windows 10-Computer zu installieren. Die spezifische Linux-Distribution, die dieser Befehlssatz verwendet, heißt Ubuntu. Schauen Sie hier für eine Übersicht über die verschiedenen Linux
So erstellen Sie eine UML für Java in Microsoft Visio: 4 Schritte
So erstellen Sie eine UML für Java in Microsoft Visio: Das Erstellen einer UML kann zunächst etwas einschüchternd wirken. Es gibt viele komplizierte Notationsstile, und es kann sich anfühlen, als gäbe es keine guten Ressourcen, um eine lesbare und genaue UML zu formatieren. Microsoft Visio macht jedoch das Erstellen einer UML-Qu
Schnellreaktionsspiel: Distanzversion: 5 Schritte (mit Bildern)
Schnellreaktionsspiel: Distanzversion: Hallo. Dies ist eine Anleitung, wie Sie ein Spiel erstellen können, das sowohl Ihre Reaktionszeit als auch Ihr Distanzgefühl testet. Dieses Projekt basiert auf einem alten Projekt, das ich mit zwei Spielern durchgeführt habe, die miteinander wetteifern, um zu sehen, wer eine schnellere Reaktionszeit hatte, indem sie auf eine Schaltfläche w