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 
Cuando queremos que suene Arduinio, lo haremos mediante la instrucción tone. 
Línea de salida Frecuencia Duración 
tone ( , , );
tone 
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 
noTone ( );
• 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
8.sonidos

8.sonidos

  • 1.
    SONIDOS ARDUINO SUENAY PUDES HACER MÚSICA SI PROGRAMAS BIEN.
  • 2.
    • Arduino escapaz de generar frecuencias, de tal manera, que si conectas un altavoz a las salidas en las que se generaran estas frecuencias, puedes obtener sonidos.
  • 3.
    tone Cuando queremosque suene Arduinio, lo haremos mediante la instrucción tone. Línea de salida Frecuencia Duración tone ( , , );
  • 4.
    tone Tenemos laposibilidad 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 noTone ( );
  • 5.
    • Si asociamosfrecuencias 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)
  • 6.
    Si establecemos lacorrespondencia 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.
  • 7.
    • Vamos arealizar 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.
  • 8.
    Para escribir nuestroprograma , comenzamos escribiendo un comentario general sobre en que consiste el programa. • /* Este es un programa para ejecutar la escala musical*/
  • 10.
    Asociamos el altavozcon la línea 2. • int Altavoz = 2;//Asignamos el altavoz a la línea 2
  • 11.
    Definimos variables queasocien 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
  • 12.
    Ayudándonos de lasvariables, 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
  • 14.
    En el setup, definimos a el altavoz como salida. pinMode (Altavoz, OUTPUT);//Asignamos Altavoz como salida.
  • 16.
    En el voidloop, 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