İçindekiler:
2025 Yazar: John Day | [email protected]. Son düzenleme: 2025-01-13 06:58
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?
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
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
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.