Taula de continguts:

Piano Arduino amb polsadors: 3 passos
Piano Arduino amb polsadors: 3 passos

Vídeo: Piano Arduino amb polsadors: 3 passos

Vídeo: Piano Arduino amb polsadors: 3 passos
Vídeo: DIY Arduino Piano: How to Make a Piano using Buzzer and Push Buttons 🎹🎶😲 #diy #arduino #music #how 2024, De novembre
Anonim
Piano Arduino amb interruptors de botó
Piano Arduino amb interruptors de botó
Piano Arduino amb interruptors de botó
Piano Arduino amb interruptors de botó

Creat per: Haotian Ye

Visió general

Es tracta d’un tauler de piano amb vuit botons polsadors que us permet tocar una octava (Do Re Mi Fa So La Si Do) i amb aquesta octava podeu provar de tocar algunes cançons que us agradin. Per a aquest projecte hi ha alguns coneixements importants que heu de conèixer abans de començar.

En primer lloc, hem de conèixer les freqüències de les notes bàsiques d’un piano.

A continuació es detallen les freqüències:

Fer - 261Hz

Re - 294Hz

Mi - 329Hz

Fa - 349Hz

Per tant - 392Hz

La - 440Hz

Si - 493Hz

Fer - 523Hz

En segon lloc, us mostraré com construir el circuit utilitzant les peces que es poden comprar a la botiga electrònica de Lee. Finalment, presentaré i explicaré el codi que cal penjar a la placa Arduino.

Parts que necessitareu:

Arduino Uno R3 (identificació del producte: 10997)

Cable USB A a B M / M (identificador del producte: 29861)

Resistència 10K * 8 (identificació del producte: 91516)

Interruptor de diferents colors * 8 (identificador de producte: 3124, 31242, 31243, 31245, 31246)

Mini altaveu (identificació del producte: 41680)

Taula de pa (identificador del producte: 106861)

Cables de pont (identificació del producte: 21801)

Pas 1: Pas 1: Construir el circuit

Pas 1: Construir el circuit
Pas 1: Construir el circuit
Pas 1: Construir el circuit
Pas 1: Construir el circuit
Pas 1: Construir el circuit
Pas 1: Construir el circuit
Pas 1: Construir el circuit
Pas 1: Construir el circuit

Primer, introduïu tots els interruptors de botó i el mini altaveu a la taula de tauler un a un i ajusteu-los en una fila. A continuació, connecteu els pins de cada polsador a terra. En segon lloc, connecteu resistències de 10 k entre la potència positiva i els altres pins de cada commutador de polsador. Connecteu aquesta columna als pins 2-9 de la placa Arduino. A més, connecteu la terra al pin de terra i la potència positiva al pin de 3,3 V a Arduino. Finalment, connecteu el mini altaveu al pin 10 d’Arduino.

Pas 2: Pas 2: codi i explicació

El codi següent és el que vaig escriure

const int negre = 2;

const int blanc = 3;

const int red = 4;

const int verd = 5;

const int blau = 6;

const int negre2 = 7;

const int green2 = 8;

const int red2 = 9;

const int speaker = 10; // Enllaça tots els interruptors de botó i altaveu amb els pins de senyal d'arduino

int frequency = {262, 294, 330, 349, 392, 440, 493, 523}; // array conté totes les freqüències d'una octava

configuració nul·la () {

// posa aquí el teu codi de configuració per executar-lo una vegada:

pinMode (negre, INPUT);

pinMode (blanc, INPUT);

pinMode (vermell, INPUT);

pinMode (verd, INPUT);

pinMode (blau, INPUT);

pinMode (negre2, INPUT);

pinMode (green2, INPUT);

pinMode (red2, INPUT);

pinMode (altaveu, OUTPUT);

to (altaveu, 2000);

Serial.begin (9600);

}

bucle buit () {

// posa aquí el teu codi principal per executar-lo repetidament:

if (digitalRead (negre) == BAIX) // quan premeu el botó polsador "FER"

{to (altaveu, freqüència [0], 50);

retard (50);

noTone (altaveu);}

else if (digitalRead (blanc) == BAIX) // quan premeu el botó "RE"

{to (altaveu, freqüència [1], 50);

retard (50);

noTone (altaveu);}

else if (digitalRead (vermell) == BAIX) // quan premeu l'interruptor del botó "MI"

{to (altaveu, freqüència [2], 50);

retard (50);

noTone (altaveu);}

else if (digitalRead (green) == LOW) // quan premeu el botó de commutació "FA"

{to (altaveu, freqüència [3], 50);

retard (50);

noTone (altaveu);}

else if (digitalRead (blau) == BAIX) // quan premeu el botó polsador "SO"

{to (altaveu, freqüència [4], 50);

retard (50);

noTone (altaveu);}

else if (digitalRead (black2) == LOW) // quan premeu el botó polsador "LA"

{to (altaveu, freqüència [5], 50);

retard (50);

noTone (altaveu);}

else if (digitalRead (green2) == LOW) // quan premeu el botó "SI"

{to (altaveu, freqüència [6], 50);

retard (50);

noTone (altaveu);}

else if (digitalRead (red2) == LOW) // quan premeu el botó polsador "FER"

{to (altaveu, freqüència [7], 50);

retard (50);

noTone (altaveu);}

else // quan no premeu res

noTone (altaveu);

}

En primer lloc, hem de declarar tots els interruptors de botó i altaveu com a pin de 2 a 10 a Arduino. Cada commutador representa una nota. A continuació, utilitzeu una matriu per posar totes les freqüències dins. A continuació, utilitzo la declaració If and else per fer saber a Arduino quin interruptor de polsador premo.

Finalment, connecteu la vostra placa Arduino a l’ordinador o portàtil amb un cable USB A a B. Abans de penjar el codi, encara heu de descarregar el programari Arduino i fer una configuració predeterminada. Seleccioneu Eines -> Tauler -> Arduino / Genuino Uno; A continuació, hem de seleccionar el port de comunicació connectat a la placa Arduino. Seleccioneu Eines -> Port i, a continuació, el nom del port que porti l'etiqueta "(Arduino / Genuino Uno)". A continuació, podeu penjar el codi a la placa Arduino.

Recomanat: