Arduino Jazz Improviser: 4 passaggi (con immagini)
Arduino Jazz Improviser: 4 passaggi (con immagini)
Anonim
Arduino Jazz Improvvisatore
Arduino Jazz Improvvisatore

Questo disegno non riproduce una "canzone". Invece, usa una scala blues per creare la propria musica mentre suona, simile a un vero musicista jazz. Ogni volta che lo accendi suonerà qualcosa di diverso; ma puoi ancora controllare il tempo, il tono e il volume con i quadranti. Ascolta un esempio di riproduzione qui sotto:

Passaggio 1: cos'è il jazz?

Image
Image

Se vuoi la definizione ufficiale, puoi guardare questi link, ma penso che il modo migliore per descriverla sia solo mostrarti come suona.

  • https://en.wikipedia.org/wiki/Jazz
  • https://en.wikipedia.org/wiki/Jazz_improvvisazione

Passaggio 2: costruisci il circuito

Costruisci il circuito
Costruisci il circuito
Costruisci il circuito
Costruisci il circuito

Ho costruito un supporto per il mio altoparlante con cannucce e nastro adesivo, ma è facoltativo. Segui lo schema per costruire il resto di questo disegno.

Passaggio 3: carica il codice

Questo codice segue un algoritmo pseudo-casuale per suonare all'infinito le note della scala blues Bb in un ritmo sincopato jazz.

Usa questo codice nell'IDE di Arduino:

int nota = 1;

int nota2 = 1; void setup() { pinMode(3, OUTPUT); } void loop() { int tonecontrol = map(analogRead(A0), 0, 1023, 1, 4); int speedcontrol = map(analogRead(A1), 0, 1023, 1, 20); int tonecontrol2 = map(analogRead(A2), 0, 1023, 1, 4); int nota di gioco; int switchval = random(1, 5); switch (switchval) { caso 1: nota = nota; rottura; caso 2: nota = nota + 1; rottura; caso 3: nota = nota - 1; rottura; caso 4: nota = nota + 2; rottura; caso 5: nota = nota - 2; rottura; } switch (nota) { case 1: playnote = 262; rottura; caso 2: nota di gioco = 294; rottura; caso 3: nota di gioco = 311; rottura; caso 4: nota di gioco = 349; rottura; caso 5: nota di gioco = 392; rottura; caso 6: nota di gioco = 440; rottura; caso 7: nota di gioco = 466; rottura; caso 8: nota di gioco = 523; rottura; default: nota = 1; rottura; } playnote = playnote * tonecontrol; int nota2; int switchval2 = random(1, 5); switch (switchval2) { caso 1: nota2 = nota2; rottura; caso 2: nota2 = nota2 + 1; rottura; caso 3: nota2 = nota2 - 1; rottura; caso 4: nota2 = nota2 + 2; rottura; caso 5: nota2 = nota2 - 2; rottura; } switch (nota2) { caso 1: playnote2 = 262; rottura; caso 2: nota2 = 294; rottura; caso 3: nota2 = 311; rottura; caso 4: nota2 = 349; rottura; caso 5: nota2 = 392; rottura; caso 6: nota2 = 440; rottura; caso 7: nota2 = 466; rottura; caso 8: nota2 = 523; rottura; default: nota2 = 1; rottura; } playnote2 = playnote2 * tonecontrol2; tone(3, nota di riproduzione, 30 * speedcontrol); ritardo (31 * controllo della velocità); if (random(1, 4) == 3) { delay(21 * speedcontrol); } else { tone(3, playnote2, 20 * speedcontrol); ritardo (21 * controllo della velocità); } }

Passaggio 4: come controllarlo

Come controllarlo
Come controllarlo

Da sinistra a destra, ogni quadrante si comporta come segue:

  • Volume
  • Tono del primo tono
  • Tempo
  • Tono del secondo tono

Gioca con loro finché non ottieni un suono che ti piace.

Consigliato: