De speaker of buzzer kan geprogrammeerd worden om op verschillende toonhoogte te piepen. Echt mooie muziek kan het niet maken, eerder leuke bliep
geluidjes die je ook wel eens in een spelletje hoort.
Met de functie CircuitPlayground.playTone(frequency, duration_ms) kun je een geluid laten horen. De functie geef je twee
argumenten mee: frequentie en tijdsduur.
De toonhoogte geef je aan met frequentie, dit wordt uitgedrukt in Herz. Hoe hoger de frequentie hoe hoger de piep zal zijn. Dan geef je nog de tijdsduur van de toon aan in milliseconden.
Hieronder een voorbeeld van een toonladder van laag naar hoog.
void loop(){
CircuitPlayground.playTone(261.6,500); // c
CircuitPlayground.playTone(293.6,500); // d
CircuitPlayground.playTone(329.6,500); // e
CircuitPlayground.playTone(349.2,500); // f
CircuitPlayground.playTone(391.9,500); // g
CircuitPlayground.playTone(440, 500); // a
CircuitPlayground.playTone(493.8,500); // b
CircuitPlayground.playTone(523.2,500); // c
}
Sirene
Om een soort brandalarm geluidseffect te maken moeten we de frequentie heel snel in stapjes omhoog laten gaan. Dit gaan we doen met een for() loop. In het voorbeeld
hieronder zie je dat de variabele i de waarde 440 krijgt en kleiner moet blijven dan 880 en hij gaat in stapjes van 1 omhoog: i++, dit is hetzelfde als i=i+1.