Menu
CoddyTech

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, F

Chaque 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.

challenge icon

Défi

Facile

Jouez 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
}
quiz iconTestez-vous

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

Entraînez-vous par vous-même : Playground Arduino