Menu
CoddyTech

Notas en un arreglo

Parte de la sección Salidas del Journey de Arduino de Coddy. Lección 13 de 24.

Una melodía es una lista de notas. Un arreglo guarda una lista de valores bajo un mismo nombre:

int notes[] = {262, 294, 330, 349};  // C, D, E, F

Cada valor tiene una posición llamada índice, y se empieza a contar desde 0: notes[0] es 262, notes[1] es 294 y el último, notes[3], es 349. No existe notes[4]: leerlo devuelve lo que haya en la memoria después del arreglo.

El índice puede ser una variable. Guarda uno, reproduce la nota a la que apunta y después avánzalo:

int i = 0;

void loop() {
  tone(8, notes[i]);
  delay(400);
  i = i + 1;
  if (i == 4) {
    i = 0;
  }
}

Cada vez que se ejecuta loop(), suena la siguiente nota. Después de la última, el índice vuelve a 0 y la melodía empieza de nuevo.

challenge icon

Desafío

Fácil

Reproduce las notas C, D, E y F una tras otra en el pin 8, durante 400 ms cada una, una y otra vez:

  • guarda las cuatro frecuencias en un arreglo: 262, 294, 330, 349
  • usa una variable de índice para reproducir la siguiente cada vez que se ejecute loop()
  • después de la última nota, vuelve a la primera

Presiona Run y después Check.

Pruébalo tú mismo

const int buzzerPin = 8;
// crea aquí el array notes y la variable index

void setup() {
}

void loop() {
  // reproduce la nota en la posición indicada por index, espera 400 ms y pasa a la siguiente
}
quiz iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

Todas las lecciones de Salidas

Practica por tu cuenta: Playground de Arduino