فهرست مطالب:
- مرحله 1: فیلم
- مرحله 2: قطعات و مواد
- مرحله 3: سیم کشی - SAA1099
- مرحله 4: سیم کشی - نوسان ساز TTL
- مرحله 5: سیم کشی - رابط Iref و تراشه
- مرحله 6: سیم کشی - اجزای صدا
- مرحله 7: سیم کشی - جک صوتی
- مرحله 8: سیم کشی - برق به Breadboard
- مرحله 9: سیم کشی - خطوط داده
- مرحله 10: LED های اختیاری
- مرحله 11: کد
- مرحله 12: آزمایش کنید
- مرحله 13: استفاده از فایلهای MIDI خود - برنامه تبدیل
- مرحله 14: تبدیل فایل های MIDI
- مرحله 15: استفاده از فایل MIDI تبدیل شده خود
- مرحله 16: خوب
تصویری: تراشه صدا یکپارچهسازی با سیستمعامل با آردوینو - SAA1099: 16 مرحله (همراه با تصاویر)
2024 نویسنده: John Day | [email protected]. آخرین اصلاح شده: 2024-01-30 08:55
در این دستورالعمل ، من به شما نحوه استفاده از Arduino Uno با تراشه سنتز صدای قدیمی ، برای پخش فایل های midi در حالت موج دار مربعی را نشان خواهم داد!
اگر می خواهید فقط مروری سریع بر کار این پروژه داشته باشید ، ویدیوی بالا را تماشا کنید. در غیر این صورت ، ادامه دهید!
مرحله 1: فیلم
اگر تمام دستورالعمل های خود را در فیلم های واضح و مختصر ترجیح می دهید ، ما شما را تحت پوشش قرار می دهیم!
برای بقیه ما ، می توانید ادامه دهید ، برای جزئیات بیشتر و دستورالعمل های کتبی.
مرحله 2: قطعات و مواد
برای این کار به این موارد نیاز دارید:
(پیوندها برای موارد eBay است)
- آردوینو (Uno ، Nano ، Leonardo ، همه آنها باید کار کنند)
- حداقل یک تخته نان متوسط
- تراشه SAE1099 Stereo Sound Generator
- سیمهای بلوز تخته نرد (متناوباً ، من از پرش زن دوپونت به ماده استفاده می کنم ، با سنجاق سر 20 میلیمتری در هر دو انتها- بسیار محکم تر)
- 8Mhz TTL Oscillator (پیوند AliExpress که توسط zweigelt ارائه شده است)
- جک صوتی استریو (یا مونو)
- 2 مقاومت 1K 1K (تعداد 100 عدد)
- 1 x مقاومت 10K (تعداد 50)
- 2 خازن 100pF
- (اختیاری) برخی از LED ها ، حداقل 1 (هر رنگ ، در اینجا 100 رنگ مختلف برای یک دلار وجود دارد!)
با استفاده از پیوندهای ارائه شده ، هزینه کل 23.25 دلار با احتساب حمل و نقل است. البته ، بیشتر آن از نصف سراسر جهان تهیه می شود ، بنابراین حمل و نقل معمولاً حدود یک ماه به طول می انجامد. اگر می خواهید حمل و نقل سریع تری انجام دهید ، احتمالاً باید کمی بیشتر هزینه کنید.
مرحله 3: سیم کشی - SAA1099
اگر شماتیک مورد علاقه شماست ، اینجا بروید! بقیه ما می توانیم گام به گام مراحل را طی کنیم ، یا ویدیو را تماشا کنیم.
- SAA1099 را در انتهای تخته نان قرار دهید ، در حالی که شکاف روی تراشه رو به انتها قرار دارد.
- حالا ، قدرت VDD (پین 18) در SAA1099 روشن می شود ، سپس VSS (پین 9) را به زمین وصل می کند.
- بعد ، یک سیم بین CS (پین 2) و زمین قرار دهید تا پایین بماند
همچنین توصیه می کنم به برگه داده ای که ضمیمه کرده ام نگاهی بیندازید.
مرحله 4: سیم کشی - نوسان ساز TTL
- ما TTL Oscillator را روی تخته نان در کنار تخته نان قرار می دهیم ، به طوری که پین خروجی ساعت به SAA1099 (پین 8) نزدیکترین ورودی ساعت است.
- می توانید جلو بروید و برق و زمین را به نوسان ساز TTL وصل کنید. (من تا بعد در ویدیوی خود منتظر ماندم ، بنابراین عکسی ندارم). تصویر بالا نشان می دهد که کدام پین ها کدام هستند.
مرحله 5: سیم کشی - رابط Iref و تراشه
- مقاومت 10K را بین Iref (پین 6) و 5V متصل کنید.
- پین دیجیتال 8 را به SA (10) به WR (پایه 1) وصل کنید.
- پین دیجیتال 9 را در SAA1099 به A0 (پایه 3) وصل کنید.
مرحله 6: سیم کشی - اجزای صدا
- یک خازن 100pF بین OUTR (پایه 4) و GND وصل کنید
- یک مقاومت 1K بین OUTR (پین 4) و 5V متصل کنید
- ما همین کار را برای OUTL (پین 5) انجام می دهیم
- یک خازن 100pF بین OUTL (پین 5) و GND وصل کنید
- یک مقاومت 1K بین OUTL (پین 5) و 5V متصل کنید
توجه داشته باشید! اطمینان حاصل کنید که هیچ یک از سیم های مقاومت/خازن ها به هم دست نمی زنند ، در غیر این صورت اجسام کار نمی کنند و ممکن است (به طور احتمالی) به طور بالقوه در صورت شما منفجر شود.
مرحله 7: سیم کشی - جک صوتی
- یک سیم جامپر کوچک بین 5 ولت و یک ردیف خالی روی تخته نان متصل کنید.
- جک صوتی خود را طوری قرار دهید که بلور 5 ولت به پین "Sleeve" در جک صوتی متصل شود.
- L و R (یا پین صوتی ، اگر جک مونو دارید) به ترتیب به پین های OUTL (پین 5) و OUTR (پین 4) در SAA1099 وصل کنید.
توجه داشته باشید! در جک های صوتی مونو ، واقعاً مهم نیست که چه اتفاقی می افتد ، مگر اینکه یک پین به 5 ولت و یک پین به OUTL یا OUTR متصل شود. صداش خیلی خوبه مگر اینکه اینطور نباشد ، در این صورت ممکن است بخواهید دوباره سیم کشی خود را بررسی کنید.
مرحله 8: سیم کشی - برق به Breadboard
- دو طرف باس قدرت Breadboard را با استفاده از سیم های بلوز به یکدیگر وصل کنید.
- یک طرف را به پین های 5V و GND در آردوینو وصل کنید ، مطمئن شوید که سیم ها را در هیچ جا با هم مخلوط نکرده اید. اگر این کار را کردید ، ممکن است دود جادویی از آن خارج شود.
مرحله 9: سیم کشی - خطوط داده
به ترتیب D0 تا D7 را در Arduino به D0 (پین 10) تا D7 (پین 17) در SAA1099 وصل کنید
من متوجه شدم که سیم های جهنده زن-زن DuPont ، با سنجاق سر 15-20 میلی متر در هر دو طرف ، بسیار بهتر از سیم های دوپونت مرد-مرد کار می کنند. به علاوه می توانید از آنها به عنوان زن-زن یا مرد-زن نیز استفاده کنید. هر دو به راحتی در مقادیر زیاد ، در مقادیر کمی از تغییرات ، در eBay یافت می شوند. یک هدیه خوب کریسمس برای افراد مشتاق آردوینو!
مرحله 10: LED های اختیاری
من قدم به قدم نحوه ساختن همه چیز را در اینجا توضیح نمی دهم ، اما چندین مکان خوب برای افزودن LED وجود دارد. اول از همه ، من یک LED قرمز رنگ 3 میلی متری بین WR (پین 1) و GND متصل کردم تا هر بار که آردوینو یک فرمان به SAA1099 ارسال می کند نشان دهد.
من قبلاً LED ها را به خطوط داده متصل کرده ام ، که به شما امکان می دهد داده های باینری واقعی را در هر خط مشاهده کنید. من از این تنظیمات در ویدئوی "Arduino and SAA1099 - Fireflies" و همچنین 6 LED دیگر و کد اضافی برای روشن کردن هر LED برای هر کانال فعال استفاده کردم.
هرچه تعداد LED ها بیشتر باشد ، سردتر به نظر می رسد!
مرحله 11: کد
حالا که مدار را ساختید ، اتصالات را دوبار بررسی کنید! شما نمی خواهید آردوینو و Soundchip گران قیمت خود را منفجر کنید! (اگر انجام دهید ، خوب. این کار من نیست)
با فرض اینکه عاقل هستید و همه چیز را بررسی کرده اید ، می توانیم برنامه نویسی آن را شروع کنیم.
- کتابخانه در https://github.com/Bobcatmodder/SAATunes قرار دارد
- شما فایل SAATunes.zip را می خواهید ، پس بروید و آن را بارگیری کنید.
- اکنون ، Arduino IDE را باز کنید.
- در بخش "طرح" ، "شامل کتابخانه" ، روی "افزودن کتابخانه.zip" کلیک کنید
- به هر کجا که کتابخانه SAATunes را بارگیری کرده اید بروید. (برایم مهم نیست که دسکتاپ شما بوده ، بارگیری شده یا پوشه ای (شرم آور وارد کنید)- فقط آن را پیدا کنید)
- آن را انتخاب کرده و روی "باز کردن" کلیک کنید
- باید به شما بگوید که به کتابخانه های شما اضافه شده است.
مرحله 12: آزمایش کنید
- مثال برنامه SAATunes را در بخش "File" ، "Examples" ، "SAATunes" ، "SAATunes-Uno" باز کنید.
- آردوینو خود را به رایانه و به نوعی بلندگو متصل کنید.
- برنامه را در آردوینو بارگذاری کنید.
شما باید یک آکورد ، سپس خشم بتهوون بر سر یک پنی گمشده را بشنوید. اگر کلاسیک مورد علاقه شما نیست ، نگران نباشید ، زیرا ما به زودی یاد می گیریم که چگونه از فایل های MIDI دلخواه خود با آن استفاده کنیم.
اگر چیزی نمی شنوید ، چند مورد را بررسی کنید: ابتدا ، بلندگوی شما روشن است؟ آن را تا انتها بالا ببرید. سپس ، آردوینو واقعاً روشن است؟ آیا برنامه به درستی بارگذاری شده است؟ تمام سیم کشی ها را با شماتیک و برگه داده بررسی کنید ، سپس دوباره امتحان کنید.
مرحله 13: استفاده از فایلهای MIDI خود - برنامه تبدیل
آیا آماده امتحان چیزی غیر از بتهوون هستید؟ بسیار خوب ، شما اینجا هستید.
برای تبدیل فایل های MIDI به C ++ Bytestreams ، به برنامه ای از Len Shustek نیاز داریم. او خالق کتابخانه ای است که من کد خود را بر اساس آن تنظیم کردم و کتابخانه من از همان فرمت bytestream استفاده می کند.
- می توانید برنامه را در https://github.com/LenShustek/miditones پیدا کنید
- برنامه مورد نظر شما "miditones.exe" است. پیش بروید و آن را بارگیری کنید.
مرحله 14: تبدیل فایل های MIDI
هشدار! در اینجا اژدهایان ascii وجود دارد! شاید تماشای ویدیو برای شما آسان تر باشد ، جایی که می توانید دقیقاً آنچه را که من در مورد آن صحبت می کنم مشاهده کنید. اگر جرات دارید وارد شوید ، ادامه دهید!
برای استفاده از برنامه تبدیل MIDI به Bytestream ، باید پنجره خط فرمان را باز کنید. با عرض پوزش از کاربران Mac و Linux ، ممکن است مجبور شوید راه حلی را پیدا کنید.
- منوی شروع را باز کرده و "CMD" را تایپ کنید ، سپس Enter را فشار دهید.
- ما در حال حاضر کمی جادوی MS-DOS را یاد می گیریم. با استفاده از فرمان "CD" ، به هر جایی که فایل "miditones.exe" را در آن بارگیری کرده اید بروید. در بیشتر موارد ، دستورات "بارگیری سی دی" هستند.
- برنامه "miditones.exe" را با تایپ کردن "miditones" اجرا کنید. این باید یک لیست راهنما را نشان دهد که رایج ترین دستورات را نشان می دهد.
اکنون ، ما برای تبدیل به یک فایل MIDI نیاز داریم. جایی را در شبکه های بین المللی پیدا کنید ، ترجیحاً بدون ضربه یا هیچ جلوه ویژه ای علاوه بر سرعت/سرعت. (اگر نمی دانید اینها چیست ، نگران نباشید ، خوب خواهید بود)
- فایل MIDI خود را در همان محلی که برنامه "miditones" دارید بارگیری کنید.
- اکنون ، با استفاده از پنجره خط فرمان ، "miditones -d -v [filename]" را تایپ کنید ([نام فایل] را با نام فایل MIDI خود جایگزین کنید).
- miditones یک فایل. C با C ++ bytestream در همان پوشه ، با همان نام فایل MIDI ایجاد می کند.
مرحله 15: استفاده از فایل MIDI تبدیل شده خود
حالا که فایل MIDI خود را تبدیل کرده اید ، اجازه دهید آن را در بایت های کمی به آردوینو تغذیه کنیم!
- با فرض اینکه نمونه SAATunes-Uno را باز کرده اید ، بیایید پیش برویم و چیز دیگری را "ذخیره کنیم" ، بنابراین می توانیم آن را ویرایش کنیم.
- پس از ذخیره آن ، روی نماد کوچک "پیکان رو به پایین" در گوشه بالا سمت راست کلیک کنید.
- روی "برگه جدید" کلیک کنید و نام آن را "[name].h" بگذارید (نام [MID] را با نام آهنگ MIDI یا هر چیزی که می خواهید جایگزین کنید]
- اکنون ، فایل. C را که miditones قبلاً ایجاد کرده بود باز کنید. می توانید از دفترچه یادداشت برای باز کردن آن استفاده کنید.
- از CNTRL/A برای انتخاب همه چیز و سپس کپی کردن آن استفاده کنید.
- آن را در برگه جدید "[name].h" خود در ویرایشگر arduino قرار دهید.
اینجا همه چیز خوب است ، بنابراین بیایید به برنامه برگردیم.
- جایی که روی آن نوشته شده است "#include" RagePenny.h "" را پیدا کنید ، و آن را در خط جدید زیر کپی/جایگذاری کنید.
- "RagePenny.h" را به هر نامی که فایل جدید خود نامگذاری کرده اید تغییر دهید.
- اکنون ، "#شامل" RagePenny.h "" را با افزودن دو خط افقی جلو (//) در جلوی آن کامنت کنید.
- برنامه را بارگذاری کنید!
اگر همه چیز خوب پیش رفت ، باید فایل MIDI خود را پخش کنید. در غیر اینصورت ، دوباره بررسی کنید تا مطمئن شوید نام برگه جدید و نامی که در "#شامل" RagePenny.h "" تغییر دهید یکسان است. مراحل دیگر را بررسی کنید و مطمئن شوید که همه کارها را درست انجام داده اید. برخی از فایل های MIDI کار نمی کنند ، اما موارد نادری هستند.
مرحله 16: خوب
امیدوارم همه چیز برای شما خوب پیش رفته باشد ، و در حال ضبط فایل های MIDI با استفاده از فناوری قدیمی با توجه به زندگی جدید هستید!
با این حال ، اگر نیستید ، تسلیم نشوید! نظر خود را به روش من ارسال کنید ، من خوشحال خواهم شد که به شما کمک کنم. البته با خیال راحت پیشنهاداتی را در نظرات به من بدهید.
چیپتون های مبارک
توصیه شده:
تلفن همراه شماره گیری روتاری سبک یکپارچهسازی با سیستمعامل: 4 مرحله (همراه با تصاویر)
تلفن همراه شماره گیری روتاری سبک یکپارچهسازی با سیستمعامل: این پروژه به دلیل نیاز عملی و تمایل به انجام کاری سرگرم کننده انجام شد. به عنوان اکثر خانواده های مدرن ، ما از داشتن & quot؛ خانه & quot؛ واقعی & quot؛ دست کشیدیم. تلفن (با سیم) سالها پیش در عوض ، ما سیم کارت اضافی مرتبط با & quot؛ قدیمی & quot؛ خود داریم. شماره خانه
یک کنسول بازی یکپارچهسازی با سیستمعامل شخصی خود بسازید! که همچنین یک تبلت Win10 است!: 6 مرحله (همراه با تصاویر)
خودتان یک کنسول بازی قابل حمل یکپارچهسازی با سیستمعامل بسازید! …… که همچنین یک تبلت Win10 است!: در این پروژه به شما نشان خواهم داد که چگونه یک کنسول بازی یکپارچهسازی با سیستمعامل قابل حمل ایجاد کنید که می تواند به عنوان یک تبلت ویندوز 10 نیز استفاده شود. این شامل 7 & quot؛ LCD HDMI با صفحه لمسی ، LattePanda SBC ، PCB USB Type C PD و چند دستگاه مکمل دیگر
با RTC یک ساعت یکپارچهسازی با سیستمعامل Nixie بسازید!: 7 مرحله (همراه با تصاویر)
ساعت Nixie خود را یکپارچهسازی با سیستمعامل RTC بسازید! این بدان معناست که من به شما نشان خواهم داد که چگونه می توانید لوله های نیکسی را با منبع تغذیه DC ولتاژ بالا کنترل کنید و سپس 4 لوله نیکسی را با آردوینو ، ساعت در زمان واقعی (RTC) و cu… ترکیب می کنم
MP3 Player آردوینو سبک یکپارچهسازی با سیستمعامل!: 8 مرحله (همراه با تصاویر)
MP3 Player آردوینو سبک یکپارچهسازی با سیستمعامل !: پخش کننده Mp3 ممکن است بسیار قدیمی به نظر برسد. گوشی های هوشمند می توانند بسیار بهتر از این عمل کنند! با همه آن برنامه ها و سرویس های پخش ، شما حتی نیازی به بارگیری موسیقی یا آهنگ ندارید. اما وقتی با ماژول DFplayer روبرو شدم ، واقعاً مرا با یک گروه هیجان زده کرد
ساعت بازی یکپارچهسازی با سیستمعامل - آردوینو: 6 مرحله (همراه با تصاویر)
ساعت بازی یکپارچهسازی با سیستمعامل - Arduino: یک ساعت خواب کناری تعاملی ، با صفحه لمسی و تصاویر متحرک ایجاد کنید که می توانید صدای دلخواه خود را برای زنگ هشدار ضبط کنید. این به روز رسانی یک پروژه قبلی است که اکنون شامل یک قاب چاپ سه بعدی و چهار برنامه جداگانه