En este caso lo he hecho con una tarjeta 1638:
La programación es simple, lo primero que hay que hacer siempre que se quiera trabajar con la tarjeta 1638 es incluir la librería:
#include <TM1638.h>
e indicarle que patillas de nuestro arduino vamos a conectar con la tarjeta, sin olvidar de llevar gnd y vcc:
TM1638 module (8, 9, 7);
7=strobe.
8=entrada y salida de datos.
9=CLK.
Para hacer lo que son las notas, "debemos definirlas":
#define d1 1915
#define re 1700
Así con todas las notas, teniendo en cuenta que hay un "do mayor", por eso a uno lo definiremos como d1 y al otro como d2, el número que va detrás es la frecuencia de cada nota.
También definimos la duración de cada una de ellas, en este caso una "negra":
#define negra 400
La salida de nuestro arduino para el altavoz será la 11 (se le puede asignar cualquiera):
int altavoz = 11;
Después de declarar las notas, las entradas y sus tiempos, pasamos al programa en sí.
Si se acciona el pulsador "X" , (en este caso el primero):
if (module.getButtons()==0b00000001){
Tiene que sonar el "do" en la salida del altavoz, con la duración de una negra:
tone (altavoz, d1,negra);
En el display se tiene que escribir "do":
module.setDisplayToString ("do",0,0);
Y cuando pasen 200 ms se borre:
delay (200);
module.clearDisplay();
}
module.clearDisplay();
}
Habrá que hacer lo mismo con las demás notas:
Y así es como se hace un órgano (teclado) musical con Arduino y una tarjeta 1638.
No hay comentarios:
Publicar un comentario