2.13 Reaktionsspiel

In diesem Projekt verwenden wir mehrere Tasten, einen Summer und LEDs, um ein Reaktionsspiel zu erstellen. Drücken Sie die Schiedsrichtertaste, um das Spiel zu starten; der Summer gibt dabei kontinuierlich Töne aus, um das Fortsetzen des Spiels anzuzeigen. Betätigen Sie schnell die beiden Spielertasten; wenn die Schiedsrichtertaste erneut gedrückt wird, ist das Spiel beendet und der Summer hört auf zu summen. Überprüfen Sie dann auf Piper Make in der Konsole, welcher Spieler schneller war.

Benötigte Komponenten

Für dieses Projekt benötigen wir folgende Komponenten:

Ein komplettes Kit ist natürlich praktisch. Hier ist der Link dazu:

Name

ARTIKEL IN DIESEM SET

LINK

Kepler Kit

450+

Kepler Kit

Sie können die einzelnen Komponenten auch über die untenstehenden Links kaufen.

SN

KOMPONENTE

ANZAHL

LINK

1

Raspberry Pi Pico W

1

BUY

2

Micro USB Kabel

1

3

Steckbrett

1

BUY

4

Jumperkabel

Mehrere

BUY

5

Transistor

1(S8050)

BUY

6

Widerstand

6(2-220Ω, 1-1KΩ, 3-10KΩ)

BUY

7

Aktiver Summer

1

8

Taster

3

BUY

9

LED

2

BUY

Verkabelung

button_race0

  • Definieren Sie zwei Tasten als Spieler1 (GP14) und Spieler2 (GP12), beide sind mit einem Pull-up-Widerstand verbunden. Bei Betätigung der Tasten gehen GP14 und GP12 jeweils auf niedrig.

  • Die zugehörigen Indikatoren sind mit GP15 und GP13 verbunden und leuchten auf, wenn diese Pins auf hoch gesetzt sind.

  • Definieren Sie eine Schiedsrichtertaste, die mit GP10 verbunden ist. Bei Betätigung geht GP10 auf niedrig.

  • Der aktive Summer ist mit GP11 verbunden. Wenn GP11 auf hoch gesetzt ist, gibt der Summer einen Ton aus.

Code

Bemerkung

  • Die Abbildung unten können Sie als Orientierung für das Schreiben des Codes per Drag-and-Drop verwenden.

  • Importieren Sie 2.13_reaction_game.png aus dem Verzeichnis kepler-kit-main\piper. Detaillierte Anleitungen finden Sie unter Code importieren.

button_race

  • Nach dem Anschluss von Pico W klicken Sie auf die Start-Taste, und der Code wird ausgeführt.

  • Betätigen Sie die Schiedsrichtertaste und der Summer gibt einen kontinuierlichen Ton aus, was den Spielstart signalisiert.

  • Drücken Sie nun die Spielertasten einzeln und schnell. Die zugehörigen LEDs werden aufleuchten.

  • Wird die Schiedsrichtertaste erneut gedrückt, stoppt der Summer, was das Spielende bedeutet.

  • Klicken Sie auf diesem Punkt auf die Konsole, um zu sehen, welcher Spieler mehr Betätigungen hatte.

Funktionsweise

button_race1

GP10 ist die Schiedsrichtertaste. Wenn diese nicht gedrückt ist (hoch), hat das Spiel noch nicht begonnen. Wenn GP10 niedrig ist (Schiedsrichtertaste gedrückt), beginnt das Spiel; setzen Sie GP11 auf hoch (Summer), erstellen Sie Variablen und setzen Sie die Anfangswerte.

button_race2

Wenn die Flagge 1 für den Spielstart ist, dann lesen Sie den Wert von GP14 (Spieler1); wenn die Spieler1-Taste gedrückt wird, speichern Sie die Anzahl der Betätigungen in der Variablen [count1] und lassen Sie den Indikator von GP15 aufleuchten.

button_race3

Lesen Sie die Anzahl der Betätigungen von GP12 (Spieler2) auf die gleiche Weise.

button_race4

Drucken Sie die Anzahl der Betätigungen für Spieler1 und Spieler2 jeweils aus.

button_race5

Wenn die Schiedsrichtertaste erneut gedrückt wird, hört der Summer auf zu arbeiten und das Spiel endet.