Mục lục:
- Bước 1: Danh sách bộ phận
- Bước 2: Thi công
- Bước 3: Phần mềm
- Bước 4: Liên kết
- Bước 5: Sử dụng Bảng Sparkfun Với Thư viện Adafruit
Video: Bộ tổng hợp Micro Midi: 5 bước (có hình ảnh)
2024 Tác giả: John Day | [email protected]. Sửa đổi lần cuối: 2024-01-30 13:36
Tài liệu hướng dẫn này thể hiện việc sử dụng VLSI VS1053b Audio và chip Midi DSP trong chế độ Midi thời gian thực của nó. Trong chế độ này, nó hoạt động như một bộ tổng hợp 64 âm thanh GM (General Midi) Midi. Một vi mô độc lập Arduino Uno điều khiển màn hình OLED, ba nút (Chọn chức năng và Lên hoặc Xuống, và chuyển luồng dữ liệu Midi tới DSP âm thanh. Bảng nhạc được chọn là bảng đột phá codec Adafruit VS1053, nhưng bảng ngắt âm nhạc Sparkfun cũng đã được thử nghiệm thành công. Các thư viện Adafruit VS1053b đã được sử dụng thay vì Thư viện SFEMP3 lớn hơn nhiều (được Sparkfun khuyến nghị mặc dù chúng cũng có bộ thư viện riêng), vì tôi thấy mã Adafruit dễ hiểu hơn.
Hầu hết mã được sử dụng để điều khiển DSP âm thanh / midi được phát triển bằng cách sử dụng Arduino Uno được kết nối với bảng đột phá âm thanh / midi thông qua một breadboard. Sau khi các chức năng được tìm thấy hoạt động tốt, Uno được sử dụng như một lập trình viên cho ATmega 328 độc lập, sau đó được đặt trên một Veroboard kích thước nhỏ 30x20 cùng với IC cách ly quang 6N139 được yêu cầu trên ổ cắm đầu vào Midi (DIN 5 chân). Ngoài ra còn được kết nối với một tấm chắn OLED nhỏ (64x48), ba nút, một đèn LED hoạt động Midi và một đầu nối thùng +5 volt cho nguồn và thêm đầu nối đầu ra âm thanh nổi. Các yêu cầu về điện năng rất khiêm tốn - khoảng 20 mA ở 5 volt.
Bước 1: Danh sách bộ phận
ATmega328 Micro 28 pin DIP + 28 pin DIP socket6N138 hoặc 6N139 optoisolator + 4 pin DIP socketWemos 64x48 I2C OLED Display hoặc tương tựBảng ngắt Codec VS1053b Ổ cắm để kết nối với bộ khuếch đại hoặc tai nghe Điện trở: 7 x 10k, 2 x 470 ohm, 2 x 220 ohm. bởi 16 cột), vỏ bằng nhựa ABS khoảng 85x55x25mm, hệ thống dây điện và một vài đai ốc và vòng đệm.
Bước 2: Thi công
Nắp của hộp chứa Màn hình OLED, ba nút được gắn trên một miếng Veroboard nhỏ khác và đầu nối nguồn của thùng. Bảng mạch Vero chính có hai lỗ để sửa bảng đột phá Âm nhạc phía trên ATmega328. Để biết chi tiết kết nối, vui lòng tham khảo sơ đồ bảng mạch Fritzing.
ATmega328 được lập trình (vui lòng tham khảo phần tiếp theo để biết mã) sau đó được đưa vào ổ cắm của nó, tiếp theo là 6N139 và mọi thứ được kết nối.
Đèn LED được sử dụng như một chỉ báo hoạt động Midi và được gắn ở mặt trước của vỏ bọc. Nó được kết nối với đầu ra D2 của ATmega328 thông qua điện trở 470 ohm.
Màn hình OLED sử dụng đầu ra 3,3 volt từ bảng Adafruit để cấp nguồn - nó yêu cầu ít hơn 20 mA.
Hãy thử hoán đổi hai kết nối Midi Din nếu bạn không nghe thấy bất kỳ âm thanh nào khi lần đầu tiên sử dụng synth.
Bước 3: Phần mềm
Chi tiết về bản phác thảo sẽ được tải lên ATmega328 được cung cấp trong MidA.ino. Có bảy chức năng có sẵn:
Tùy chọn P: Thay đổi Chương trình - thay đổi Nhạc cụ GM Midi từ 1 thành 128 (tôi đã sử dụng 0 thành 127) chẳng hạn như âm thanh Piano hoặc Synth. Tùy chọn B: Thay đổi ngân hàng Nhạc cụ giữa Melodic (Ngân hàng 0) và Bộ gõ (Ngân hàng 1). Tùy chọn V: Điều chỉnh âm lượng từ 1 đến 10. Tùy chọn C: Thay đổi kênh Midi mà Synth sẽ phản hồi. Các lựa chọn là Kênh 0, kênh 1, kênh 9 (bộ gõ), kênh 0 và 9 và kênh 1 và 9. Tùy chọn R: Bật hoặc tắt hiệu ứng Reverb. Tùy chọn S: Lưu các thông số hiện tại vào bộ nhớ Eeprom (Lên) hoặc Đọc (Xuống) nó trở lại từ bộ nhớ Eeprom. Điều này là do các cài đặt không được lưu khi tắt nguồn. Tùy chọn X: Gửi thông báo tắt tất cả ghi chú (Đặt lại giữa).
Tùy chọn thứ tám vẫn chưa được triển khai - điều này sẽ bỏ qua ATmega làm bộ lọc Midi và kết nối đầu ra của bộ lọc quang trực tiếp với chân Rx của bảng DSP.
Lưu ý rằng VS1053b khởi động ở chế độ Midi thời gian thực bằng cách tải bản vá nén 1039 byte trong khi khởi động - điều này cũng làm tăng kích thước của bộ đệm Midi và lọc các byte dữ liệu Midi độc quyền của hệ thống. Thông tin chi tiết về bản vá này có thể được tìm thấy trên trang web của VLSI.
Một phiên bản sửa đổi nhẹ của thư viện Adafruit Graphics đã được sử dụng để phục vụ cho độ phân giải 64x48 pixel của Màn hình OLED - vui lòng tham khảo các liên kết được cung cấp ở cuối cho Mr Mcauser. Danh sách các thư viện cần thiết được đưa ra trong mã phác thảo.
Điều quan trọng là khi phác thảo được thực thi lần đầu tiên trên ATmega328 cho dù là trên Uno hay độc lập, mã sẽ tải các cài đặt trước tham số từ ATmega328 Eeprom có thể không hợp lệ. Trong trường hợp đó, bạn có thể ghi tất cả các số 0 vào Eeprom bằng cách sử dụng tùy chọn X với nút xuống hoặc nhận xét dòng trong chức năng thiết lập void tải các giá trị từ Eeprom khi nó được khởi động lần đầu, điều chỉnh nhạc cụ của bạn, v.v. thích, và sau đó lưu các cài đặt trước của bạn bằng nút S option Up.
Tín dụng được cấp cho tất cả những người và thực thể được đề cập cho mã và thư viện của họ..
Bước 4: Liên kết
VLSI:
Adafruit:
Github VS1053b:
Đồ họa Github:
Oled:
Sparkfun:
Bước 5: Sử dụng Bảng Sparkfun Với Thư viện Adafruit
Bảng trong hình giải thích cách kết nối Adafruit hoặc Sparkfun Music Boards để sử dụng một thư viện khác.
Đề xuất:
Bộ tổng hợp nước với MakeyMakey và Scratch: 6 bước (có hình ảnh)
Bộ tổng hợp nước với MakeyMakey và Scratch: Sử dụng MakeyMakey để biến đổi các vật liệu khác nhau thành các công tắc hoặc nút và do đó kích hoạt các chuyển động hoặc âm thanh trên máy tính là một điều thú vị. Người ta tìm hiểu vật liệu nào dẫn dòng điện yếu và có thể phát minh và thử nghiệm với tôi
Bộ tổng hợp / Organ tương tự tuyệt vời chỉ sử dụng các thành phần rời rạc: 10 bước (có hình ảnh)
Bộ tổng hợp Analog / Organ tuyệt vời chỉ sử dụng các thành phần rời rạc: Các bộ tổng hợp analog rất hay nhưng cũng khá khó chế tạo. cần một vài mạch phụ cơ bản: Một bộ dao động đơn giản với điện trở lại
Anh hùng bàn phím (Sử dụng bộ điều khiển guitar Wii làm bộ tổng hợp): 7 bước (có hình ảnh)
Keytar Hero (Sử dụng bộ điều khiển guitar Wii làm bộ tổng hợp): Các trò chơi Guitar Hero đều nổi tiếng cách đây hàng chục năm, vì vậy chắc chắn sẽ có rất nhiều bộ điều khiển guitar cũ nằm xung quanh thu gom bụi. Chúng có rất nhiều nút, núm vặn và cần gạt, vậy tại sao bạn không sử dụng lại chúng? Bộ điều khiển guitar
Bộ tổng hợp Arduino MIDI Chiptune: 7 bước (có hình ảnh)
Bộ tổng hợp Arduino MIDI Chiptune: Sống lại niềm vui của âm nhạc trong trò chơi máy tính thời kỳ đầu với bộ tổng hợp chiptune 8 bit đích thực, bạn có thể điều khiển MIDI từ bất kỳ phần mềm DAW hiện đại nào. Mạch đơn giản này sử dụng Arduino để điều khiển AY-3- 8910 chi tiết âm thanh có thể lập trình
Hộp Barbie: Hộp ngụy trang / Hộp bùng nổ cho máy nghe nhạc Mp3 của bạn: 4 bước (có hình ảnh)
Hộp Barbie: Hộp ngụy trang / Hộp bùng nổ cho máy nghe nhạc Mp3 của bạn: Đây là một hộp đựng bảo vệ có đệm cho máy nghe nhạc mp3 của bạn, cũng có thể chuyển đổi giắc cắm tai nghe sang 1/4 inch, có thể hoạt động như một hộp bùng nổ khi lật công tắc và ngụy trang máy nghe nhạc mp3 của bạn thành một máy nghe nhạc đầu những năm chín mươi hoặc hành vi trộm cắp tương tự tôi