Indholdsfortegnelse:

Arduino Jazz Improviser: 4 trin (med billeder)
Arduino Jazz Improviser: 4 trin (med billeder)

Video: Arduino Jazz Improviser: 4 trin (med billeder)

Video: Arduino Jazz Improviser: 4 trin (med billeder)
Video: Форрест Хауи Макдональд встречает Led Zeppelin 2024, November
Anonim
Arduino Jazz Improviser
Arduino Jazz Improviser

Dette design spiller ikke en "sang". I stedet bruger den en blues -skala til at skabe sin egen musik, mens den spiller - svarende til en rigtig jazzmusiker. Hver gang du tænder den, spiller den noget anderledes; men du kan stadig styre tempo, tonehøjde og lydstyrke med skiverne. Hør et eksempel på, at det spiller herunder:

Trin 1: Hvad er jazz?

Image
Image

Hvis du vil have den officielle definition, kan du se på disse links, men jeg tror, at den bedste måde at beskrive det på er bare at vise dig, hvordan det lyder.

  • https://da.wikipedia.org/wiki/Jazz
  • https://da.wikipedia.org/wiki/Jazz_improvisation

Trin 2: Byg kredsløbet

Byg kredsløbet
Byg kredsløbet
Byg kredsløbet
Byg kredsløbet

Jeg byggede et stativ til min højttaler ud af sugerør og tape, men det er valgfrit. Følg diagrammet for at bygge resten af dette design.

Trin 3: Upload koden

Denne kode følger en pseudo-tilfældig algoritme til uendeligt at spille tonerne i Bb blues-skalaen i en jazzet synkoperet rytme.

Brug denne kode i Arduino IDE:

int note = 1;

int note2 = 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 playnote; int switchval = tilfældig (1, 5); switch (switchval) {case 1: note = note; pause; case 2: note = note + 1; pause; sag 3: note = note - 1; pause; sag 4: note = note + 2; pause; sag 5: note = note - 2; pause; } switch (note) {case 1: playnote = 262; pause; case 2: playnote = 294; pause; case 3: playnote = 311; pause; sag 4: playnote = 349; pause; sag 5: playnote = 392; pause; sag 6: playnote = 440; pause; sag 7: playnote = 466; pause; sag 8: playnote = 523; pause; standard: note = 1; pause; } playnote = playnote * tonecontrol; int playnote2; int switchval2 = tilfældig (1, 5); switch (switchval2) {case 1: note2 = note2; pause; case 2: note2 = note2 + 1; pause; sag 3: note2 = note2 - 1; pause; sag 4: note2 = note2 + 2; pause; sag 5: note2 = note2 - 2; pause; } switch (note2) {case 1: playnote2 = 262; pause; case 2: playnote2 = 294; pause; sag 3: playnote2 = 311; pause; sag 4: playnote2 = 349; pause; sag 5: playnote2 = 392; pause; sag 6: playnote2 = 440; pause; sag 7: playnote2 = 466; pause; sag 8: playnote2 = 523; pause; standard: note2 = 1; pause; } playnote2 = playnote2 * tonecontrol2; tone (3, afspilningsnote, 30 * hastighedskontrol); forsinkelse (31 * hastighedskontrol); hvis (tilfældig (1, 4) == 3) {forsinkelse (21 * hastighedskontrol); } ellers {tone (3, playnote2, 20 * speedcontrol); forsinkelse (21 * hastighedskontrol); }}

Trin 4: Sådan kontrolleres det

Sådan kontrolleres det
Sådan kontrolleres det

Fra venstre til højre gør hver urskive følgende:

  • Bind
  • 1. tones tonehøjde
  • Tempo
  • 2. tones tonehøjde

Ro med dem, indtil du får en lyd, du kan lide.

Anbefalede: