Home > Technologie > DIY Neigungs-Sensor-Gedächtnis-Spiel

DIY Neigungs-Sensor-Gedächtnis-Spiel

0
Advertisement

DIY Neigungs-Sensor-Gedächtnis-Spiel

DIY Neigungs-Sensor-Gedächtnis-Spiel

Wie baut man ein FPGA DIY Memory Game.

Teamarbeit: Memory Blitz. Von: Bit By Bit Productions

  • Kim Laberinto
  • Dana Carver
  • Megan VanHumbeck

Dieses Projekt ist für unsere ECE2220 Digital Logic Systems Kurs an der Universität von Manitoba. Inspiriert durch das Handheld-Spiel Simon, dachten wir, es wäre ein ausreichend anspruchsvolles Projekt, das sich als sehr wahr erwies. Aber wir haben es überwunden! Viel Glück mit dem Projekt, und wir hoffen, dass Sie so viel davon lernen wie wir.

Merkmale unserer Memory Game Implementation

  • DIY Neigung-Sensor
  • Verschiedene Klangfarben (E, C # und A und E [untere Oktave als die erste])
  • LEDs in verschiedenen Farben
  • Aktivieren von verschiedenen Modulen durch Finite-State-Maschinen
  • Sequenzielle Darstellung der Ausgabe
  • Reset-Schalter
  • 4-Modi der Schwierigkeit / Geschwindigkeit

Schritt 1: Wie alles funktioniert

Das Gerät arbeitet mit einer Sequenz für den Spieler, beginnend mit der Länge 1, mit 4 LEDs und einem Lautsprecher und nimmt dann Eingang von unserem DIY Neigungssensor auf, um zu sehen, ob der Spieler die Sequenz anpassen kann. Jede Neigungsrichtung entspricht einer LED-Farbe. Wenn der Player die Sequenz falsch eingegeben hat, werden in 4 sieben Segmentanzeigen das Wort "FAIL" angezeigt. Wenn jedoch der Spieler die Sequenz korrekt eingibt, wird die Sequenz mit einem weiteren Schritt erneut präsentiert, als der vorhergehende "Pegel". Wenn der Spieler die Sequenz 9 mal korrekt eingibt, werden die 4 sieben Segmentanzeigen das Wort "PASS" anzeigen. Am Ende jedes Spiels, wenn der Spieler wieder spielen möchten, müssen sie nur den Reset-Schalter auf High für ein paar Sekunden. Wenn die Sequenz für die erste Ebene präsentiert wird, kann der Schalter auf Low zurückgesetzt werden, und der Player kann mit der Wiedergabe fortfahren.

Das Spiel wird durch die Uhr erschwert. Jedes Mal, wenn die Sequenz präsentiert wird, hat der Spieler einen einzigen Taktzyklus, bevor er irgendwelche Eingaben geben muss. Der Trick ist, dass danach, jeder Teil der Sequenz eingegeben werden muss, wenn das nächste Mal die Uhr hoch geht. Das liegt daran, dass das System prüft, ob die Eingabe mit der dargestellten Sequenz auf der positiven Flanke der Uhr übereinstimmt. Die verwendete Uhr war ein 25-MHz-Takt auf der FPGA-Platine, wird aber durch einen Zähler verlangsamt. Jedes Mal, wenn die Uhr hoch wird, erhöht sich der Zähler und wenn der Zähler auf den eingestellten Wert gelangt, geht ein Signal zum System und der Zähler setzt sich zurück. Dieses Signal ist, was wir für eine Uhr verwendet, weil es uns erlaubt, das Spiel "Tempo" durch einfaches Ändern des Wertes der Zähler zu erreichen hat. Diese modifizierte Uhr (wenn der Zähler den vorgegebenen Wert erreicht) wird dem Spieler auf dem Steckbrett durch eine einzige gelbe LED angezeigt. Der Spieler hat 4 Geschwindigkeitsoptionen, die vor oder während des Spiels geändert werden können. Es stehen 2 Schalter zur Auswahl. Wenn beide niedrig sind, ist das Spiel sehr langsame Geschwindigkeit, wenn nur das Recht am meisten Schalter hoch ist, ist das Spiel langsame Geschwindigkeit, wenn nur die zweite rechts am meisten Schalter hoch ist, dann ist das Spiel mittlere Geschwindigkeit und wenn beide Schalter hoch sind, Dann ist das Spiel schnelle Geschwindigkeit.

Schritt 2: Materialien und Ausrüstung

DIY Neigungs-Sensor-Gedächtnis-Spiel

DIY Neigungs-Sensor-Gedächtnis-Spiel

DIY Neigungs-Sensor-Gedächtnis-Spiel

DIY Neigungs-Sensor-Gedächtnis-Spiel

DIY Neigungs-Sensor-Gedächtnis-Spiel

DIY Neigungs-Sensor-Gedächtnis-Spiel

DIY Neigungs-Sensor-Gedächtnis-Spiel

DIY Neigungs-Sensor-Gedächtnis-Spiel

DIY Neigungs-Sensor-Gedächtnis-Spiel

DIY Neigungs-Sensor-Gedächtnis-Spiel

DIY Neigungs-Sensor-Gedächtnis-Spiel

DIY Neigungs-Sensor-Gedächtnis-Spiel

DIY Neigungs-Sensor-Gedächtnis-Spiel

FPGA-Karte und Peripheriegeräte

  • Altera Cyclone 4E DE2 FPGA Board (aus unserem ECE2220 Kurs)
  • Erweiterungskopf / 2x40 Flachbandkabel mit Kopfstiften (von der ECE-Fachhochschule der Universität Manitoba)
  • Steckbrett

DIY Neigungssensor (für Eingang)

  • PVC 4-Wege-Kreuz (wir verwendeten 1/2 "im Durchmesser)
  • Leitfähiges Kugellager
  • Drähte
  • Popsicle-Stöcke
  • Schaumstoffstücke (oder etwas zum Abdecken der Enden)
  • Tape (um den Schaum an Ort und Stelle zu halten)

LED-Ausgänge

  • 8 Leuchtdioden
  • Geeignete Strombegrenzungswiderstände

In unserem Projekt verwendeten wir 8 LEDs in verschiedenen Farben (2 rot, 2 blau, 2 grün und 2 gelb). Wir fanden die roten, gelben und grünen LEDs viel dunkler als die blauen, so dass wir einen niedrigeren Wert-Widerstand in Serie. In unserem Projekt verwendeten wir 1kΩs für die blauen LEDs und 100Ωs für die roten, gelben und grünen LEDs.

Redner

  • Kopfhörerbuchse (1/8 ")
  • 10 uF Kondensator
  • Drähte
  • Lötkolben

Uhr

  • 1 gelbe LED
  • 25MHz Takt (auf der FPGA-Platine)

Ausrüstung

  • Schere
  • Klebepistole
  • Abisolierzangen (optional, aber hilfreich)
  • Handschleifer oder Sandpapier

Wir konnten die meisten Dinge finden, die wir vom UofM ECE Tech Shop benötigten. Für diejenigen außerhalb der UofM, sollten Sie in der Lage, diese Materialien online zu finden.

Schritt 3: Aufbau des Neigungssensors

DIY Neigungs-Sensor-Gedächtnis-Spiel

DIY Neigungs-Sensor-Gedächtnis-Spiel

DIY Neigungs-Sensor-Gedächtnis-Spiel

DIY Neigungs-Sensor-Gedächtnis-Spiel

DIY Neigungs-Sensor-Gedächtnis-Spiel

DIY Neigungs-Sensor-Gedächtnis-Spiel

DIY Neigungs-Sensor-Gedächtnis-Spiel

DIY Neigungs-Sensor-Gedächtnis-Spiel

DIY Neigungs-Sensor-Gedächtnis-Spiel

DIY Neigungs-Sensor-Gedächtnis-Spiel

DIY Neigungs-Sensor-Gedächtnis-Spiel

DIY Neigungs-Sensor-Gedächtnis-Spiel

DIY Neigungs-Sensor-Gedächtnis-Spiel

  1. Sie benötigen eine Vier-Wege-Sanitärarmatur, ein Metall-Kugellager, einige Popsicle-Sticks, eine Heißklebepistole, ein Handschleifer oder Sandpapier, Drähte, Schaum und Klebeband.
  2. Sie müssen 4 Rampen aus dem Popsicle-Sticks, so dass der Sensor hat eine "neutrale Position", wenn es nicht gekippt ist. Messen Sie vom Ende eines der Beschläge, wo es alle anderen erfüllt. Dies stellt grundsätzlich sicher, dass die Rampen nicht zu weit aus dem Rohrleitungsarm herausragen. Ich verwendete ungefähr 2.75cm.
  3. Schneiden Sie die 8 Stück Popsicle-Sticks auf Ihre gemessene Länge. Stellen Sie sicher, dass sie nicht splittern.
  4. Um den Neigungssensor empfindlicher zu machen (ohne dass das Gerät horizontal oder vertikal sein muss, bevor der Ball bewegt wird), müssen Sie ein Ende eines jeden Popsicle-Stabes schleifen, so dass es zu einem Punkt geht. Je dünner es am Ende ist, desto weniger müssen Sie den Sensor neigen, um eine Ablesung zu erhalten.
  5. Sie müssen die Popsicles-Stick-Stücke zusammen zu verkleben, um eine V-Form, mit den längeren Seiten der Popsicle-Stick-Stücke berühren. Ich benutzte die Innenkante der Sanitärarmatur, um sicherzustellen, dass die Rampe so flach wie möglich wäre. Ich hielt die Popsiclestücke gegen die Kante, wobei ein wenig von ihnen herausstreckte, so dass ich etwas Heißklebstoff anbringen konnte, an dem die Stücke berührten, um sie im richtigen Winkel zu halten und dann den Rest der Länge der Rampe in diesem Winkel zu kleben So dass war sicherer. Achten Sie darauf, dass es nur eine dünne Schicht Kleber, weil zu viel macht die Rampenenden sitzen zu weit weg von der Basis der Sanitärarmatur und dann kann das Kugellager nicht auf die Rampen leicht rollen.
  6. Sobald alle 4 Rampen montiert sind, wird der nächste Schritt sie in die Sanitärarmatur bringen. Dazu müssen Sie entscheiden, wie empfindlich der Sensor sein soll. Das bedeutet, die Steigung der Rampe zu bestimmen. Sie müssen die Rampenstücke innen kleben und halten jedes an beiden Enden. Ich benutzte einen Finger, um die Unterseite der Rampe unten durch die gegenüberliegende Seite der Befestigung zu halten und dann setzte ich Schaumstücke unter das andere Ende der Rampe, um die Rampe am Winkel zu halten, den ich wünschte. Ich klebte an den oberen Ecken der v-Form für jede Rampe.
  7. Sobald der Kleber vollständig trocken ist, müssen Sie einen Draht zu jeder Seite jeder Rampe anschließen. Ich legte einen Draht in die gleiche Richtung der Rampe mit etwa 0,75 cm freigelegten Draht am Ende der Rampe und dann gebogen den Draht, so dass es die Kontur der Sanitärarmatur und alle Drähte nach unten von der Mitte verlängert folgte Der Unterseite des Quetschverschlusses. Kleben Sie die Drähte unten am Ende der Rampe und an der Unterseite der Befestigung. Sie müssen nur sicherstellen, dass der Draht sicher ist und sich nicht bewegen oder drehen kann. Dadurch wird sichergestellt, dass der Sensor zuverlässig ist. Wenn das Kugellager beide Drähte an einem Ende berührt, wird es die Schaltung erden und der Sensor erkennt dies als eine Neigung in dieser Richtung.
  8. Der letzte Schritt beim Aufbau des Neigungssensors besteht darin, das Kugellager einzuführen und dann alle Enden abzuschließen. Ich tat dies mit einem kleinen rechteckigen Stück Schaum und benutzte das elektrische Band, um den Schaum zu sichern. Sie wollen mit der Größe und Platzierung des Schaums zu experimentieren, um sicherzustellen, dass, wenn der Sensor gekippt wird, dass das Kugellager können tatsächlich berühren beide Stücke von Draht.

Schritt 4: Anschließen und Testen des Neigungssensors

DIY Neigungs-Sensor-Gedächtnis-Spiel

  1. Sie benötigen die Brotplatine, die FPGA-Platine, das Flachbandkabel (für die GPIO-Bank auf der Altera-Platine), Drähte, Widerstände, Kondensatoren und LEDs.
  2. Zur Vereinfachung der Verdrahtung, wählen Sie eine Seite, habe ich die rechte Seite, und verbinden Sie jeden Draht auf der Seite und schließen Sie es an Masse. Dann nehmen Sie jeden Draht auf der anderen Seite, für mich war das die Drähte auf der linken Seite und schloss sie parallel zu einer Spannungsquelle. Der Draht sollte durch einen Kondensator auf Masse gehen, ich benutzte 10 Mikro Farad, und an die Spannungsquelle über einen Widerstand, habe ich 20 Kilo-Ohm verwendet. Sie müssen das Flachbandkabel von der FPGA-Platine mit dem Flachbandkabel und den Kopfstiften verbinden, wenn Sie sie haben. Ich habe den GND-GPIO-Pin auf der FPGA-Platine verwendet und nur an eine Schiene angeschlossen und für die Spannungsquelle habe ich einen Pin auf der FPGA-Platine auf 1 gesetzt und dann diesen Pin mit einer Schiene verbunden.
  3. Sie müssen auch das Kabel von dem Sensor, der auf Masse ging, und eine Spannungsquelle mit einem Stift auf dem Flachbandkabel verbinden. So liest man vom Sensor ein. Wenn das Kugellager den Stromkreis ausgibt, sendet der Sensor eine 0 an den FPGA über die GPIO-Pins und das Flachbandkabel.
  4. Um den Sensor zu testen, haben wir 4 Widerstände mit Pins auf dem Flachbandkabel verbunden und dann den Widerstand über eine LED mit Masse verbunden. Wenn der GPIO-Pin hoch geht, gibt er eine Spannung aus und schaltet die LED ein. Wir verwendeten 100 Ohm Widerstände für rote, grüne und gelbe LEDs und 1000 Ohm Widerstände für blaue LEDs. Stellen Sie sicher, dass das positive Ende der LED (das längere Ende) mit dem Widerstand und dem negativen Ende mit Masse verbunden ist.
  5. Um diese Arbeit zu machen, müssen Sie ein Modul in einer Quartus-Datei mit Verilog Hardware-Codierungssprache zu schreiben. Die an den Sensor angeschlossenen Pins sind Ihre Eingänge und die an die LEDs angeschlossenen Pins sind die Ausgänge. Sie können jeden LED-Pin mit Zuweisungsanweisungen einfach auf einen der Sensor-Pins setzen.
  6. Hinweis: Diese LEDs werden im Spiel verwendet, um dem Benutzer zu zeigen, was sie eingegeben haben.

Schritt 5: Einrichten der Lautsprecher und LEDs

DIY Neigungs-Sensor-Gedächtnis-Spiel

Löten der Audiokomponenten

  1. Holen Sie sich die Kopfhörer-Buchse und den Kondensator. Erhalten Sie zwei kurze Drähte, eine rote, eine schwarze. Dies sind die Signal- und Masseleitungen.
  2. Schließen Sie das eine Kabel des Kondensators an den linken und rechten Kanal des Audioanschlusses an. (Der Mittelstift ist geschliffen.)
  3. Löten Sie den Kondensator nach links und rechts. Clip der Überschuss.
  4. Löten Sie das Erdungskabel (schwarz) auf den Mittelstift. Clip überschüssige.
  5. Löten Sie die Signalleitung (rot) auf die andere Leitung des Kondensators. Clip überschüssige.
  6. Verbinden Sie Ihren Lautsprecher über den Audio-Port! Erledigt!

Nun wird Ihr Audiosignal über das rote Kabel an die angeschlossenen Lautsprecher angeschlossen.

Einstellen der LEDs, die die Sequenz dem Player präsentieren

  1. Verbinden Sie 4 Pins des Flachbandkabels mit Widerständen, wir verwendeten 100 Ohm von roten, grünen und gelben LEDs und 1000 Ohm für die blaue LED.
  2. Verbinden Sie jeden Widerstand mit einer LED und erden Sie die andere Seite der LED.

Denken Sie daran, Strom fließt nur in das positive Ende der LED. [Nur eine kleine Erinnerung, dass das positive Ende der LED meist länger ist).

3.Test diese LEDs durch Schreiben eines kurzen Verilog-Moduls, das jedem GPIO-Pin, der mit diesen LEDs verbunden ist, 1 (HIGH) zuweist.

Check Point: An diesem Punkt sollte der Sensor für jede Richtung, in die er geneigt ist, eine andere LED aufleuchten und die Lautsprecher- und Ausgangs-LEDs sollten alle eingerichtet und funktionsfähig sein.

Schritt 6: Schreiben des aktuellen Moduls

In einem Gedächtnisspiel muss ein Muster dem Benutzer präsentiert werden, damit es sich wiederholt. Dies ist der Zweck des Present-Moduls. Jedes Mal, wenn das Present-Modul ausgeführt wird, wird das Muster der LEDs der letzten Ebene angezeigt, plus ein weiteres. Um dies umzusetzen, verwendeten wir eine Finite-State-Maschine und einen Zähler. Der Zähler, genannt "i", verfolgt den Pegel. Dieser Zähler verfolgt, wie viele Zustände ausgeführt werden sollten, bevor das Programm in den Zwischenzustand mit dem Namen IN_BETWEEN_STATE übergeht. Im Zwischenzustand sind keine LEDs dargestellt, und wie wir später erklären werden, läuft das Vergleichsmodul.

Der Code für die Finite-State-Maschine kann kompliziert erscheinen auf den ersten Blick, aber logisch ist es ganz einfach. Jeder Zustand hat drei Teile: output, "if" und "else". Der Ausgangsteil steuert die LEDs und die HEX-Anzeige. Sie legt die einzelnen LEDs ein oder aus, zeigt dem Benutzer an, welche Reihenfolge die Aktionen ausführen soll und zeigt den Pegel auf einem HEX-Display an. Die "if" -Anweisung prüft, ob "i", die Ebene, mit dem Zustand übereinstimmt, in dem wir uns befinden. Wenn die Anweisung "if" true ist, springt die Finite-State-Maschine direkt in die Zwischenstufe, um zu warten, "I" wird ebenfalls erhöht, so dass, wenn das Present-Modul erneut läuft, der Benutzer auf der nächsten Ebene ist. Schließlich bewirkt die Anweisung "else", dass die Zustandsmaschine zum nächsten Zustand in der Sequenz geht, wodurch eine weitere LED zur Präsentation hinzugefügt wird.

Zusätzlich zu den LEDs gibt es auch Ton. Jede LED hat eine andere Tonhöhe. Wenn eine LED eingeschaltet ist, spielt die damit verknüpfte Tonhöhe ab. Wir haben die richtigen Frequenzen für die Tonhöhe, um die Simon Spiel durch mathematische Manipulation der Taktfrequenz. Dies wird im allTones-Modul eingehend erforscht.

Bitte beachten Sie, dass unser Code in Schritt 10 beigefügt ist.

Schritt 7: Schreiben des Vergleichsmoduls

Der Zweck des Vergleichsmoduls besteht darin, die Eingabe von dem Spieler zu verarbeiten und es mit der LED-Sequenz zu vergleichen, um zu bestimmen, ob der Spieler den Speicher ordnungsgemäß gespeichert und die Sequenz wiederholt hat. Der Code für diesen Prozess ist dem Code für das Present-Modul sehr ähnlich. Sie haben beide das gleiche Format zu bestimmen, welche Zustand zu gehen, abhängig von dem Zähler.

Um es leichter zu interpretieren, die Spieler-Eingang haben wir eine separate immer Schleife von der der endlichen Maschine. Der Zweck dieser Schleife ist es, alle vier möglichen Eingaben zu nehmen und sie zu einer vier Bit heißen codierten Zahl zu machen. Diese Zahl stimmt mit der einen heißen codierten Zahl für die vier LEDs überein und leuchtet nur eine für jede Eingangsrichtung auf.

Im Vergleich zum Present-Modul hat jeder Zustand des Compare-Moduls einige weitere Abschnitte. Während es die "if" - und "for" -Schleifen weiterhin beibehält, entfernt es den LED-Anzeigeabschnitt des Ausgabeabschnitts und fügt ein "if" und "else" hinzu, um zu steuern, ob der Zustand überhaupt ausgegeben hat. Das obere "if" prüft, ob der Benutzer die richtige Eingabe gewählt hat. Wenn die Benutzereingabe nicht mit der erwünschten vier Bit einer heißen codierten Zahl übereinstimmt, springt die Finite-State-Maschine direkt in den FAIL-Zustand, der das Spiel beendet und "FAIL" auf vier HEX-Anzeigen präsentiert. Wenn der Benutzer die richtige Richtung wählt, geht er zur "else" -Anweisung über und stellt sich der zweiten "if" - und "else" -Anweisung. Diese "if" - und "else" -Anweisungen sind die gleichen wie jene in Present; Sie überprüfen, auf welcher Ebene der Spieler ist (der Wert der Variablen "i") und wo die endliche Zustandsanpassung von dort aus gehen sollte. Wenn in der letzten Ebene der Spieler korrekt auf alle Zustände reagiert hat, veranlasst die letzte Stufe die Zustandsmaschine zum PASS-Zustand. In diesem Zustand wird "PASS" auf vier HEX-Bildschirm angezeigt und das Spiel wurde gewonnen.

Schritt 8: Schreiben des allTones-Moduls (Sound)

In unserem Projekt, wenn die FPGA-Platine die Ausgabe an den Spieler präsentiert, kommt ein passender Klang aus der Platine, je nachdem, welche Farbe angezeigt wird. Die gesamte Bedienung des Lautsprechers erfolgt über das allTones-Modul.

Unter Ausnutzung des Onboard 25MHz Taktes und eines Zählers, der auf die spezifische Zahl zählt, können wir den Lautsprecher mit einer Rechteckwelle einer bestimmten Frequenz umschalten. Die Tonhöhen der 4 Farben in unserem Spiel sind, E, C #, A und E (Oktave niedriger als die erste E). In den gleichen Registerbits, die die LEDs als Eingang in das Modul aufleuchten, hat das allTones-Modul einen immer @ -Block in Verilog, der die jeweilige Frequenz ändert, um den Lautsprecher immer mit dem angegebenen Ton für diese Farb-LED zu betreiben.

Schritt 9: Schreiben des Hauptmoduls

Das Hauptmodul des Verilog-Codes ist eine Finite-State-Maschine, die ihre Zustände verwendet, um die Werte der Freigaben für die Present- und die Compare-Module zu ändern. Es ist auch verantwortlich für das Zurücksetzen des Spiels und für das Ändern der Taktgeschwindigkeit abhängig von der Schwierigkeit, die durch den Benutzer eingegeben wird.

Das Hauptmodul verwendet drei Schalter, um das Spiel auszuführen. Der erste Schalter ist der Reset-Schalter. Wie der Name schon sagt, setzt der Reset-Schalter das Spiel in seinen ursprünglichen Zustand zurück, so dass der Spieler das Spiel wieder spielen kann. Dadurch werden auch die in den anderen Modulen vorhandenen Zählvariablen zurückgesetzt. Die beiden anderen Schalter steuern die Geschwindigkeit. Unser Spiel hat vier Geschwindigkeiten, von denen jede eine Kombination der beiden Schalter ist. Die Geschwindigkeit steuert die eingestellte Uhr, bekannt als modclk, die im Programm verwendet wird. Je schneller die Uhr, desto schwieriger ist das Spiel.

Der Teil des Projektes am schwierigsten zu verstehen ist die Finite-State-Maschine im Hauptmodul. Während es nur zwei Zustände hat, können die Umstände, für die sie sich ändern, schwierig zu verarbeiten sein. Um zu verstehen, warum diese Finite-State-Maschine benötigt wird, muss man ganz verstehen, dass Verilog keine Software-Sprache ist. Module laufen nicht nur, wenn sie aufgerufen werden. Sie laufen ununterbrochen. Wie man vermuten kann, ist dies nicht ideal für ein Spiel mit zwei sehr unterschiedlichen und separaten Modulen. Um kontrollieren zu können, wann ein Modul ausgeführt wird, haben wir Freigaben auf den Finite-State-Maschinen von Present und Compare platziert. Dies begrenzt sie, um nur zu laufen, während die Freigabe hoch ist. Wir haben auch eine Variable im vorgenannten Zwischenzustand beider Module platziert. Diese Variable wird hoch, wenn die jeweilige Finite-State-Maschine die Verarbeitung für diese Ebene beendet hat. Die Hauptfunktion verwendet diese vier Werte, um zu steuern, welches Modul gerade läuft und um zu verhindern, dass das andere Modul gestartet wird, bis das erste beendet ist.

Schritt 10: Unser Code

Schritt 11: Letzte Kommentare

Besonderen Dank an Dr. Ahmad Byagowi für die Unterstützung und Unterstützung während des gesamten Projekts.

Schritt 12: Mögliche Verbesserungen für die Zukunft

Mögliche Verbesserungen für die Zukunft

Im nächsten Abschnitt werden die verschiedenen Teile erwähnt, in denen zukünftige Schüler auf unserem Spiel aufbauen oder modifizieren können.

  • Randomize die Sequenz, so dass das Spiel ist nicht genau das gleiche jedes Mal, wenn Sie spielen. Wir hart codiert eine Sequenz, aber dies könnte langweilig für den Spieler nach einer Weile.
  • Ändern Sie die Methode der Eingabe in diesem Spiel. Im Moment verwenden wir Tilt-Sensoren, aber das Spiel könnte eine Vielzahl von verschiedenen Methoden der Einnahme von Input aus dem Player (zusammen mit entsprechenden Änderungen an dem Code, wenn erforderlich).
  • Erstellen Sie einen ästhetisch ansprechenderen Ton mit dem FPGA und nicht mit einem Rechteckwelleneingang zum Lautsprecher.
  • Experimentieren Sie und fühlen Sie sich frei, von irgendeinem Teil unseres Codes aufzubauen!
Related Reading