İçindekiler:

Arduino Jazz Improviser: 4 Adım (Resimlerle)
Arduino Jazz Improviser: 4 Adım (Resimlerle)

Video: Arduino Jazz Improviser: 4 Adım (Resimlerle)

Video: Arduino Jazz Improviser: 4 Adım (Resimlerle)
Video: Performance of my bespoke Arduino synthesizer, with live coding & clarinet processing in Ableton ❤️ 2024, Kasım
Anonim
Arduino Caz Doğaçlamacısı
Arduino Caz Doğaçlamacısı

Bu tasarım bir "şarkı" çalmıyor. Bunun yerine, gerçek bir caz müzisyenine benzer şekilde, çalarken kendi müziğini yaratmak için bir blues ölçeği kullanır. Her açtığınızda farklı bir şey çalacaktır; ama yine de kadranlarla tempoyu, perdeyi ve sesi kontrol edebilirsiniz. Aşağıda oynarken bir örneğini dinleyin:

Adım 1: Caz Nedir?

Image
Image

Resmi tanımı istiyorsanız, bu bağlantılara bakabilirsiniz, ancak bunu tanımlamanın en iyi yolu, kulağa nasıl geldiğini göstermek olduğunu düşünüyorum.

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

Adım 2: Devreyi Oluşturun

Devreyi İnşa Et
Devreyi İnşa Et
Devreyi İnşa Et
Devreyi İnşa Et

Konuşmacım için pipet ve banttan bir stand yaptım ama bu isteğe bağlı. Bu tasarımın geri kalanını oluşturmak için diyagramı izleyin.

3. Adım: Kodu Yükleyin

Bu kod, Bb blues ölçeğinin notalarını jazzy senkoplu bir ritimde sonsuz olarak çalmak için sözde rastgele bir algoritmayı takip eder.

Arduino IDE'de bu kodu kullanın:

int not = 1;

int not2 = 1; void setup() { pinMode(3, OUTPUT); } void loop() { int tonecontrol = map(analogRead(A0), 0, 1023, 1, 4); int hız kontrolü = map(analogRead(A1), 0, 1023, 1, 20); int tonecontrol2 = map(analogRead(A2), 0, 1023, 1, 4); int oyun notu; int geçiş değeri = rastgele(1, 5); switch (switchval) { durum 1: not = not; kırmak; durum 2: not = not + 1; kırmak; durum 3: not = not - 1; kırmak; durum 4: not = not + 2; kırmak; durum 5: not = not - 2; kırmak; } geçiş (not) { durum 1: playnote = 262; kırmak; durum 2: oyun notu = 294; kırmak; durum 3: oynatma notu = 311; kırmak; durum 4: oynatma notu = 349; kırmak; durum 5: oynatma notu = 392; kırmak; durum 6: oynatma notu = 440; kırmak; durum 7: oynatma notu = 466; kırmak; durum 8: oynatma notu = 523; kırmak; varsayılan: not = 1; kırmak; } playnote = playnote * ton kontrolü; int playnote2; int switchval2 = rastgele(1, 5); geçiş (switchval2) { durum 1: not2 = not2; kırmak; durum 2: not2 = not2 + 1; kırmak; durum 3: not2 = not2 - 1; kırmak; durum 4: not2 = not2 + 2; kırmak; durum 5: not2 = not2 - 2; kırmak; } geçiş (note2) { durum 1: playnote2 = 262; kırmak; durum 2: playnote2 = 294; kırmak; durum 3: playnote2 = 311; kırmak; durum 4: playnote2 = 349; kırmak; durum 5: playnote2 = 392; kırmak; durum 6: playnote2 = 440; kırmak; durum 7: playnote2 = 466; kırmak; durum 8: playnote2 = 523; kırmak; varsayılan: not2 = 1; kırmak; } playnote2 = playnote2 * tonecontrol2; ton(3, playnote, 30 * hız kontrolü); gecikme (31 * hız kontrolü); if (rastgele(1, 4) == 3) { gecikme(21 * hız kontrolü); } else { ton(3, playnote2, 20 * hız kontrolü); gecikme (21 * hız kontrolü); } }

Adım 4: Nasıl Kontrol Edilir

Nasıl Kontrol Edilir
Nasıl Kontrol Edilir

Soldan sağa, her kadran aşağıdakileri yapar:

  • Ses
  • 1. tonun perdesi
  • Tempo
  • 2. tonun perdesi

Beğendiğiniz bir ses gelene kadar onlarla uğraşın.

Önerilen: