INHOUDSOPGAWE:

Arduino Jazz Improviser: 4 stappe (met foto's)
Arduino Jazz Improviser: 4 stappe (met foto's)

Video: Arduino Jazz Improviser: 4 stappe (met foto's)

Video: Arduino Jazz Improviser: 4 stappe (met foto's)
Video: 10 STEPS TO IMPROVISE JAZZ 2024, November
Anonim
Arduino Jazz Improviser
Arduino Jazz Improviser

Hierdie ontwerp speel nie 'n 'liedjie' nie. In plaas daarvan gebruik dit 'n blues -skaal om sy eie musiek te skep terwyl dit speel - soortgelyk aan 'n regte jazz -musikant. Elke keer as u dit aanskakel, speel dit iets anders; maar u kan steeds die tempo, toonhoogte en volume beheer met die draaiknoppies. Luister hieronder na 'n voorbeeld daarvan:

Stap 1: Wat is jazz?

Image
Image

As u die amptelike definisie wil hê, kan u na hierdie skakels kyk, maar ek dink die beste manier om dit te beskryf, is net om u te wys hoe dit klink.

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

Stap 2: Bou die stroombaan

Bou die stroombaan
Bou die stroombaan
Bou die stroombaan
Bou die stroombaan

Ek het 'n staander vir my luidspreker gebou uit strooitjies en kleefband, maar dit is opsioneel. Volg die diagram om die res van hierdie ontwerp te bou.

Stap 3: Laai die kode op

Hierdie kode volg 'n pseudo-ewekansige algoritme om die note van die Bb blues-skaal oneindig in 'n jazzy syncopated ritme te speel.

Gebruik hierdie kode in die Arduino IDE:

int noot = 1;

int noot2 = 1; ongeldige opstelling () {pinMode (3, OUTPUT); } leemte lus () {int tonecontrol = map (analogRead (A0), 0, 1023, 1, 4); int speedcontrol = kaart (analogRead (A1), 0, 1023, 1, 20); int tonecontrol2 = map (analogRead (A2), 0, 1023, 1, 4); int speelnota; int switchval = random (1, 5); switch (switchval) {case 1: note = note; breek; geval 2: noot = noot + 1; breek; saak 3: noot = noot - 1; breek; saak 4: noot = noot + 2; breek; saak 5: noot = noot - 2; breek; } skakel (let wel) {case 1: playnote = 262; breek; geval 2: speelnota = 294; breek; geval 3: speelnota = 311; breek; geval 4: speelnota = 349; breek; saak 5: speelnota = 392; breek; geval 6: speelnota = 440; breek; saak 7: speelnota = 466; breek; saak 8: speelnota = 523; breek; verstek: nota = 1; breek; } speelnota = speelnoot * tonbeheer; int speelnoot2; int switchval2 = random (1, 5); switch (switchval2) {case 1: note2 = note2; breek; saak 2: noot2 = noot2 + 1; breek; saak 3: noot2 = noot2 - 1; breek; saak 4: noot2 = noot2 + 2; breek; saak 5: noot2 = noot2 - 2; breek; } skakel (noot2) {saak 1: speelnoot2 = 262; breek; geval 2: playnote2 = 294; breek; geval 3: playnote2 = 311; breek; geval 4: playnote2 = 349; breek; saak 5: playnote2 = 392; breek; geval 6: playnote2 = 440; breek; saak 7: playnote2 = 466; breek; geval 8: playnote2 = 523; breek; verstek: noot2 = 1; breek; } playnote2 = playnote2 * tonecontrol2; toon (3, speelnota, 30 * spoedbeheer); vertraging (31 * spoedbeheer); as (ewekansig (1, 4) == 3) {vertraging (21 * spoedbeheer); } anders {toon (3, speelnota2, 20 * spoedbeheer); vertraging (21 * spoedbeheer); }}

Stap 4: Hoe om dit te beheer

Hoe om dit te beheer
Hoe om dit te beheer

Van links na regs doen elke draaiknop soos volg:

  • Volume
  • Toonhoogte van die eerste toon
  • Tempo
  • 2de toon se toonhoogte

Rommel met hulle totdat jy 'n geluid kry wat jy wil.

Aanbeveel: