SONIDOS
ARDUINO SUENA Y PUDES HACER MÚSICA SI PROGRAMAS BIEN.
• Arduino es capaz de generar frecuencias, de tal manera, que si conectas un altavoz a las salidas en las que se generaran estas frecuencias, puedes obtener sonidos.
tone
tone ( , , );
Cuando queremos que suene Arduinio, lo haremos mediante la instrucción tone.
Línea de salida Frecuencia Duración
tone
noTone ( );
Tenemos la posibilidad de no definir la duración del sonido y hacer que esté sonando hasta que no le ordene parar de sonar. Para parar de sonar existe la instrucción noTone.
Línea de salida
• Si asociamos frecuencias con notas musicales, podemos hacer música con nuestra tarjeta de Arduino y un altavoz. Podemos ver la relación entre frecuencias y notas en las siguientes páginas web:
• http://www.phys.unsw.edu.au/music/note/
(para convertir frecuencia a si correspondiente nota)
• http://www.adamsatoms.com/notes/
(para convertir una nota a su frecuencia)
Si establecemos la correspondencia entre frecuencias y notas.
• Do =261.625565 Hz.• Re = 293.664768 Hz.• Mi =329.627557 Hz.• Fa = 349.228231 Hz.• Sol =391.995436 Hz.• La = 440.000000 Hz.• Si = 493.883301 Hz.
• Vamos a realizar un programa, que ejecute la escala musical. Nombraremos la línea donde conectaremos el altavoz, como Altavoz, crearemos unas variables con el nombre de las notas, asignándolas la frecuencia que corresponda y definiremos otras variables con la duración de los sonidos, el intervalo entre notas y el intervalo entre escalas.
Para escribir nuestro programa , comenzamos escribiendo un comentario general sobre en que consiste el programa.
• /* Este es un programa para ejecutar la escala musical*/
Asociamos el altavoz con la línea 2.
• int Altavoz = 2;//Asignamos el altavoz a la línea 2
Definimos variables que asocien el nombre de la nota con su frecuencia.
• int Do =261.625565; //Asignamos la frecuencia de Do• int Re = 293.664768;//Asignamos la frecuencia de Re• int Mi =329.627557 ;//Asignamos la frecuencia de Mi• int Fa = 349.228231;//Asignamos la frecuencia de Fa• int Sol =391.995436 ;//Asignamos la frecuencia de Sol• int La = 440.000000;//Asignamos la frecuencia de La• int Si = 493.883301;//Asignamos la frecuencia de Si
Ayudándonos de las variables, definimos la duración de las notas y el intervalo entre las mismas y entre las escalas.
• int Duracion = 1000;//Asignamos la duración de la nota
• int pausa = 600;//Asignamos la pausa entre notas
• int Silencio =3000;//Asignamos el intervalo entre escalas
En el set up, definimos a el altavoz como salida.
pinMode (Altavoz, OUTPUT);//Asignamos Altavoz como salida.
En el void loop, escribo las instrucciones para ejecutar la escala musical. Con la instrucción delay, defino el intervalo entre notas.
tone (Altavoz, Do, Duracion); //Emitimos la nota DO
delay (pausa); //Intervalo entre notas
tone (Altavoz, Re, Duracion); //Emitimos la nota RE
delay (pausa); //Intervalo entre notas
tone (Altavoz, Mi, Duracion); //Emitimos la nota MI
delay (pausa); //Intervalo entre notas
tone (Altavoz, Fa, Duracion); //Emitimos la nota FA
delay (pausa); //Intervalo entre notas
tone (Altavoz, Sol, Duracion); //Emitimos la nota SOL
delay (pausa); //Intervalo entre notas
tone (Altavoz, La, Duracion); //Emitimos la nota LA
delay (pausa); //Intervalo entre notas
tone (Altavoz, Si, Duracion); //Emitimos la nota SI
delay (Silencio); //Intervalo entre escalas
Top Related