پروژه, پروژه AVR | از مقدماتی تا پیشرفته, توصیه شده

ساخت WavePlayer بسیار کوچک

ساخت WavePlayer بسیار کوچک

ساخت WavePlayer بسیار کوچک

 

ساخت WavePlayer بسیار کوچک :

این Wave Player (پخش کننده ی صدا) دارای مدار خیلی ساده ای است که فقط از یک کارت حافظه و یک میکروی AVR کوچک ساخته شده است. میکروکنترلرهای خانواده (25/45/85)  ATtinyX5، دارای دو خروجی PWM سریع با فرکانس 250 کیلوهرتز هستند، این ویژگی باعث می شود که قادر به تولید محدوده ی وسیعی از سیگنال های صوتی باشم که برای ساخت یک Wave Player مناسب می باشد.

شاید برای شما مفید باشد: آموزش AVR از 0 تا 100 به همراه جزوه PDF و ویدئو آموزشی

کارت حافظه فقط با شش سیم کنترل می شود: دو سیم برای تهیه توان (برق) و چهار سیم برای سیگنال های کنترلی که به راحتی می توان آن را به یک میکروکنترلر 8 پینی نیز متصل کرد. به نظر می رسد کاربرد اصلی میکروکنترلرهای  ATTINY سری X5 با توجه به وسایل جانبی همراه آن ،بیشتر کارهای مرتبط به  SMPS  است.

به هر حال این پخش کننده صدا بسیار ساده است و مدار خیلی کوچکی دارد . پس برای یک تمرین ساده ی لحیم کاری در ابتدای روز نیز مناسب می باشد!


سخت افزار

ساخت WavePlayer بسیار کوچک

مدار Wave Player مونو

ساخت WavePlayer بسیار کوچک

مدار Wave Player استریو

 

دو مدار از پخش کننده وجود دارد یکی برای حالت منو و یکی برای حالت استریو ، دقت داشته باشید که برای ساخت Wave Player در حالت استریو نیاز به پروگرامر HVSP دارید و چرا که نمی باید حالت ISP را غیرفعال کنید . کارت حافظه استفاده شده از نوع میکرو SD است. قاعدتا با استفاده از سوکت مناسب میتوان از کارت حافظه مینی وکارت  SD استاندارد نیز استفاده کرد.

اسپیکر ها مستقیما به خروجی PWM  متصل شده اند. ممکن است بار برای پورت خروجی سنگین باشد؛ اما نگران نباشید جریان خروجی هیچ وقت از حداکثر قابل تحمل پورت بیشتر نمی شود چرا که ولتاژ تغذیه 3 است. پس این پخش کننده صدای زیادی نخواهد داشت اما صدای مناسبی تولید خواهد کرد که از روی میز با اسپیکر های مناسب به خوبی شنیده خواهند شد.

استفاده اختیاری از یک سلف سری 100μH روی خروجی PWM باعث کاهش مصرف توان خواهد شد.  اگر قصد دارید خروجی صدا را به آمپلی فایر وصل کنید ، فراموش نکنید که با اسنفاده از یک مدار LPF فرکانس های بالا را فیلتر کنید تا کیفیت خروجی بهتر شود. سیگنال PWM را مستقیما به آمپلی فایر وصل نکنید چون باعث ایجاد آسیب می شود.

 

نرم افزار

استفاده از کارت حافظه در پروژه ، به این معنی است که سیستم باید از فایل سیستم FAT پشتیبانی کند. من از ماژول  Petit-FatFs که از ماژول FatFs گرفته شده را استفاده کرده ام. ماژول  Petit-FatFs برای سیستم هایی با میزان حافظه کم و RAM زیر 512 بایت ایجاد شده است. این ماژول برای AVR ها و PIC های کوچک مناسب است.

در آرشیو ، فایل های سورس و Hex آماده برای سخت افزار های موجود وجود دارد. مقدار فیوز با فایل های هگزا ترکیب شده است (اگر از Avrdude استفاده می کنید). با این حال برخی از پروگرامرهای AVR این نوع فایل های Hex را پشتیبانی نمی کنند. در چنین حالتی، قسمت فیوز را از فایل  Hex حذف کنید و آن را به صورت جداگانه پروگرام کنید. مقدار های فیوزی که باید برنامه ریزی شوند در main.c نیز وجود دارند.

در حالت مونو (تکی) از 5 پین ورودی خروجی استفاده می کند و نیازی به تعویض فیوزبیت RSTDISBL نیست.در این حالت می توان با متد ISP پروگرام کرد که توسط همه ی پروگرامرهای AVR پشتیبانی می شود.

در حالت خروجی استریو از تمامی پین های ورودی خروجی به علاوه ی پین ریست استفاده می شود. برای تعویض فیوز RSTDISBL مشکلی وجود دارد و آن این است که به متد high voltage serial programming نیاز داریم. ولی بسیاری از برنامه ریز های AVR از متد HVSP پشتیبانی نمی کنند. متد ISP هم چنین می تواند فیوز RSTDISBL را فقط برای بار اول برنامه ریزی کند اما نمی تواند دستگاه هایی که این فیوز برنامه ریزی کرده را تغییر دهد.

این پخش کننده فقط می تواند فایل های صوتی با فرمت RIFF-WAVE که در واقع فایل های Microsoft wave هستند ، با LPCM ، 8 یا 16 بیت، مونو یا استریو و تا حداکثر نرخ نمونه برداری 48 کیلوهرتز را پخش کند. پخش کننده هنگام قرار دادن کارت حافظه یا فعال کردن برق شروع به پخش فایل ها می کند. اگر یک فولدر صوتی با نام “WAV” در ریشه اصلی کارت وجود داشته باشد، فایل های صوتی به همان ترتیبی که در فولدر قرار دارند پخش خواهند شد. اگر فولدر “WAV” وجود نداشته باشد، فایل های صوتی WAVE موجود در فولدر ریشه پخش می شوند. با فشار دادن دکمه ی سوییچ می توان فایل صوتی بعدی را پخش کرد.

ساخت ماژول صوت

 

برای تبدبل فایل های MP3 به Wave می توانید این مقاله را مطالعه نمایید.

 

دانلود سورس + فایل های Hex

Sisoog_TinyWavePlayer.zip

 

منبع

 

انتشار مطالب با ذکر نام و آدرس وب سایت سیسوگ، بلامانع است.

شما نیز میتوانید یکی از نویسندگان سیسوگ باشید.   همکاری با سیسوگ

17 دیدگاه در “ساخت WavePlayer بسیار کوچک

  1. Avatar for علی علی گفت:

    سلام آیا قابلیت خواندن flac هم داره؟

  2. Avatar for علی علی گفت:

    سلام پروگرامر tnm 7000 قابلیت پروگرام در حالت استریو ای سی داره؟

  3. Avatar for رسول قنبری رسول قنبری گفت:

    سلام.
    ممنون از سایت خوبتون.
    ایا امکان استفاده از کار میکرو SD با ظرفیت های بالا هم هست مثل 16 گیگ؟

    1. Avatar for Zeus Zeus گفت:

      سلام دوست عزیز
      بله فکر نمیکنم مشکلی داشته باشه

  4. Avatar for رسول رسول گفت:

    سلام.
    ممنون از سایت خوبتون.
    ایا این برنامه با کارت های جدید micro sd با ظرفیت های بالا مثل ۱۶ گیگ هم کار میکنه؟

    1. Avatar for Zeus ‌ Zeus ‌ گفت:

      سلام دوست عزیز خواهش میکنم
      بله پشتیبانی میکنه فکر نمیکنم که مشکلی وجود داشته باشه

  5. Avatar for مجهول ابن بهلول مجهول ابن بهلول گفت:

    با سلام و تشکر از سایت و مجموعه خوبتون.
    لطفا یه فیلمی هم از تست عملی پروژه ها تون بذارید.
    خیلی ممنون

    1. Avatar for زئوس Zeus زئوس Zeus گفت:

      این پروژه به شخصه تست کردم و کار میکنه
      سعی میکنم یه فیلم از کارکردش تهیه کنم 🙂

  6. بازتاب: اجرای ملودی موسیقی به وسیله آردوینو و بازر - سیسوگ - Sisoog
  7. Avatar for Ali Ali گفت:

    سایت های مختلف این پروژه رو با قیمت های عجیب میفروشن کلا پروژه WAV پلیر به شکل رایگان تو سایت های ایرانی وجود نداشت که شما برای اولین بار این مطلبو گذاشتین سپاس

    1. Avatar for زئوس Zeus زئوس Zeus گفت:

      سلام دوست عزیز
      خواهش میکنم ِ واقعا هدف ما جلوگیری از فروش پروژه های رایگان هست که متاسفانه توی ایران غوغا میکنه 😐

  8. Avatar for علی علی گفت:

    تو سایت ********* هم یکی از شرکت کننده های مسابقه توی stm32 پیاده سازی کرده.
    البته هم player هست و هم recorder ولی متاسفانه سورس کد نداره.

    1. Avatar for زئوس Zeus زئوس Zeus گفت:

      سایتی که معرفی کردید هیچگونه محتوایی نداشت ! و به نظر کامنت شما تبلیغاتی است برای همین لینک سایت از کامنت حذف شد.

  9. Avatar for محسن کریمی خوشحال محسن کریمی خوشحال گفت:

    با سلام لطفا منبع اصلی این مطلب که سایت elm-chan.org هست را در منابع بفرمایید

    1. Avatar for زئوس Zeus زئوس Zeus گفت:

      سلام دوست عزیز
      اگر دقت کنید پایین صفحه منبع ذکر شده با لینک
      متشکرم

  10. Avatar for کوچیکتون مجیدم کوچیکتون مجیدم گفت:

    بسیار عالی

    1. Avatar for زئوس Zeus زئوس Zeus گفت:

      متشکرم دوست عزیز

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *