Talaan ng mga Nilalaman:

Arduino Jazz improviser: 4 na Hakbang (na may Mga Larawan)
Arduino Jazz improviser: 4 na Hakbang (na may Mga Larawan)

Video: Arduino Jazz improviser: 4 na Hakbang (na may Mga Larawan)

Video: Arduino Jazz improviser: 4 na Hakbang (na may Mga Larawan)
Video: 10 STEPS TO IMPROVISE JAZZ 2024, Nobyembre
Anonim
Arduino Jazz improviser
Arduino Jazz improviser

Ang disenyo na ito ay hindi nagpe-play ng isang "kanta." Sa halip, gumagamit ito ng isang scale ng blues upang lumikha ng sarili nitong musika habang tumutugtog ito - katulad ng isang tunay na musikero ng jazz. Sa tuwing bubuksan mo ito ay maglalaro ng kakaiba; ngunit maaari mo pa ring makontrol ang tempo, pitch, at volume sa mga pagdayal. Pakinggan ang isang halimbawa nito sa paglalaro sa ibaba:

Hakbang 1: Ano ang Jazz?

Image
Image

Kung nais mo ang opisyal na kahulugan, maaari mong tingnan ang mga link na ito, ngunit sa palagay ko ang pinakamahusay na paraan upang ilarawan ito ay upang maipakita sa iyo kung ano ang tunog nito.

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

Hakbang 2: Buuin ang Circuit

Buuin ang Circuit
Buuin ang Circuit
Buuin ang Circuit
Buuin ang Circuit

Bumuo ako ng isang paninindigan para sa aking tagapagsalita sa labas ng pag-inom ng mga straw at tape, ngunit opsyonal iyon. Sundin ang diagram upang mabuo ang natitirang disenyo na ito.

Hakbang 3: I-upload ang Code

Sinusundan ng code na ito ang isang pseudo-random algorithm upang i-play nang walang katapusan ang mga tala ng scale ng Bb blues sa isang jazzy syncopated rhythm.

Gamitin ang code na ito sa Arduino IDE:

int tala = 1;

int tala2 = 1; void setup () {pinMode (3, OUTPUT); } void loop () {int tonecontrol = map (analogRead (A0), 0, 1023, 1, 4); int speedcontrol = mapa (analogRead (A1), 0, 1023, 1, 20); int tonecontrol2 = mapa (analogRead (A2), 0, 1023, 1, 4); int playnote; int switchval = random (1, 5); switch (switchval) {case 1: note = note; pahinga; kaso 2: tala = tala + 1; pahinga; kaso 3: tala = tala - 1; pahinga; kaso 4: tala = tala + 2; pahinga; kaso 5: tala = tala - 2; pahinga; } switch (note) {case 1: playnote = 262; pahinga; kaso 2: playnote = 294; pahinga; kaso 3: playnote = 311; pahinga; kaso 4: playnote = 349; pahinga; kaso 5: playnote = 392; pahinga; kaso 6: playnote = 440; pahinga; kaso 7: playnote = 466; pahinga; case 8: playnote = 523; pahinga; default: tala = 1; pahinga; } playnote = playnote * tonecontrol; int playnote2; int switchval2 = random (1, 5); switch (switchval2) {case 1: note2 = note2; pahinga; kaso 2: note2 = note2 + 1; pahinga; kaso 3: note2 = note2 - 1; pahinga; kaso 4: note2 = note2 + 2; pahinga; kaso 5: note2 = note2 - 2; pahinga; } switch (note2) {case 1: playnote2 = 262; pahinga; kaso 2: playnote2 = 294; pahinga; kaso 3: playnote2 = 311; pahinga; kaso 4: playnote2 = 349; pahinga; kaso 5: playnote2 = 392; pahinga; kaso 6: playnote2 = 440; pahinga; kaso 7: playnote2 = 466; pahinga; kaso 8: playnote2 = 523; pahinga; default: tala2 = 1; pahinga; } playnote2 = playnote2 * tonecontrol2; tono (3, playnote, 30 * speedcontrol); pagkaantala (31 * speedcontrol); kung (random (1, 4) == 3) {pagkaantala (21 * speedcontrol); } iba pa {tone (3, playnote2, 20 * speedcontrol); pagkaantala (21 * speedcontrol); }}

Hakbang 4: Paano Ito Makokontrol

Paano Ito Makokontrol
Paano Ito Makokontrol

Mula kaliwa hanggang kanan, ang bawat pag-dial ay sumusunod:

  • Dami
  • Pitch ng 1st tone
  • Tempo
  • Pitch ng 2nd tone

Magkagulo sa kanila hanggang sa makakuha ka ng isang tunog na gusto mo.

Inirerekumendang: