Sommario:
- Passaggio 1: parti di cui avrai bisogno
- Passaggio 2: costruisci il circuito
- Passaggio 3: il codice
- Passaggio 4: la fine
Video: Arduino Noise Machine: 4 passaggi
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 10:00
Ho trovato un minuscolo altoparlante mentre smontavo un vecchio P. C. per il riciclaggio e ho pensato di vedere come suonava usando la funzione Arduino Tone(). Ho iniziato con un potenziometro da 10Ω per controllare il tono e ho iniziato a fare un po' di rumore. La funzione Tone() utilizza un semplice pattern di impulsi. Attiva e disattiva il suono a frequenze diverse in uno schema a onde quadre. Avevo altri due potenziometri in giro, quindi li ho aggiunti e li ho usati per controllare la durata del tono. Uno per controllare la lunghezza del tono e uno per controllare lo spazio silenzioso tra i toni. Fondamentalmente utilizza un altro modello di onda quadra ma a una frequenza molto più bassa. È possibile ottenere una buona varietà di rumore con questo circuito. Funziona bene anche con un cicalino piezoelettrico, ma manca della risposta dei bassi di un altoparlante.
Passaggio 1: parti di cui avrai bisogno
Arduino Uno
Breadboard e cavi jumper
1 Altoparlante piccolo o cicalino piezo
1 Interruttore a pulsante
3 10Ω Potenziometri
1 resistore da 22Ω
1 resistore da 10kΩ
Passaggio 2: costruisci il circuito
Collega la breadboard al tuo pin Arduino 5V e GND. Posiziona l'interruttore a pulsante all'estrema destra o sinistra della breadboard e collegalo a 5 V e a terra usando il resistore da 10 k. Collega un filo dal circuito dell'interruttore al pin 2 del tuo Arduino.
Dall'altro lato della breadboard, imposta il circuito altoparlante/piezo su 5 V e massa utilizzando il resistore da 220. Questo resistore controlla la corrente controllando così il volume; puoi provare diversi resistori qui per un volume più alto o più basso.
Disporre i potenziometri al centro della breadboard, lasciando spazio sufficiente per armeggiare con le manopole. Ogni potenziometro dovrà essere collegato a 5V e terra e i pin centrali di ciascuno collegati ai pin analogici A0, A1 e A2
Passaggio 3: il codice
Un potenziometro o un potenziometro è un resistore variabile che, quando collegato a un Arduino, restituirà un valore compreso tra 0 e 1023. Useremo la funzione map() per modificare questi valori in base alle nostre esigenze. La funzione map() accetta cinque argomenti e nel nostro caso dobbiamo rimappare l'intervallo tra 220 e 2200 per produrre un suono udibile ragionevole.
La funzione è simile a questa:
map(pentola, 0, 1023, 220, 2200);
Puoi giocare con gli ultimi due valori per i toni di frequenza più alti e più bassi, fai solo attenzione a non turbare il tuo cane.
Noise_Machine.ino
/* Macchina del rumore che utilizza tre potenziometri collegati a ingressi analogici |
e un piezo o un piccolo altoparlante. Un pulsante accende il rumore, i potenziometri |
controlla il tono usando la funzione Arduino tone() e due delay |
valori che controllano la lunghezza di ogni tono e la lunghezza tra |
ogni tono. I potenziometri danno valori analogici che vengono modificati |
usando la funzione map() in intervalli più grandi o più piccoli in base alle tue esigenze |
gusti musicali. |
Questo codice è di dominio pubblico. |
Matt Thomas 2019-04-05 |
*/ |
pulsante costantePin = 2; // Perno pulsante 2 |
parlante costante = 9; // Altoparlante o piezo nel pin 9 |
int buttonState = 0; // Variabili per il pulsante |
int potZero; // e potenziometri |
int potOne; |
int potDue; |
voidsetup() { |
pinMode(9, USCITA); // Pin di uscita altoparlante/piezo |
} |
voidloop() { |
buttonState = digitalRead(buttonPin); // Legge lo stato del pulsante |
potZero = analogRead(A0); //Variabili per la lettura dei valori analogici |
potUno = analogRead(A1); |
potDue = analogRead(A2); |
int htz = map(potZero, 0, 1023, 0, 8800); // Mappa le letture analogiche in |
int high = map(potOne, 0, 1023, 0, 100); // nuovi intervalli di numeri e crea |
int low = map(potTwo, 0, 1023, 0, 100); // nuove variabili |
if (buttonState == HIGH) { // Se il pulsante viene premuto… |
tono (altoparlante, htz); // Suono acceso |
ritardo (alto); // Lunghezza del tono |
noTone(altoparlante); // Audio Disattivato |
ritardo (basso); // Tempo fino al tono successivo |
} altro { |
noTone(altoparlante); // Nessun tono se il pulsante viene rilasciato |
} |
} |
visualizza rawNoise_Machine.ino ospitato con ❤ da GitHub
Passaggio 4: la fine
Quindi questo è tutto. Gioca con i valori nel codice, aggiungi più pentole/pulsanti e vedi cos'altro puoi controllare. Fatemi sapere se ho commesso errori e spero che la musica vi piaccia.
Consigliato:
Drum Machine semplice con Arduino Uno e Mozzi: 4 passaggi
Semplice Drum Machine con Arduino Uno e Mozzi: Vivere in Argentina significa che la posta internazionale verrà rubata o rimarrà bloccata in dogana. Aggiungi la quarantena del Coronavirus e il tuo prossimo progetto sarà limitato a una vecchia scheda Arduino Uno. Buone notizie? Come dice il grande poeta dei Rolling Stones “Time is on m
Noise~Rompler / Cicala ~: 6 passaggi
Rumore~Rompler / Cicala ~:
Slot machine tascabile Arduino: 4 passaggi
Arduino Pocket Slot Machine: Sarò onesto in anticipo e dirò che questo progetto non sarebbe mai successo se non che mi sto riparando sul posto durante l'epidemia di coronavirus, mi è capitato di vedere che Instructables sta organizzando un concorso "Striscia LED" e Ho delle strisce LED in un
The Task Giving Arduino Machine (alias: Crea il tuo Bop-it!): 5 passaggi
The Task Giving Arduino Machine (aka: Making Your Own Bop-it!): Per lo studio che sto seguendo attualmente ho avuto l'incarico di realizzare qualcosa con un Arduino. Mi ero procurato un assemblaggio standard di materiali dalla scuola e ho pensato a qualcosa che avrebbe funzionato intorno a quelli, con un tappetino esterno minimo
Oceania Midi Controller (per Make Noise 0-Coast e altri sintetizzatori): 6 passaggi (con immagini)
Oceania Midi Controller (per Make Noise 0-Coast e altri sintetizzatori): negli ultimi anni, un certo numero di produttori di sintetizzatori hanno rilasciato "desktop semi-modulare" strumenti. In genere assumono lo stesso fattore di forma del formato di sintetizzatore modulare Eurorack e la maggior parte è probabilmente intesa come un g