La hauteur avec un bouton
Fait partie de la section Sorties du Journey Arduino de Coddy. Leçon 12 sur 24.
Un potentiomètre peut faire jouer le buzzer comme un instrument. Le principe est le même que pour le variateur : lire la valeur du potentiomètre, convertir la lecture, l’utiliser.
Cette fois, la plage cible correspond à une fréquence. 200 Hz produit un bourdonnement grave et 2000 Hz un sifflement aigu, donc :
int reading = analogRead(A0);
int pitch = map(reading, 0, 1023, 200, 2000);
tone(8, pitch);map() n’a pas besoin que la nouvelle plage commence à 0 : 0 devient 200, 1023 devient 2000, et le milieu du potentiomètre donne une valeur proche de 1100.
Rappeler tone() avec une nouvelle fréquence change immédiatement la note, de sorte que la hauteur du son suit le potentiomètre lorsque tu le tournes. Un court delay(10) évite que le sketch redémarre le son des milliers de fois par seconde.
Défi
FacileLe potentiomètre est connecté à A0 et le buzzer à la broche 8. Faites en sorte que le potentiomètre définisse la hauteur du son :
- lisez la valeur du potentiomètre
- convertissez cette valeur en une fréquence comprise entre 200 et 2000 Hz avec
map() - jouez cette fréquence avec
tone(), puis attendez 10 ms
Cliquez sur Run et tournez le potentiomètre, puis cliquez sur Check.
Essayez vous-même
const int knobPin = A0;
const int buzzerPin = 8;
void setup() {
}
void loop() {
// lis la valeur du bouton, convertis-la en une fréquence de 200..2000 Hz et joue le son correspondant
}
Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.
Toutes les leçons de Sorties
3Son
Jouer un son sur un buzzerBips et silenceLa hauteur avec un boutonDes notes dans un tableauUne mélodie à partir de deux tableauxEntraînez-vous par vous-même : Playground Arduino