klaas d6a19515bf | ||
---|---|---|
.DS_Store | ||
README.md | ||
uhr.py |
README.md
Geschicklichkeitsspiel mit Arduino und LCD-Anzeige
Projektübersicht
Dieses Projekt implementiert ein einfaches Geschicklichkeitsspiel mit einem Arduino-Mikrocontroller, bei dem die Zeit gemessen wird, die benötigt wird, um das Spiel abzuschließen. Das Spiel zeichnet Fehler auf, die während des Spiels gemacht werden, und zeigt die Ergebnisse auf einem LCD-Display an. Zusätzliche visuelle und akustische Signale werden bei Fehlern ausgegeben.
Komponenten
- Arduino Uno oder kompatibles Board
- LCD-Display (16x2) mit HD44780-Treiber
- Taster (Start, Stopp, Fehlererkennung)
- Buzzer (zur akustischen Signalisierung von Fehlern)
- Potentiometer (optional, zur Einstellung der Strafzeit)
- Widerstände (Pull-up Widerstände für die Taster)
- Verbindungskabel und Steckbrett (für die Schaltung)
Funktionen
- Start- und Stopp-Taster: Das Spiel beginnt, wenn der Start-Taster gedrückt wird, und endet, wenn der Stopp-Taster betätigt wird.
- Fehlererkennung: Ein Fehler wird registriert, wenn der Fehler-Taster während des Spiels gedrückt wird. Jeder Fehler wird auf dem LCD-Display angezeigt, und ein Buzzer ertönt.
- Zeitmessung: Die Zeit, die benötigt wird, um das Spiel abzuschließen, wird in Sekunden gemessen und angezeigt.
- Ergebnisanzeige: Nach Beendigung des Spiels wird die Gesamtzeit und die Anzahl der Fehler auf dem LCD angezeigt.
Schaltung
-
LCD-Anzeige: Verbinde das LCD-Display wie folgt mit dem Arduino:
- RS -> Pin 12
- E -> Pin 11
- D4 -> Pin 5
- D5 -> Pin 4
- D6 -> Pin 3
- D7 -> Pin 2
-
Taster:
- Start-Taster: Verbinde einen Taster mit Pin 8 und GND.
- Stopp-Taster: Verbinde einen Taster mit Pin 9 und GND.
- Fehler-Taster: Verbinde einen Taster mit Pin 10 und GND.
-
Buzzer: Verbinde den Buzzer mit Pin 7 und GND.
-
Potentiometer (optional): Verbinde das Potentiometer mit Pin A0, falls du die Strafzeit anpassen möchtest.
Code-Erklärung
- Setup: Initialisiert das LCD-Display und konfiguriert die Pins für die Taster und den Buzzer.
- Loop: Wartet auf den Start-Taster, um das Spiel zu beginnen. Während des Spiels werden Fehler gezählt und die Zeit gemessen. Bei Spielende wird die Gesamtzeit und die Anzahl der Fehler angezeigt.
- startGame(): Startet den Timer und überwacht die Fehlererkennung. Die aktuelle Spielzeit und die Fehleranzahl werden auf dem LCD angezeigt.
- resetGame(): Setzt das Spiel zurück und bereitet es auf einen neuen Start vor.
Verwendung
- Vorbereitung: Schließe die Schaltung gemäß der obigen Beschreibung an.
- Upload: Lade den Code auf dein Arduino-Board hoch.
- Start: Drücke den Start-Taster, um das Spiel zu beginnen.
- Spielverlauf: Versuche, das Spiel so schnell wie möglich abzuschließen, ohne Fehler zu machen. Jeder Fehler wird registriert und akustisch signalisiert.
- Ende: Drücke den Stopp-Taster, um das Spiel zu beenden. Die Zeit und die Anzahl der Fehler werden auf dem LCD angezeigt.
Anpassungen
- Strafzeit: Du kannst den Bereich der Strafzeit durch Ändern der Variablen
minPenaltyTime
undmaxPenaltyTime
anpassen. - Buzzer-Signal: Die Dauer des akustischen Signals bei einem Fehler kann durch Ändern des Wertes in der
delay()
-Funktion innerhalb der Fehlererkennungsschleife angepasst werden.
Lizenz
Dieses Projekt steht unter der MIT-Lizenz – weitere Informationen findest du in der Datei LICENSE.md im Repository.