Skip to content

Aktywność

Metronom

Początkujący | MakeCode, Python | Dźwięk, Przyciski, Wyświetlacz LED | Iteracja, Tempo

Krok 1: Wykonaj to

Co to jest?

Zakoduj swój własny elektroniczny metronom, tworzącego regularne uderzenia, które możesz spowolnić i przyspieszyć podczas ćwiczenia muzyki.

Wprowadzenie

Przewodnik po kodowaniu

Czego się nauczysz

  • Jak dostosować tempo dźwięków odtwarzanych przez micro:bit
  • Jak używać przycisków wejścia i wyjścia audio do tworzenia użytecznego urządzenia elektronicznego

Jak to działa

  • Na początku programu, ustawia tempo na 100 uderzeń na minutę. Jest to standardowy sposób pomiaru tempa lub prędkości muzyki.
  • Pętla nieskończona utrzymuje micro:bit grający krótki dźwięk, a następnie odpoczywający przez jeden takt.
  • Mozesz usłyszeć dźwięk, dołączając słuchawki do pinu 0 i GND lub za pomocą wbudowanego głośnika w nowym micro:bicie.
  • Naciśnij przycisk A, aby spowolnić tempo o 5 uderzeń na minutę.
  • Naciśnij przycisk B, aby przyspieszyć tempo o 5 uderzeń na minutę.
  • Naciskając oba przyciski A i B jednocześnie, wyswiatlacz pokazuje aktualne tempo na wyświetlaczu LED.

Czego potrzebujesz

  • micro:bit
  • MakeCode lub edytor Pythona
  • pakiet baterii (opcjonalne)

Krok 2: Zakoduj to

1from microbit import *
2import music
3tempo = 100
4
5while True:
6    music.set_tempo(bpm=tempo)
7    music.play(['C4:1', 'r:3']) # play C for 1 tick, rest for 3 ticks
8    if button_a.was_pressed():
9        tempo -= 5
10    if button_b.was_pressed():
11        tempo += 5  
12    

Krok 3: Ulepsz to

  • Możesz zauważyć, że micro:bit odtwarza rytm nieco wolniej niż elektroniczny instrument z tym samym ustawieniem BPM - ponieważ każda pętla zajmuje jeden i jedną szesnastą uderzenia, zamiast tylko jednego.
  • Możesz spróbować zwiększyć dokładność poprzez zsumowanie ułamków uderzenia, aby uzyskać jedno pełne uderzenie: 1/2 + 1/4 + 1/8 + 1/16 daje 15/16, aby dodać 1/16 uderzenia, dla którego grasz.
  • Bloki 'na zawsze' również dodają trochę opóźnienia, więc użycie pętli 'dopóki prawda' w środku przyspieszy Twój kod i uczyni go bardziej dokładnym.
  • Film o kodzie na górze tej strony pokazuje, jak to zrobić.
Siatka pokazująca ułamki uderzeń dodawane do piętnastu szesnastych.