Skip to content

Активност

Метроном

Почетник | MakeCode, Python | Звук, Лед екран, Тастери | Итерација (понављање), Темпо

Корак 1: Уради

Шта је ово?

Испрограмирајте свој електронски метроном који производи редовне тактове које можете успорити и убрзати док вежбате свирање.

Увод

Водич за програмирање

Шта сте научили

  • Како прилагодити темпо музичких нота изведених помоћу micro:bit уређаја
  • Како се користе тастери за унос и аудио излаз како бисте направили корисне електронске уређаје

Како то ради


  • На почетку програма, темпо је постављен на 100 bpm - откуцаја у минуту. Ово је стандардни начин мерења темпа, или брзине, музике.
  • Коришћењем бесконачне петље на micro:bit-у се репродукује кратка нота, а затим се прави пауза од једног такта.
  • Звук можете да чујете тако што повежете слушалице на пинове 0 и GND или на уграђеном звучнику новог micro:bit-а.
  • Притисните тастер А како бисте успорили темпо за 5 bpm.
  • Притисните тастер Б како бисте убрзали темпо за 5 bpm.
  • Истовременим притиском на тастере А и Б приказује се тренутни темпо на ЛЕД екрану.

Шта вам је потребно

  • micro:bit
  • MakeCode или Python уређивач
  • батерије (опционално)

Корак 2: Програмирај

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    

Корак 3: Унапреди

  • Можда ћете приметити да се ритам репредукује нешто спорије од електронског инструмента са истим подешавањем BPM - то је зато што свака петља узима један и једну шеснаестину такта, уместо само један цео такт.
  • Можете покушати и да га учините прецизнијим додавањем делова такта да бисте направили један цео такт: 1/2 + 1/4 + 1/8 + 1/16 јесте 15/16 који ће се додати на 1/16 такта за који репродукујете тон.
  • Блок 'Бесконачно' ('Forever') додаје мало кашњења, тако да ће коришћење ’све док је тачно’ (’while true’ ) петље убрзати ваш кôд и учинити га тачнијим.
  • Видео-запис на врху ове странице показује како се то ради.
Мрежа која приказује делове тактова сабирајући их до 15/16