Raspberry Pi Pico: Reaktionsspiel mit zwei Tastern und LEDs

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 richtigen Spaß.

Na dann los. Aufgebaut und hergeschaut. Wer hat am schnellsten den Taster gedrückt, wenn die Onboard-LED angeht?

Aufbau und Bauteile

Raspberry Pi Pico: Reaktionsspiel mit zwei Tastern und LEDs

  • S1, Taster
  • S2, Taster
  • R1, Widerstand, 470 Ohm
  • R2, Widerstand, 470 Ohm
  • LED1, Leuchtdiode, rot, gelb oder grün
  • LED2, Leuchtdiode, gelb, gelb oder grün
  • Verbindungskabel

Programmcode

Im folgenden Programm werden zwei Taster und drei Leuchtdioden definiert. Die Onboard-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 seines Tasters erneut starten.

# Bibliotheken laden
from machine import Pin
from utime import sleep
from random import randint

# Initialisierung
led_onboard = Pin(25, Pin.OUT, value=0)
led1 = Pin(19, Pin.OUT, value=0)
led2 = Pin(12, Pin.OUT, value=0)
btn1 = Pin(16, Pin.IN, Pin.PULL_UP)
btn2 = Pin(15, Pin.IN, Pin.PULL_UP)

# Wiederholung
while True:
    # LEDs ausschalten
    led1.off()
    led2.off()
    # Blinken: gleich geht das Spiel los
    for i in range (1, 10):
        led_onboard.toggle()
        sleep(0.2)
    led_onboard.off()
    # Zufällige Zeit ermitteln und warten
    rand = randint(5, 10)
    sleep(rand)
    # Onboard-LED einschalten
    led_onboard.on()
    # Wiederholung: Wer drückt seinen Taster zuerst?
    while True:
        # Taster 1 wird zuerst gedrückt
        if btn1.value() == 0:
            led1.on()
            sleep(2)
            while True:
                if btn1.value() == 0: break
                sleep(0.1)
        # Taster 2 wird zuerst gedrückt
        if btn2.value() == 0:
            led2.on()
            sleep(2)
            while True:
                if btn2.value() == 0: break
                sleep(0.1)
        # Schleife beenden, wenn eine LED an ist
        if led1.value() == 1 or led2.value() == 1: break
        sleep(0.1)

Weitere verwandte Themen:

Teilen:

Hardware-nahes Programmieren mit dem Raspberry Pi Pico und MicroPython

Elektronik-Set Pico Edition

Das Elektronik-Set Pico Edition ist ein Bauteile-Sortiment mit Anleitung zum Experimentieren und Programmieren mit MicroPython.

  • LED: Einschalten, ausschalten, blinken und Helligkeit steuern
  • Taster: Entprellen und Zustände anzeigen
  • LED mit Taster einschalten und ausschalten
  • Ampel- und Lauflicht-Steuerung
  • Elektronischer Würfel
  • Eigene Steuerungen programmieren

Elektronik-Set jetzt bestellen Online-Workshop buchen

Programmieren mit dem Raspberry Pi Pico
Online-Workshop

Hardware-nahes Programmieren mit dem Raspberry Pi Pico

Gemeinsam mit anderen und unter Anleitung experimentieren? Wir bieten unterschiedliche Online-Workshops zum Raspberry Pi Pico und MicroPython an. Einführung in die Programmierung, Sensoren programmieren und kalibrieren, sowie Internet of Things und Smart Home über WLAN und MQTT.

Online-Workshop buchen

Für Ihre Fragen zu unseren Online-Workshops mit dem Raspberry Pi Pico besuchen Sie unseren PicoTalk (Online-Meeting). (Headset empfohlen)

Zum PicoTalk

 

Elektronik-Set Pico Edition
Elektronik-Set Pico Edition

Raspberry Pi Pico: Hardware-nahes Programmieren mit MicroPython

Leichter Einstieg mit All-in-one-Set zum sofort Loslegen, um eigene Steuerungen programmieren.

Elektronik-Set jetzt bestellen

 

Elektronik-Set Pico WLAN Edition
Elektronik-Set Pico WLAN Edition

Raspberry Pi Pico W: IoT und Smart Home mit WLAN und MQTT

Betreibe Deinen Raspberry Pi Pico W als drahtloser Sensor in Deinem WLAN, versende E-Mails mit Daten und kommuniziere per MQTT im Internet of Things oder Smart Home.

Elektronik-Set jetzt bestellen

 

Elektronik-Set Sensor Edition
Elektronik-Set Sensor Edition

Erweiterung zu den Elektronik-Sets Pico Edition und Pico WLAN Edition

Elektronik-Set mit den beliebtesten Sensoren zum Messen von Temperatur, Helligkeit, Bewegung, Lautstärke und Entfernung.

Elektronik-Set jetzt bestellen

 

Elektronik-Set Eingabe Ausgabe Edition
Elektronik-Set Eingabe Ausgabe Edition

Erweiterung zu den Elektronik-Sets Pico Edition und Pico WLAN Edition

Damit kannst Du MP3-Dateien abspielen, eine Stoppuhr bauen, einen Servo-Motor mit Drehschalter oder Joystick steuern, Lichteffekte mit einem WS2812-LED-Lichtstreifen erzeugen, Schalten mit einem Relais und Signalisieren mit einem Vibrationsmotor.

Elektronik-Set jetzt bestellen