Innehållsförteckning:
2025 Författare: John Day | [email protected]. Senast ändrad: 2025-01-13 06:58
Denna design spelar inte en "sång". Istället använder den en bluesskala för att skapa sin egen musik medan den spelar - ungefär som en riktig jazzmusiker. Varje gång du slår på den kommer det att spela något annorlunda; men du kan fortfarande styra tempot, tonhöjden och volymen med rattarna. Hör ett exempel på hur det spelas nedan:
Steg 1: Vad är jazz?
Om du vill ha den officiella definitionen kan du titta på dessa länkar, men jag tror att det bästa sättet att beskriva det är bara att visa dig hur det låter.
- https://en.wikipedia.org/wiki/Jazz
- https://en.wikipedia.org/wiki/Jazz_improvisation
Steg 2: Bygg kretsen
Jag byggde ett stativ för min högtalare av sugrör och tejp, men det är valfritt. Följ diagrammet för att bygga resten av denna design.
Steg 3: Ladda upp koden
Denna kod följer en pseudo-slumpmässig algoritm för att oändligt spela tonerna av Bb-bluesskalan i en jazzy synkoperad rytm.
Använd den här koden i Arduino IDE:
int note = 1;
int note2 = 1; void setup () {pinMode (3, OUTPUT); } void loop () {int tonecontrol = map (analogRead (A0), 0, 1023, 1, 4); int speedcontrol = map (analogRead (A1), 0, 1023, 1, 20); int tonecontrol2 = map (analogRead (A2), 0, 1023, 1, 4); int spelnot; int switchval = slumpmässig (1, 5); switch (switchval) {case 1: note = note; ha sönder; fall 2: not = not + 1; ha sönder; fall 3: not = not - 1; ha sönder; fall 4: not = not + 2; ha sönder; fall 5: not = not - 2; ha sönder; } switch (note) {case 1: playnote = 262; ha sönder; fall 2: playnote = 294; ha sönder; fall 3: playnote = 311; ha sönder; fall 4: playnote = 349; ha sönder; fall 5: playnote = 392; ha sönder; fall 6: playnote = 440; ha sönder; fall 7: playnote = 466; ha sönder; fall 8: playnote = 523; ha sönder; standard: notera = 1; ha sönder; } playnote = playnote * tonecontrol; int playnote2; int switchval2 = random (1, 5); switch (switchval2) {case 1: note2 = note2; ha sönder; fall 2: not 2 = not 2 + 1; ha sönder; fall 3: not 2 = not 2 - 1; ha sönder; fall 4: not 2 = not 2 + 2; ha sönder; fall 5: not 2 = not 2 - 2; ha sönder; } switch (note2) {case 1: playnote2 = 262; ha sönder; fall 2: playnote2 = 294; ha sönder; fall 3: playnote2 = 311; ha sönder; fall 4: playnote2 = 349; ha sönder; fall 5: playnote2 = 392; ha sönder; fall 6: playnote2 = 440; ha sönder; fall 7: playnote2 = 466; ha sönder; fall 8: playnote2 = 523; ha sönder; standard: note2 = 1; ha sönder; } playnote2 = playnote2 * tonecontrol2; ton (3, spelnot, 30 * hastighetskontroll); fördröjning (31 * hastighetskontroll); if (random (1, 4) == 3) {delay (21 * speedcontrol); } annat {ton (3, playnote2, 20 * speedcontrol); fördröjning (21 * hastighetskontroll); }}
Steg 4: Hur man kontrollerar det
Från vänster till höger gör varje urtavla följande:
- Volym
- 1: a tonens tonhöjd
- Tempo
- 2: a tonens tonhöjd
Röra med dem tills du får ett ljud du gillar.