Skip to content

Activiteit

Klap harten

Beginner | MakeCode, Python | LED scherm, Microfoon | Invoer/Uitvoer

Stap 1: Maak het

Wat is het?

Laat de microfoon van de nieuwe micro:bit reageren op klappen en beats met een geanimeerde lichtshow.

Inleiding

Codeer instructies

Wat je gaat leren

  • Hoe computers invoer opnemen, ze verwerken met behulp van code en verschillende uitvoer maken
  • Hoe de ingebouwde microfoonsensor van de nieuwe micro:bit gebruiken om gebeurtenissen in uw code te activeren
  • Dat de micro:bit's microfoon kan worden gebruikt om te reageren op zowel stille als luide geluiden

Zo werkt het

  • Als de microfoon een luid geluid detecteert, als een klap, dan toont het een groot hart op het LED-scherm.
  • Als er een rustig geluid wordt gedetecteerd, bijvoorbeeld nadat je klap is voltooid, toont het een klein hart.
  • Het gevolg hiervan is het creëren van een eenvoudige hartanimatie die reageert op klappen of sterke muziek.

Benodigdheden

  • nieuwe micro:bit met geluid (of MakeCode simulator)
  • MakeCode of Python editor
  • batterijpakket (optioneel)

Step 2: Codeer het

1from microbit import *
2
3while True:
4    if microphone.current_event() == SoundEvent.LOUD:
5        display.show(Image.HEART)
6        sleep(200)
7    if microphone.current_event() == SoundEvent.QUIET:
8        display.show(Image.HEART_SMALL)

Stap 3: Verbeter het

  • Maak je eigen animatie met andere pictogrammen of teken je eigen foto's.
  • Laat de micro:bit reageren op een luid geluid door een eigen geluid te maken. Levert dit problemen op? Hoe kun je ze oplossen?
  • Je kunt het geluidsniveau veranderen dat een luide geluidsgebeurtenis veroorzaakt. Dit niveau wordt een drempel genoemd. Gebruik in MakeCode het invoerblok 'stel luide geluidsdrempel in op...' om verschillende geluidsniveaus te kiezen om het meer of minder gevoelig te maken voor harde geluiden.
  • Gebruik in Python microfoon.set_threshold(SoundEvent.LOUD, 128) om de drempel voor harde geluiden te wijzigen - verander het getal 128 in de gewenste waarde tussen 0 en 255.