
El Código
//---------------------------------------------------------------
int Boton1 = 2; // Pulsador de sonido N° 1
int Boton2 = 3; // Pulsador de sonido N° 2
int Boton3 = 4; // Pulsador de sonido N° 3
int Boton4 = 5; // Pulsador de sonido N° 4
int Boton5 = 7; // Pulsador de sonido N° 5
int Boton6 = 8; // Pulsador de sonido N° 6
int Boton7 = 9; // Pulsador de sonido N° 7
//---------------------------------------------------------------
int SwitchX = 10; // Switch Cambio de tono N° 1
int SwitchY = 12; // Switch Cambio de tono N° 2
//---------------------------------------------------------------
int Tiempo = 50; // Retraso de tiempo.
//---------------------------------------------------------------
int Buzzer = 6; // Salida Buzzer
//---------------------------------------------------------------
void setup()
//---------------------------------------------------------------
{
//---------------------------------------------------------------
pinMode(Boton1, INPUT); // Declaramos el pin como entrada.
pinMode(Boton2, INPUT); // Declaramos el pin como entrada.
pinMode(Boton3, INPUT); // Declaramos el pin como entrada.
pinMode(Boton4, INPUT); // Declaramos el pin como entrada.
pinMode(Boton5, INPUT); // Declaramos el pin como entrada.
pinMode(Boton6, INPUT); // Declaramos el pin como entrada.
pinMode(Boton7, INPUT); // Declaramos el pin como entrada.
//---------------------------------------------------------------
pinMode(SwitchX, INPUT); // Declaramos el pin como entrada.
pinMode(SwitchY, INPUT); // Declaramos el pin como entrada.
//---------------------------------------------------------------
pinMode(Buzzer, OUTPUT); // Declaramos el pin como salida.
//---------------------------------------------------------------
}
//---------------------------------------------------------------
void loop()
//---------------------------------------------------------------
{
//---------------------------------------------------------------
int FrecuenciaMultiplicada1 = 1; // Multiplicador.
int FrecuenciaMultiplicada2 = 2; // Multiplicador.
int FrecuenciaMultiplicada3 = 3; // Multiplicador.
int FrecuenciaMultiplicada4 = 4; // Multiplicador.
//---------------------------------------------------------------
int ValorX = digitalRead(SwitchX) ; // Obtenemos valor del boton.
int ValorY = digitalRead(SwitchY) ; // Obtenemos valor del boton.
//---------------------------------------------------------------
int Valor7 = digitalRead(Boton1) ; // Obtenemos valor del boton.
int Valor6 = digitalRead(Boton2) ; // Obtenemos valor del boton.
int Valor5 = digitalRead(Boton3) ; // Obtenemos valor del boton.
int Valor4 = digitalRead(Boton4) ; // Obtenemos valor del boton.
int Valor3 = digitalRead(Boton5) ; // Obtenemos valor del boton.
int Valor2 = digitalRead(Boton6) ; // Obtenemos valor del boton.
int Valor1 = digitalRead(Boton7) ; // Obtenemos valor del boton.
//---------------------------------------------------------------
if (Valor1 == LOW && Valor2 == LOW && Valor3 == LOW && Valor4 == LOW && Valor5 == LOW && Valor6 == LOW && Valor7 == LOW) { // Si todos son LOW.
noTone(Buzzer); // Silencio.
}
//---------------------------------------------------------------
if (ValorX == LOW && ValorY == LOW) { // SI SwitchX y SwitchY.
//---------------------------------------------------------------
if (Valor7 == HIGH) { // SI Valor = HIGH.
tone(Buzzer, 493.88 * FrecuenciaMultiplicada1 );// Ejecuta Nota.
delay(Tiempo); // Retraso.
}
if (Valor6 == HIGH) { // SI Valor = HIGH.
tone(Buzzer, 440 * FrecuenciaMultiplicada1); // Ejecuta Nota.
delay(Tiempo); // Retraso.
}
if (Valor5 == HIGH) { // SI Valor = HIGH.
tone(Buzzer, 392 * FrecuenciaMultiplicada1 ); // Ejecuta Nota.
delay(Tiempo); // Retraso.
}
if (Valor4 == HIGH) { // SI Valor = HIGH.
tone(Buzzer, 349.23 * FrecuenciaMultiplicada1 );// Ejecuta Nota.
delay(Tiempo); // Retraso.
}
if (Valor3 == HIGH) { // SI Valor = HIGH.
tone(Buzzer, 329.63 * FrecuenciaMultiplicada1 );// Ejecuta Nota.
delay(Tiempo); // Retraso.
}
if (Valor2 == HIGH) { // SI Valor = HIGH.
tone(Buzzer, 293.66 * FrecuenciaMultiplicada1 );// Ejecuta Nota.
delay(Tiempo); // Retraso.
}
if (Valor1 == HIGH) { // SI Valor = HIGH.
tone(Buzzer, 261.63 * FrecuenciaMultiplicada1 );// Ejecuta Nota.
delay(Tiempo); // Retraso.
}
//---------------------------------------------------------------
}
if (ValorX == HIGH && ValorY == LOW) { // SI SwitchX y SwitchY.
//---------------------------------------------------------------
if (Valor7 == HIGH) { // SI Valor = HIGH.
tone(Buzzer, 493.88 * FrecuenciaMultiplicada2 );// Ejecuta Nota.
delay(Tiempo); // Retraso.
}
if (Valor6 == HIGH) { // SI Valor = HIGH.
tone(Buzzer, 440 * FrecuenciaMultiplicada2); // Ejecuta Nota.
delay(Tiempo); // Retraso.
}
if (Valor5 == HIGH) { // SI Valor = HIGH.
tone(Buzzer, 392 * FrecuenciaMultiplicada2); // Ejecuta Nota.
delay(Tiempo); // Retraso.
}
if (Valor4 == HIGH) { // SI Valor = HIGH.
tone(Buzzer, 349.23 * FrecuenciaMultiplicada2); // Ejecuta Nota.
delay(Tiempo); // Retraso.
}
if (Valor3 == HIGH) { // SI Valor = HIGH.
tone(Buzzer, 329.63 * FrecuenciaMultiplicada2); // Ejecuta Nota.
delay(Tiempo); // Retraso.
}
if (Valor2 == HIGH) { // SI Valor = HIGH.
tone(Buzzer, 293.66 * FrecuenciaMultiplicada2); // Ejecuta Nota.
delay(Tiempo); // Retraso.
}
if (Valor1 == HIGH) { // SI Valor = HIGH.
tone(Buzzer, 261.63 * FrecuenciaMultiplicada2); // Ejecuta Nota.
delay(Tiempo); // Retraso.
}
//---------------------------------------------------------------
}
if (ValorX == LOW && ValorY == HIGH) { // SI SwitchX y SwitchY.
//---------------------------------------------------------------
if (Valor7 == HIGH) { // SI Valor = HIGH.
tone(Buzzer, 493.88 * FrecuenciaMultiplicada3 );// Ejecuta Nota.
delay(Tiempo); // Retraso.
}
if (Valor6 == HIGH) { // SI Valor = HIGH.
tone(Buzzer, 440 * FrecuenciaMultiplicada3); // Ejecuta Nota.
delay(Tiempo); // Retraso.
}
if (Valor5 == HIGH) { // SI Valor = HIGH.
tone(Buzzer, 392 * FrecuenciaMultiplicada3); // Ejecuta Nota.
delay(Tiempo); // Retraso.
}
if (Valor4 == HIGH) { // SI Valor = HIGH.
tone(Buzzer, 349.23 * FrecuenciaMultiplicada3); // Ejecuta Nota.
delay(Tiempo); // Retraso.
}
if (Valor3 == HIGH) { // SI Valor = HIGH.
tone(Buzzer, 329.63 * FrecuenciaMultiplicada3); // Ejecuta Nota.
delay(Tiempo); // Retraso.
}
if (Valor2 == HIGH) { // SI Valor = HIGH.
tone(Buzzer, 293.66 * FrecuenciaMultiplicada3); // Ejecuta Nota.
delay(Tiempo); // Retraso.
}
if (Valor1 == HIGH) { // SI Valor = HIGH.
tone(Buzzer, 261.63 * FrecuenciaMultiplicada3); // Ejecuta Nota.
delay(Tiempo); // Retraso.
}
//---------------------------------------------------------------
}
if (ValorX == HIGH && ValorY == HIGH) { // SI SwitchX y SwitchY.
//---------------------------------------------------------------
if (Valor7 == HIGH) { // SI Valor = HIGH.
tone(Buzzer, 493.88 * FrecuenciaMultiplicada4 );// Ejecuta Nota.
delay(Tiempo); // Retraso.
}
if (Valor6 == HIGH) { // SI Valor = HIGH.
tone(Buzzer, 440 * FrecuenciaMultiplicada4); // Ejecuta Nota.
delay(Tiempo); // Retraso.
}
if (Valor5 == HIGH) { // SI Valor = HIGH.
tone(Buzzer, 392 * FrecuenciaMultiplicada4); // Ejecuta Nota.
delay(Tiempo); // Retraso.
}
if (Valor4 == HIGH) { // SI Valor = HIGH.
tone(Buzzer, 349.23 * FrecuenciaMultiplicada4); // Ejecuta Nota.
delay(Tiempo); // Retraso.
}
if (Valor3 == HIGH) { // SI Valor = HIGH.
tone(Buzzer, 329.63 * FrecuenciaMultiplicada4); // Ejecuta Nota.
delay(Tiempo); // Retraso.
}
if (Valor2 == HIGH) { // SI Valor = HIGH.
tone(Buzzer, 293.66 * FrecuenciaMultiplicada4); // Ejecuta Nota.
delay(Tiempo); // Retraso.
}
if (Valor1 == HIGH) { // SI Valor = HIGH.
tone(Buzzer, 261.63 * FrecuenciaMultiplicada4); // Ejecuta Nota.
delay(Tiempo); // Retraso.
}
//---------------------------------------------------------------
}
}
Piano, Versión 2
Piano Interactivo. Con 4 Modo de Tonos:​
Materiales para el proyecto:
​
Arduino Uno.
1 Buzzer.
7 Pulsadores.
2 Switch.
9 Resistencias de 10 K ohm.
Conexión:
​
​Pin 6 del Arduino al Buzzer.
​Pin 2 del Arduino al Pulsador 1.
​Pin 3 del Arduino al Pulsador 2.
​Pin 4 del Arduino al Pulsador 3.
​Pin 5 del Arduino al Pulsador 4.
​Pin 7 del Arduino al Pulsador 5.
​Pin 8 del Arduino al Pulsador 6.
​Pin 9 del Arduino al Pulsador 7.
​Pin 10 del Arduino al Switch 1.
​Pin 12 del Arduino al Switch 1.
​




















