Turinys:

„Arduino“džiazo improvizatorius: 4 žingsniai (su nuotraukomis)
„Arduino“džiazo improvizatorius: 4 žingsniai (su nuotraukomis)

Video: „Arduino“džiazo improvizatorius: 4 žingsniai (su nuotraukomis)

Video: „Arduino“džiazo improvizatorius: 4 žingsniai (su nuotraukomis)
Video: терменвокс 2024, Lapkritis
Anonim
„Arduino“džiazo improvizatorius
„Arduino“džiazo improvizatorius

Šis dizainas neatkuria „dainos“. Vietoj to ji naudoja bliuzo skalę, kad sukurtų savo muziką, kai ji groja - panaši į tikrą džiazo muzikantą. Kiekvieną kartą, kai jį įjungsite, jis gros kažką kito; bet vis tiek galite valdyti tempą, žingsnį ir garsumą naudodami ratukus. Išgirskite žaidimo pavyzdį žemiau:

1 žingsnis: kas yra džiazas?

Image
Image

Jei norite oficialaus apibrėžimo, galite pažvelgti į šias nuorodas, tačiau manau, kad geriausias būdas jį apibūdinti yra tiesiog parodyti jums, kaip tai skamba.

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

2 žingsnis: sukurkite grandinę

Sukurkite grandinę
Sukurkite grandinę
Sukurkite grandinę
Sukurkite grandinę

Aš pastatiau garsiakalbio stovą iš gėrimo šiaudelių ir juostos, tačiau tai neprivaloma. Sekite schemą, kad sukurtumėte likusią šio dizaino dalį.

3 veiksmas: įkelkite kodą

Šis kodas vadovaujamasi pseudo atsitiktiniu algoritmu, kad būtų galima be galo groti Bb bliuzo skalės natas džiazo sinchroniniu ritmu.

Naudokite šį kodą „Arduino IDE“:

int pastaba = 1;

int pastaba2 = 1; void setup () {pinMode (3, OUTPUT); } void loop () {int tonecontrol = žemėlapis (analogRead (A0), 0, 1023, 1, 4); int speedcontrol = žemėlapis (analogRead (A1), 0, 1023, 1, 20); int tonecontrol2 = žemėlapis (analogRead (A2), 0, 1023, 1, 4); int playnote; int switchval = atsitiktinis (1, 5); jungiklis (switchval) {atvejis 1: pastaba = pastaba; pertrauka; 2 atvejis: pastaba = pastaba + 1; pertrauka; 3 atvejis: pastaba = pastaba - 1; pertrauka; 4 atvejis: pastaba = pastaba + 2; pertrauka; 5 atvejis: pastaba = pastaba - 2; pertrauka; } jungiklis (pastaba) {atvejis 1: playnote = 262; pertrauka; 2 atvejis: playnote = 294; pertrauka; 3 atvejis: playnote = 311; pertrauka; 4 atvejis: playnote = 349; pertrauka; 5 atvejis: playnote = 392; pertrauka; 6 atvejis: playnote = 440; pertrauka; 7 atvejis: playnote = 466; pertrauka; 8 atvejis: playnote = 523; pertrauka; numatytasis: pastaba = 1; pertrauka; } playnote = playnote * tonecontrol; int playnote2; int switchval2 = atsitiktinis (1, 5); jungiklis (switchval2) {atvejis 1: note2 = note2; pertrauka; 2 atvejis: pastaba2 = pastaba2 + 1; pertrauka; 3 atvejis: pastaba2 = pastaba2 - 1; pertrauka; 4 atvejis: pastaba2 = pastaba2 + 2; pertrauka; 5 atvejis: pastaba2 = pastaba2 - 2; pertrauka; } jungiklis (2 pastaba) {1 atvejis: playnote2 = 262; pertrauka; 2 atvejis: playnote2 = 294; pertrauka; 3 atvejis: playnote2 = 311; pertrauka; 4 atvejis: playnote2 = 349; pertrauka; 5 atvejis: playnote2 = 392; pertrauka; 6 atvejis: playnote2 = 440; pertrauka; 7 atvejis: playnote2 = 466; pertrauka; 8 atvejis: playnote2 = 523; pertrauka; numatytasis: pastaba2 = 1; pertrauka; } playnote2 = playnote2 * tonecontrol2; tonas (3, playnote, 30 * greičio valdymas); uždelsimas (31 * greičio valdymas); if (atsitiktinis (1, 4) == 3) {uždelsimas (21 * greičio valdymas); } else {tone (3, playnote2, 20 * speedcontrol); uždelsimas (21 * greičio valdymas); }}

4 žingsnis: kaip jį kontroliuoti

Kaip jį suvaldyti
Kaip jį suvaldyti

Iš kairės į dešinę kiekvienas ratukas veikia taip:

  • Garsumas
  • 1 tono aukštis
  • Tempo
  • 2 tono aukštis

Kalbėkitės su jais, kol išgirsite jums patinkantį garsą.

Rekomenduojamas: