فهرست مطالب:

دستگاه سنتز کننده Micro Midi: 5 مرحله (همراه با تصاویر)
دستگاه سنتز کننده Micro Midi: 5 مرحله (همراه با تصاویر)

تصویری: دستگاه سنتز کننده Micro Midi: 5 مرحله (همراه با تصاویر)

تصویری: دستگاه سنتز کننده Micro Midi: 5 مرحله (همراه با تصاویر)
تصویری: Штукатурка стен - самое полное видео! Переделка хрущевки от А до Я. #5 2024, نوامبر
Anonim
دستگاه سنتز کننده Micro Midi
دستگاه سنتز کننده Micro Midi
دستگاه سنتز کننده Micro Midi
دستگاه سنتز کننده Micro Midi
دستگاه سنتز کننده Micro Midi
دستگاه سنتز کننده Micro Midi

این دستورالعمل استفاده از تراشه VLSI VS1053b Audio و Midi DSP را در حالت Midi زمان واقعی خود نشان می دهد. در این حالت ، به عنوان یک سینت سایزر چند صدایی GM (General Midi) Midi با 64 صدا عمل می کند. یک میکرو مستقل Arduino Uno یک صفحه نمایش OLED ، سه دکمه (Function Select و Up یا Down را کنترل می کند و جریان داده Midi را به DSP صوتی منتقل می کند. برد موسیقی انتخاب شده برد Adafruit VS1053 کدک برک آوت ، اما یک برد شکست موسیقی Sparkfun بود. کتابخانه های Adafruit VS1053b به جای کتابخانه SFEMP3 بسیار بزرگتر (که توسط Sparkfun توصیه می شود ، حتی اگر مجموعه کتابخانه های خاص خود را دارند) ، استفاده می شود ، زیرا من فهمیدم کد Adafruit آسان تر است.

بیشتر کدهای مورد استفاده برای کنترل صوتی/midi DSP با استفاده از Arduino Uno متصل به برد صوتی/midi breakout از طریق یک تخته نان ایجاد شده است. بعد از اینکه عملکردها رضایت بخش بود ، Uno به عنوان برنامه نویس ATmega 328 مستقل مورد استفاده قرار گرفت و سپس روی Veroboard کوچک با ابعاد 30x20 و IC IC نوری 6N139 مورد نیاز در سوکت ورودی Midi قرار گرفت (DIN 5 پین) به همچنین یک محافظ OLED کوچک (64x48) ، سه دکمه ، یک LED فعالیت Midi و یک کانکتور بشکه +5 ولت برای تغذیه و اتصال خروجی استریو صوتی اضافه شده بود. قدرت مورد نیاز بسیار اندک است - حدود 20 میلی آمپر در 5 ولت.

مرحله 1: لیست قطعات

ATmega328 Micro 28 pin DIP + 28 pin DIP سوکت 6N138 یا 6N139 optoisolator + 4 پین DIP سوکت Wemos 64x48 I2C OLED یا مشابه Adafruit VS1053b Codec Breakout Board3 مینیاتور فشار 5 دکمه DIN Midi سوکت PCB منبع تغذیه کوچک سوکت برای اتصال به تقویت کننده یا هدفون مقاومتها: 7 x 10k ، 2 x 470 اهم ، 2 x 220 اهم خازنها: 0.1uF 50v پلاستیک ، 10uf 25v الکترولیتی ، سرامیک 2 x 27 pF قطعات کوچک Veroboard (30 نوار در 20 ستون و 4 نوار) توسط 16 ستون) ، محفظه پلاستیکی ABS حدود 85x55x25 میلی متر ، سیم کشی و چند پیچ مهره و واشر.

مرحله 2: ساخت و ساز

ساخت و ساز
ساخت و ساز
ساخت و ساز
ساخت و ساز
ساخت و ساز
ساخت و ساز

درب محفظه دارای صفحه نمایش OLED ، سه دکمه ای است که بر روی قطعه کوچک دیگری از Veroboard نصب شده است و کانکتور تغذیه بشکه. برد اصلی Vero دارای دو حفره برای تعمیر برد برک آوت موسیقی در بالای ATmega328 است. برای جزئیات اتصال لطفاً به نمودار تخته نوار فریتزینگ مراجعه کنید.

ATmega328 برنامه ریزی شده (لطفاً برای کد به قسمت بعدی مراجعه کنید) سپس در سوکت آن و سپس 6N139 وارد شده و همه چیز متصل می شود.

LED به عنوان نشانگر فعالیت Midi استفاده می شود و در قسمت جلویی محفظه نصب شده است. از طریق مقاومت 470 اهم به خروجی D2 ATmega328 متصل می شود.

صفحه نمایش OLED از خروجی 3.3 ولت از برد Adafruit برای قدرت استفاده می کند - به کمتر از 20 میلی آمپر نیاز دارد.

اگر هنگام استفاده از دستگاه مصنوعی صدا نمی شنوید ، دو اتصال Midi Din را عوض کنید.

مرحله 3: نرم افزار

جزئیات طرح که باید در ATmega328 بارگذاری شود در MidA.ino آمده است. هفت عملکرد وجود دارد:

گزینه P: تغییر برنامه - ابزار GM Midi را از 1 به 128 (از 0 تا 127 استفاده کردم) مانند صدای پیانو یا Synth تغییر دهید. گزینه B: بانک ابزار را بین Melodic (بانک 0) و Percussion (بانک 1) تغییر دهید. گزینه V: میزان صدا را از 1 تا 10 تنظیم کنید. گزینه C: کانال Midi را که Synth به آن پاسخ می دهد تغییر دهید. گزینه ها عبارتند از کانال 0 ، کانال 1 ، کانال 9 (کوبه ای) ، کانال 0 و 9 و کانال 1 و 9. گزینه R: افکت Reverb را روشن یا خاموش کنید. گزینه S: پارامترهای فعلی را در حافظه Eeprom ذخیره کنید (بالا) یا آن را از حافظه Eeprom بخوانید (پایین). این به این دلیل است که در غیر اینصورت تنظیمات هنگام خاموش شدن ذخیره نمی شوند. گزینه X: ارسال همه یادداشت ها (Midi Reset).

گزینه هشتم هنوز اجرا نشده است - این ATmega را به عنوان یک فیلتر Midi دور می زند و خروجی optoisolator را مستقیماً به پین Rx برد DSP متصل می کند.

توجه داشته باشید که VS1053b در حالت Midi زمان واقعی با بارگیری یک وصله فشرده 1039 بایت هنگام بوت شدن راه اندازی می شود - این امر همچنین اندازه بافر Midi را افزایش می دهد و بایت های اختصاصی Midi سیستم را فیلتر می کند. جزئیات این پچ را می توانید در وب سایت VLSI پیدا کنید.

از نسخه کمی اصلاح شده کتابخانه Adafruit Graphics برای تأمین وضوح تصویر 64 48 48 پیکسل صفحه نمایش OLED استفاده شده است - لطفاً به پیوندهایی که در انتها برای آقای مکاوزر داده شده مراجعه کنید. لیستی از کتابخانه های مورد نیاز در کد طرح ارائه شده است.

نکته مهم این است که وقتی طرح برای اولین بار در ATmega328 اجرا می شود ، چه روی Uno چه مستقل ، کد ، پارامترهای از پیش تعیین شده پارامترهای ATmega328 Eeprom را بارگیری می کند که ممکن است معتبر نباشد. در این صورت شما می توانید همه صفرها را با استفاده از گزینه X با دکمه پایین به Eeprom بنویسید ، یا خطی را در تابع void setup که مقادیر Eeprom را هنگام شروع بارگذاری می کند ، توضیح دهید ، ابزارهای خود را و غیره را بر روی خود تنظیم کنید. دوست داشته باشید ، و سپس تنظیمات از پیش تنظیم شده خود را با دکمه S گزینه Up ذخیره کنید.

اعتبار به همه اشخاص و نهادهای ذکر شده برای کد و کتابخانه های آنها داده می شود.

مرحله 4: پیوندها

VLSI:

Adafruit:

Github VS1053b:

Github Graphics:

اولد:

Sparkfun:

مرحله 5: استفاده از تخته Sparkfun با کتابخانه های Adafruit

استفاده از تخته Sparkfun با کتابخانه های Adafruit
استفاده از تخته Sparkfun با کتابخانه های Adafruit

جدول موجود در تصویر نحوه اتصال تابلوی موسیقی Adafruit یا Sparkfun Music را برای استفاده از کتابخانه دیگر توضیح می دهد.

توصیه شده: