BBC micro:bit – Capire il significato di “beat” in MakeCode

In questi giorni ho risposto ad alcune domande di una collega che sta preparando lezioni sull’uso del BBC micro:bit per l’inizio del prossimo anno scolastico. Mi chiedeva chiarimenti sull’oggetto play e, in particolare, sul significato di beat, con l’obiettivo di spiegarlo in modo semplice e chiaro ai propri studenti. Poiché la questione è ricorrente anche tra i miei allievi, condivido qui la spiegazione completa.

Che cosa significa “beat”?

Nel blocco music.playTone o quando compare l’indicazione Middle C 1 beat, il termine beat indica l’unità di tempo musicale: il battito base, cioè la durata di una nota in funzione del tempo espresso in BPM (battiti per minuto).

Il micro:bit prende come riferimento il tempo corrente (default: 120 BPM).

In pratica:

  • Se il tempo è 120 BPM, 1 beat dura 500 ms (0,5 s).
  • Se il tempo è 60 BPM, 1 beat dura 1000 ms (1 s).

Da qui si deduce che:

  • play tone Middle C for 1 beat → riproduce il Do centrale per la durata di un battito.
  • 2 beats dura il doppio;
  • 1/2 beat dura la metà.

Quanto dura “Middle C 1 beat”?

La domanda tipica degli studenti è: “Quanti millisecondi dura questa nota?”

Dipende dal tempo (BPM) impostato: il micro:bit usa il tempo corrente (default: 120 BPM).

  • A 120 BPM → 1 beat = 500 ms → la nota dura mezzo secondo.
  • A 60 BPM → 1 beat = 1000 ms → la nota dura 1 secondo.
  • A 180 BPM → 1 beat ≈ 333 ms → la nota dura circa un terzo di secondo.

Possiamo adottare la seguente formula generale per dedurre il numero di ms (millisecondi) partendo dai BPM:

Per rendere più immediata la comprensione in classe, di seguito una tabella di corrispondenza e il grafico delle durate:

Durata in beat 60 BPM (1 beat = 1000 ms) 90 BPM (1 beat = 667 ms) 120 BPM (1 beat = 500 ms) 180 BPM (1 beat = 333 ms)
1 beat 1000 ms (1,0 s) 667 ms (0,67 s) 500 ms (0,5 s) 333 ms (0,33 s)
1/2 beat 500 ms 333 ms 250 ms 167 ms
1/4 beat 250 ms 167 ms 125 ms 83 ms
1/16 beat 62,5 ms 42 ms 31 ms 21 ms
2 beat 2000 ms (2 s) 1333 ms (1,33 s) 1000 ms (1 s) 667 ms (0,67 s)
4 beat 4000 ms (4 s) 2667 ms (2,67 s) 2000 ms (2 s) 1333 ms (1,33 s)

Il concetto di beat in MakeCode è un ponte naturale tra programmazione e musica: mostra come il tempo (BPM) determini la durata delle note e come la matematica entri nei calcoli temporali. È un chiaro esempio di integrazione STEAM. Grazie alla collega per lo spunto: la sua domanda mi ha dato l’occasione di chiarire ancora meglio l’uso dei blocchi “Music”.

Buon Coding a tutti 🙂

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Questo sito utilizza Akismet per ridurre lo spam. Scopri come vengono elaborati i dati derivati dai commenti.