Raspberry Pi: Reaktionsspiel mit Tastern und LEDs (mit Python und GPIO Zero)
Experimentieren mit Tastern und LEDs ist ja ganz nett. Aber soll es das schon gewesen sein? Taster drücken und LED geht an. Voll langweilig. Es wird Zeit das wir etwas wirklich sinnvolles mit Tastern und LEDs machen. Ein Spiel gefällig? Du musst natürlich zu Zweit sein, sonst macht das keinen Spaß.
Na dann los. Aufgebaut und hergeschaut. Wer hat am schnellsten den Taster gedrückt, wenn die grüne LED angeht?
Aufbau und Bauteile
- S1, Taster
- S2, Taster
- R1, Widerstand, 330 Ohm
- R2, Widerstand, 330 Ohm
- R3, Widerstand, 330 Ohm
- LED1, Leuchtdiode, rot
- LED2, Leuchtdiode, gelb
- LED3, Leuchtdiode, grün
Programmcode
Im folgenden Programm werden zwei Taster und drei Leuchtdioden definiert. Die grüne LED soll nach einer zufälligen Zeit zwischen 5 und 10 Sekunden angehen. Wer zuerst seinen Taster drückt, dessen Leuchtdiode leuchtet und der Spieler hat gewonnen. Wessen LED leuchtet kann das Spiel mit Drücken auf den Taster erneut starten.
# Bibliotheken laden from gpiozero import Button, LED from time import sleep import random # LEDs initialisieren led_1 = LED(17) led_2 = LED(10) led_3 = LED(9) # Taster initialisieren btn_1 = Button(27) btn_2 = Button(22) # Definition einer Funktion def pressed_btn_1(): if led_1.is_lit: start_game() return if led_3.is_lit: led_1.on() led_3.off() # Definition einer Funktion def pressed_btn_2(): if led_2.is_lit: start_game() return if led_3.is_lit: led_2.on() led_3.off() # Definition einer Funktion def start_game(): # Alle LEDs ausschalten led_1.off() led_2.off() led_3.off() # Zufällige Zeit zwischen 5 und 10 Sekunden warten time = random.uniform(5, 10) sleep(time) # LED einschalten led_3.on() # Wenn ein Button gedrückt wird btn_1.when_pressed = pressed_btn_1 btn_2.when_pressed = pressed_btn_2 # Spiel starten start_game()
Darf es ein bisschen mehr sein?
Was kann man denn mit einem Taster alles machen?
Highlights: Elektronik mit dem Raspberry Pi
- Raspberry Pi: LED einschalten und ausschalten (mit Python und GPIO Zero)
- Raspberry Pi: Taster-Zustand auswerten und anzeigen (mit Python und GPIO Zero)
- Raspberry Pi: Motor über ULN2003A steuern (mit Python und GPIO Zero)
- Raspberry Pi: Relais-Board über ULN2003A steuern (mit Python und GPIO Zero)
- Raspberry Pi: Herunterfahren per Taster (mit Python und GPIO Zero)
Alternative: Elektronik mit dem Raspberry Pi Pico
Raspberry Pi Pico ist ein Mikrocontroller. Er ermöglicht Dank vieler analoger und digitaler Eingänge und Ausgänge vielfältige Anwendung im Bereich der Steuerung von elektronischen Bauteilen, Sensorik, Robotik und Automation.
Weitere verwandte Themen:
- Elektronik mit dem Raspberry Pi
- Raspberry Pi: GPIO - General Purpose Input Output
- Raspberry Pi: GPIO steuern und programmieren
- Raspberry Pi: GPIO mit Python und GPIO Zero programmieren
Hardware-nahes Programmieren mit dem Raspberry Pi, Python und GPIO Zero
Das "Elektronik-Set Raspberry Pi Edition" ist ein Bauteile-Sortiment mit Anleitung zum Experimentieren und Programmieren mit Python und GPIO Zero.
- LED: Einschalten, ausschalten, blinken und Helligkeit steuern
- Taster: Verschiedene Zustände auswerten und anzeigen lassen
- LED mit Taster einschalten und ausschalten
- Relais-Board steuern
- LED, Relais-Board und Motor über ULN2003A steuern
- Ampel- und Lauflicht-Steuerung
- Herunterfahren per Taster
- Reaktionsspiel mit Tastern und LEDs
- Eigene Steuerungen programmieren
Teilen:
Elektronik-Set Raspberry Pi Edition
Elektronik erleben mit dem Raspberry Pi mit Python und GPIO Zero
- Leichter Einstieg ins Hardware-nahe Programmieren mit Python und GPIO Zero
- Experimentieren und Programmieren ohne Vorkenntnisse
- Sofort Loslegen mit All-in-one-Set
Elektronik-Fibel
Elektronik einfach und leicht verständlich
Die Elektronik-Fibel ist ein Buch über die Grundlagen der Elektronik, Bauelemente, Schaltungstechnik und Digitaltechnik.