Sommario:
- Passaggio 1: Passaggio 1: Costruire il circuito
- Passaggio 2: Passaggio 2: Codice e spiegazione
- Passaggio 3: Passaggio 3: dimostrazione video
Video: Pianoforte Arduino con interruttori a pulsante: 3 passaggi
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:02
Creato da: Haotian Ye
Panoramica
Questa è una tastiera con otto interruttori a pulsante che ti permette di suonare un'ottava (Do Re Mi Fa So La Si Do) e con questa un'ottava puoi provare a suonare alcune canzoni che ti piacciono. Per questo progetto ci sono alcune importanti conoscenze che devi conoscere prima di iniziare.
Innanzitutto, abbiamo bisogno di conoscere le frequenze delle note di base di un pianoforte.
Le frequenze sono elencate di seguito:
Fare – 261Hz
Ri – 294Hz
Mi – 329Hz
Fa – 349Hz
Quindi – 392Hz
La – 440Hz
Si – 493Hz
Fare – 523Hz
In secondo luogo, ti mostrerò come costruire il circuito utilizzando le parti che possono essere acquistate dal negozio elettronico di Lee. Infine, presenterò e spiegherò il codice che deve essere caricato sulla scheda Arduino.
Parti di cui avrai bisogno:
Arduino Uno R3 (ID prodotto: 10997)
Cavo USB da A a B M/M (ID prodotto: 29861)
Resistenza 10K * 8 (ID prodotto: 91516)
Diversi colori dell'interruttore di virata * 8 (ID prodotto: 3124, 31242, 31243, 31245, 31246)
Mini altoparlante (ID prodotto: 41680)
Tagliere (ID prodotto: 106861)
Cavi per ponticelli (ID prodotto: 21801)
Passaggio 1: Passaggio 1: Costruire il circuito
Innanzitutto, inserisci tutti gli interruttori a pulsante e il mini altoparlante sulla breadboard uno per uno e abbinali su una riga. Quindi collegare i pin di ciascun interruttore a pulsante a terra. In secondo luogo, collegare resistori da 10k tra l'alimentazione positiva e gli altri pin di ciascun interruttore a pulsante. E collega questa colonna ai pin 2-9 sulla scheda Arduino. Inoltre, collega la terra al pin di terra e l'alimentazione positiva al pin 3.3v su Arduino. Infine, collega il mini altoparlante al pin 10 di Arduino.
Passaggio 2: Passaggio 2: Codice e spiegazione
Il codice qui sotto è quello che ho scritto
const int nero = 2;
const int bianco = 3;
const int rosso = 4;
const int verde = 5;
const int blu = 6;
const int nero2 = 7;
const int verde2 = 8;
const int rosso2 = 9;
const int speaker = 10;// Collega tutti gli interruttori a pulsante e l'altoparlante con i pin di segnale di arduino
int frequency = {262, 294, 330, 349, 392, 440, 493, 523};// l'array contiene tutte le frequenze di un'ottava
void setup() {
// inserisci qui il tuo codice di installazione, da eseguire una volta:
pinMode (nero, INGRESSO);
pinMode (bianco, INGRESSO);
pinMode (rosso, INGRESSO);
pinMode (verde, INGRESSO);
pinMode (blu, INGRESSO);
pinMode (nero2, INGRESSO);
pinMode (verde2, INGRESSO);
pinMode (rosso2, INGRESSO);
pinMode (altoparlante, OUTPUT);
tono (altoparlante, 2000);
Inizio seriale (9600);
}
ciclo vuoto() {
// inserisci qui il tuo codice principale, da eseguire ripetutamente:
if (digitalRead(nero) == LOW)// quando si preme l'interruttore a pulsante "DO"
{tono(altoparlante, frequenza[0], 50);
ritardo (50);
noTone (altoparlante);}
else if (digitalRead(bianco) == LOW)// quando si preme l'interruttore a pulsante "RE"
{tono(altoparlante, frequenza[1], 50);
ritardo (50);
noTone (altoparlante);}
else if (digitalRead(red) == LOW)// quando si preme l'interruttore a pulsante "MI"
{tono(altoparlante, frequenza[2], 50);
ritardo (50);
noTone (altoparlante);}
else if (digitalRead(verde) == LOW)// quando si preme l'interruttore a pulsante "FA"
{tono(altoparlante, frequenza[3], 50);
ritardo (50);
noTone (altoparlante);}
else if (digitalRead(blu) == LOW)// quando si preme l'interruttore a pulsante "SO"
{tono(altoparlante, frequenza[4], 50);
ritardo (50);
noTone (altoparlante);}
else if (digitalRead(black2) == LOW)// quando si preme l'interruttore a pulsante "LA"
{tono(altoparlante, frequenza[5], 50);
ritardo (50);
noTone (altoparlante);}
else if (digitalRead(green2) == LOW)// quando si preme l'interruttore a pulsante "SI"
{tono(altoparlante, frequenza[6], 50);
ritardo (50);
noTone (altoparlante);}
else if (digitalRead(red2) == LOW)// quando si preme l'interruttore a pulsante "DO"
{tono(altoparlante, frequenza[7], 50);
ritardo (50);
noTone (altoparlante);}
else// quando non premi niente
noTone (altoparlante);
}
Innanzitutto, dobbiamo dichiarare tutti gli interruttori a pulsante e l'altoparlante come pin da 2 a 10 su Arduino. Ogni interruttore rappresenta per una nota. Quindi, usa un array per inserire tutte le frequenze all'interno. Successivamente, l'istruzione If e else è ciò che uso per far sapere ad Arduino quale interruttore a pulsante premo.
Infine, collega la tua scheda Arduino al tuo computer o laptop con il cavo USB da A a B. Prima di caricare il codice, devi comunque scaricare il software Arduino ed eseguire alcune impostazioni predefinite. Seleziona Strumenti -> Scheda -> Arduino/Genuino Uno; Quindi dobbiamo selezionare la porta di comunicazione collegata alla scheda Arduino. Seleziona Strumenti -> Porta, quindi il nome della porta con l'etichetta "(Arduino/Genuino Uno)." Quindi, puoi caricare il codice sulla scheda Arduino.
Consigliato:
Impara i tasti del pianoforte con Makey Makey: 6 passaggi (con immagini)
Impara i tasti del pianoforte con Makey Makey: l'ho costruito per una notte di Instuctables alla Maker Station. Questo gioco ti aiuta a imparare dove sono le note sulla tastiera di un pianoforte attraverso il gioco. Il nostro gruppo è stato invitato a far parte di un Maker Station Pavilion a una fiera dell'istruzione. Parlando con educa
Microcontrollore AVR. Attiva/disattiva i LED utilizzando un interruttore a pulsante. Pulsante antirimbalzo: 4 passaggi
Microcontrollore AVR. Attiva/disattiva i LED utilizzando un interruttore a pulsante. Push Button Debouncing.: In questa sezione, impareremo come creare un codice C del programma per ATMega328PU per alternare lo stato dei tre LED in base all'input da un interruttore a pulsante. Inoltre, abbiamo esplorato una soluzione al problema di "Switch Bounce". Come di consueto, vi
Più di 100 interruttori in un singolo pin di Arduino: 6 passaggi (con immagini)
Oltre 100 interruttori in un singolo pin di Arduino: introduzione Hai esaurito i pin di input? Non preoccuparti, ecco una soluzione senza registri a scorrimento. In questo video, impareremo a collegare più di 100 switch a un singolo pin di Arduino
IKEA Power Charging Box con interruttori individuali: 6 passaggi (con immagini)
Scatola di ricarica elettrica IKEA con interruttori individuali: l'altro giorno ho visto questo istruttivo su come realizzare una semplice centrale elettrica usando una scatola IKEA: la scatola di ricarica IKEA --- niente più problemi di cavi! Ne avevo assolutamente bisogno qualcosa di simile, quindi sono andato a comprare una di quelle scatole all'IKEA, ma mi è rimasta fuori
Controllo di un servomotore RC con un Arduino e due interruttori momentanei: 4 passaggi
Controllo di un servomotore RC con un Arduino e due interruttori momentanei: il nome dice tutto. Controllo di un servomotore per auto RC con un Arduino e alcuni resistori, ponticelli e due interruttori tattili. L'ho fatto il secondo giorno in cui ho ricevuto il mio Arduino, quindi sono abbastanza orgoglioso di me stesso