2025 Tác giả: John Day | [email protected]. Sửa đổi lần cuối: 2025-01-13 06:58
Thiết kế này không phát một "bài hát". Thay vào đó, nó sử dụng thang âm blues để tạo ra âm nhạc của riêng mình trong khi chơi - tương tự như một nhạc công jazz thực thụ. Mỗi khi bạn bật nó lên, nó sẽ chơi một cái gì đó khác nhau; nhưng bạn vẫn có thể kiểm soát nhịp độ, cao độ và âm lượng bằng các nút quay. Hãy nghe một ví dụ về nó đang phát bên dưới:
Bước 1: Jazz là gì?
Nếu bạn muốn định nghĩa chính thức, bạn có thể xem các liên kết này, nhưng tôi nghĩ cách tốt nhất để mô tả nó là chỉ cho bạn thấy nó giống như thế nào.
- https://en.wikipedia.org/wiki/Jazz
- https://en.wikipedia.org/wiki/Jazz_improvisation
Bước 2: Xây dựng mạch
Tôi đã xây dựng một giá đỡ cho loa của mình từ ống hút và băng keo, nhưng đó là tùy chọn. Làm theo sơ đồ để xây dựng phần còn lại của thiết kế này.
Bước 3: Tải lên mã
Mã này tuân theo một thuật toán giả ngẫu nhiên để chơi vô hạn các nốt của thang âm Bb blues trong một nhịp điệu đảo lộn vui nhộn.
Sử dụng mã này trong 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 playnote; int switchval = random (1, 5); switch (switchval) {case 1: note = ghi chú; nghỉ; trường hợp 2: note = note + 1; nghỉ; trường hợp 3: note = note - 1; nghỉ; trường hợp 4: note = note + 2; nghỉ; trường hợp 5: note = note - 2; nghỉ; } switch (ghi chú) {case 1: playnote = 262; nghỉ; trường hợp 2: playnote = 294; nghỉ; trường hợp 3: playnote = 311; nghỉ; trường hợp 4: playnote = 349; nghỉ; trường hợp 5: playnote = 392; nghỉ; trường hợp 6: playnote = 440; nghỉ; trường hợp 7: playnote = 466; nghỉ; trường hợp 8: playnote = 523; nghỉ; mặc định: note = 1; nghỉ; } playnote = playnote * tonecontrol; int playnote2; int switchval2 = random (1, 5); switch (switchval2) {case 1: note2 = note2; nghỉ; trường hợp 2: note2 = note2 + 1; nghỉ; trường hợp 3: note2 = note2 - 1; nghỉ; trường hợp 4: note2 = note2 + 2; nghỉ; trường hợp 5: note2 = note2 - 2; nghỉ; } switch (note2) {case 1: playnote2 = 262; nghỉ; trường hợp 2: playnote2 = 294; nghỉ; trường hợp 3: playnote2 = 311; nghỉ; trường hợp 4: playnote2 = 349; nghỉ; trường hợp 5: playnote2 = 392; nghỉ; trường hợp 6: playnote2 = 440; nghỉ; trường hợp 7: playnote2 = 466; nghỉ; trường hợp 8: playnote2 = 523; nghỉ; mặc định: note2 = 1; nghỉ; } playnote2 = playnote2 * tonecontrol2; giai điệu (3, playnote, 30 * điều khiển tốc độ); chậm trễ (31 * kiểm soát tốc độ); if (random (1, 4) == 3) {delay (21 * speedcontrol); } else {tone (3, playnote2, 20 * speedcontrol); chậm trễ (21 * kiểm soát tốc độ); }}
Bước 4: Cách kiểm soát nó
Từ trái sang phải, mỗi mặt số thực hiện như sau:
- Âm lượng
- Cao độ của giai điệu thứ nhất
- Tempo
- Cao độ của giai điệu thứ 2
Hãy nói chuyện với họ cho đến khi bạn nhận được âm thanh mình thích.