Des notes dans un tableau
Fait partie de la section Sorties du Journey Arduino de Coddy. Leçon 13 sur 24.
Une mélodie est une liste de notes. Un tableau conserve une liste de valeurs sous un seul nom :
int notes[] = {262, 294, 330, 349}; // C, D, E, FChaque valeur a une position appelée son indice, et le comptage commence à 0 : notes[0] vaut 262, notes[1] vaut 294, et la dernière, notes[3], vaut 349. Il n’y a pas de notes[4] : sa lecture renvoie ce qui se trouve par hasard dans la mémoire après le tableau.
L’indice peut être une variable. Conserve-en un, joue la note vers laquelle il pointe, puis avance-le :
int i = 0;
void loop() {
tone(8, notes[i]);
delay(400);
i = i + 1;
if (i == 4) {
i = 0;
}
}Chaque fois que loop() s’exécute, la note suivante est jouée. Après la dernière, l’indice revient à 0 et la mélodie recommence.
Défi
FacileJouez les notes C, D, E et F l’une après l’autre sur la broche 8, pendant 400 ms chacune, encore et encore :
- gardez les quatre fréquences dans un tableau : 262, 294, 330, 349
- utilisez une variable d’index pour jouer la note suivante à chaque exécution de
loop() - après la dernière note, revenez à la première
Appuyez sur Run, puis sur Check.
Essayez vous-même
const int buzzerPin = 8;
// crée le tableau notes et la variable index ici
void setup() {
}
void loop() {
// joue la note à l'index, attends 400 ms, passe à la suivante
}
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