Electrónica y música: el piano Arduino
La función tone() de Arduino genera señales cuadradas a frecuencias específicas que el buzzer piezoeléctrico pasivo convierte en sonido. Cada nota musical tiene una frecuencia fija: Do (C4) = 262 Hz, Re (D4) = 294 Hz, Mi (E4) = 330 Hz, etc. Con 8 botones y un buzzer, tienes un piano de una octava completamente funcional.
El buzzer piezoeléctrico pasivo y los botones pulsadores están en Especificar.cl.
Componentes del piano
- Arduino Uno
- 8 botones pulsadores de 12mm
- 8 resistencias de 10kΩ (pull-down)
- Buzzer piezoeléctrico PASIVO (no activo; el activo solo hace un tono fijo)
- Resistencia de 100Ω en serie con el buzzer para limitar corriente
- LEDs (opcionales) que se encienden con cada nota
La función tone() de Arduino
tone(pin, frecuencia) genera la nota en el pin especificado. tone(pin, frecuencia, duración) la detiene automáticamente después de la duración en milisegundos. noTone(pin) la detiene manualmente. Define las frecuencias de las 8 notas en un array: int notas[] = {262, 294, 330, 349, 392, 440, 494, 523}. Cuando se presiona el botón i, ejecuta tone(BUZZER_PIN, notas[i]).
Melodías pregrabadas
Guarda melodías completas en arrays de pares {nota, duración}: la escala ascendente, "Cumpleaños Feliz", "Oda a la Alegría". Una función playMelody() recorre el array tocando cada nota con su duración. Este proyecto es perfecto para niños, regalar como juguete educativo y aprender arrays y funciones en Arduino.