Paso 5: Programa de Arduino de la parte inferior
int speakerPin = 12; int longitud = 15; el número de notas {} void playTone (int tono, duración de int) {} void playNote (char nota, int duración) reproducir el tono correspondiente a nombre de la nota void setup() {}
int buttonPin = A0;
int buttonState = 0;
int outputValue = 0;
Notas de Char [] = "gcgcgcg"; un espacio representa un resto
beats de int [] = {1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 2, 4};
tempo de int = 300;
para (largo i = 0; i < duración * 1000L; i += tono * 2) {}
digitalWrite (speakerPin, HIGH);
delayMicroseconds(tone);
digitalWrite (speakerPin, bajo);
delayMicroseconds(tone);
}
}
char nombre [] = {'c','d ', 'e', 'f', 'g', 'a', 'b', 'C'};
tonos de int [] = {1915, 1700, 1519, 1432, 1275, 1136, 1014, 956};
para (int i = 0; i < 8; i ++) {}
Si (nombres [i] == Nota) {}
playTone (tonos [i], duración);
}
}
}
pinMode (speakerPin, salida);
pinMode (buttonPin, entrada);
Serial.Begin(9600);
}
void loop() {}
{while(1)}
buttonState = analogRead(buttonPin);
outputValue = mapa (buttonState, 0, 1023, 0, 500);
if(outputValue<100) {}
para (int i = 0; i < longitud; i ++) {}
Si (notas [i] == ' ') {}
retardo (golpes [i] * tempo); resto
} else {}
playNote (notas [i], golpes [i] * tempo);
}
pausa entre las notas
Delay(tempo / 2);
}
Serial.println(outputValue); imprimir potVAL en la ventana de arduino serial);
}
if(outputValue>120)
{
digitalWrite(speakerPin,LOW);
Serial.println(outputValue);
}
}
}
Una vez hecho esta carga de código, verá que cuando la espuma se pulsa con cierta presión en el lado de la inferior, el altavoz debe comenzar dando el sonido de la sirena. Cuando la presión es realeased, el orador no debe salida cualquier sirena adicional. Su parte inferior al final de este proceso deberá verse como en figura \ref{bottomdone}. Añadí unas tiras largas de tela para el borde del outter (por costura) para dar más de un vientre bailar mira a la tela. (Esta imagen muestra la parte inferior todavía conectada a un Arduino Uno, pero si usas un Lilypad, es muy fácil de coser el Lilypad en el interior de la tela y no será visible desde el exterior.
Tener diversión con esto y buena suerte!