Melody events (#391)

* support for custom playTone

* added music.onEvent, music.setPlayTone

* updated docs

* updated sample
This commit is contained in:
Peli de Halleux
2017-04-25 10:14:34 -07:00
committed by GitHub
parent 53ddd4485d
commit 54ae7a4fda
7 changed files with 178 additions and 13 deletions

View File

@ -0,0 +1,38 @@
# Set Play Tone
Replaces the implementation of the [music play tone](/reference/music/play-tone).
```sig
music.setPlayTone((freq, ms) => {})
```
### Parameters
* ``f`` the replacement function
### Example
This example send the frequency and duration over radio
and plays it on the remote @boardname@.
```typescript
input.onButtonPressed(Button.A, () => {
music.playTone(440, 120)
led.toggle(0, 0)
})
radio.onDataPacketReceived( ({ receivedNumber }) => {
const freq = receivedNumber >> 16;
const duration = receivedNumber & 0xffff;
music.playTone(freq, duration);
})
input.onButtonPressed(Button.B, () => {
music.setPlayTone((frequency: number, duration: number) => {
radio.sendNumber((frequency << 16) | (duration & 0xffff));
})
})
```
### See also
[rest](/reference/music/rest), [ring tone](/reference/music/ring-tone) , [tempo](/reference/music/tempo), [set tempo](/reference/music/set-tempo),
[change tempo by](/reference/music/change-tempo-by)