Paso 2: Escriba su bosquejo (código)
Busqué un esquema existente de esta canción en particular, pero no pude encontrar uno. Entonces pensé que tal vez podría editar un esquema existente de un tono diferente, pero todos los que encontré eran bastante complejo-muchos con más de un centenar de líneas de código (sin mencionar un circuito mucho más complejo). Con tiempo limitado y experiencia, quería escribir un código tan simple y corta como sea posible, así que opté por poner todas las notas en sucesión en una sola línea de código. El único problema con era cada tono se puede jugar con el mismo valor (duración) y no podía incluir silencios (pausas). Para combatir este problema utilicé 4/4 vez y había asignado a un único latido, o nota del trimestre, para cada tono. Así que si una nota especial en la canción debía ser sostenido hacia fuera por 3 golpes (o una nota media puntos) simplemente entré en esa nota 3 veces. Por ejemplo si C media (262) necesita ser sostenido hacia fuera por 2 golpes, entraron dos veces. El piezo no separa idénticas notas en sucesión para que esto hizo una nota medio!) Para tener en cuenta restos I extendió la longitud de la nota anterior para llenar el espacio. Yo realmente primeras restos entrados como un 0, suponiendo que 0 Hz sería igual sin sonido, pero en cambio hizo un zumbido horrible! Está bien, así que aquí está el código!
1 int speakerPin = 12;
2
3 int numTones = 62;
[de] tonos int de 4 = {587, 784, 880, 988, 988, 988, 988, 988, 988, 988, 932, 988, 784, 784, 784, 784, 784, 784, 784, 880, 988, 1047, 1047, 1319 1319, 1319, 1319, 1175, 1047, 988 988 988, 784, 880, 988, 1047, 1047, 1319 1319, 1319, 1319, 1175, 1047, 988 988, 784, 784, 784, 784, 880, 988, 988, 988, 1047, 880, 880, 880, 988 784 784 784, 784};
5 / / eres mi sol
6
7 void setup()
{8}
9 para (int i = 0; i < numTones; i ++)
{10}
tono 11 (speakerPin, tones[i]);
12 delay(290);
13}
14 noTone(speakerPin);
15}
16
17 void loop()
{18}
19}
Usted puede copiar y pegar, imprimir y entrar el código usted mismo, agarrar de Codebender o probarlo aquí en este instructable, ver más abajo! ¿Quieres una canción diferente? Sólo reemplazar el código numérico en la línea 4 con su cuenta, editar el número total de tonos en la línea 3 y ajustar el tempo con el valor de retraso en la línea 12.