Skip to content

Activiteit

Reactie spel

Gevorderd | MakeCode, Python | LED scherm, Pinnen | Boolean logica, Elektriciteit, Elektronica, Herhalingen (iteratie), Invoer/Uitvoer, Menselijk lichaam, Productontwerp

Stap 1: Maak het

Wat is het?

Maak een reactiespel met echte fysieke schakelaars die je zo hard kunt bashen als je wilt!

twee zelfgemaakte drukschakelaars bevestigd aan micro:bit pinnen

Zo werkt het

  • Maak twee fysieke invoer schakelaars met behulp van karton en aluminiumfolie - vergelijkbaar met degene die worden gebruikt in het project Alarm met drukschakelaar.
  • Sluit ze aan op de micro:bit pinnen zoals op de afbeelding - een aluminiumfolie pad op elke schakelaar gaat naar de GND pin van de micro:bit en de andere is verbonden met pin 1 of pin 2, afhankelijk van of je speler A of speler B bent.
  • Het programma wacht een willekeurige tijd tussen 1 en 5 seconden en toont vervolgens een hart op de LED display uitgang.
  • Je kunt je knop niet indrukken voordat deze licht vertoont, omdat deze gebruik maakt van Booleaanse logica om te voorkomen dat iemand vals speelt! Booleaanse variabelen kunnen maar twee waarden hebben: Waar of Onwaar. De variabele spel gestart voorkomt dat beide spelers te snel op hun knop drukken door alleen te controleren op welke knop wordt gedrukt terwijl het spel is gestart.
  • Een oneindige lus houdt het spel draaiende, zodat je kunt blijven spelen.

Benodigdheden

  • 1 micro:bit
  • 4 krokodillen klem kabels
  • Wat oud karton, aluminiumfolie, lijm en een schaar

Step 2: Codeer het

1from microbit import *
2import random
3
4while True:
5    gameStarted = False
6    sleep(random.randint(1000, 5000))
7    gameStarted = True
8    display.show(Image.HEART)
9    while gameStarted:
10        if pin1.is_touched():
11            display.show('A')
12            gameStarted = False
13        elif pin2.is_touched():
14            display.show('B')
15            gameStarted = False
16    sleep(3000)
17    display.clear()
18

Stap 3: Verbeter het

  • Gebruik variabelen om de score van elke speler bij te houden
  • Voeg een timer toe om te laten zien hoe snel de reactie van elke winnaar was
  • Houd bij welke speler de snelste reactietijd heeft