سلام دایی جان
دقیقا متوجه منظورت نشدم اما خودم با PWM صدا تولید می کنم. یکی از خروجی های PWM میکرو رو به یه فیلتر RC میدم و خروجی فیلتر رو به یه آمپلیفایر صوتی میدم.
توی برنامه مقدار دیوتی سایکل PWM رو که تغییر بدی صدا تولید میشه. می تونی از یه مموری کارت که توی فایل صوتی هست داده ها رو بخونی و به رجیستر PWM بدی تا اون فایل پخش بشه.
با عرض پوزش خدمت دایی های عزیزم تا اطلاع ثانوی به اینترنت دسترسی ندارم.
سلام دایی جان
دقیقا متوجه منظورت نشدم اما خودم با PWM صدا تولید می کنم. یکی از خروجی های PWM میکرو رو به یه فیلتر RC میدم و خروجی فیلتر رو به یه آمپلیفایر صوتی میدم.
توی برنامه مقدار دیوتی سایکل PWM رو که تغییر بدی صدا تولید میشه. می تونی از یه مموری کارت که توی فایل صوتی هست داده ها رو بخونی و به رجیستر PWM بدی تا اون فایل پخش بشه.
فرکانس pwm
مقاومت و خازن ؟
چند بزاریم کیفیت صدا خوب بشه اخه 0 تا 255 رنج کمی هست صدا خوب در نمیاد :cry:
سلام دایی های گلم
از AVR و PWM نباید انتظار صدای 16 بیتی داشته باشم. واسه کیفیت بالا می تونید از آی سی های CODEC مثل VS1003 استفاده کنید.
البته صدای 8 بیتی اونقدرها هم بی کیفیت نیست. تازه اعوجاج آمپلیفایر و نویز باعث میشه ما به ندرت صدای 16 بیتی واقعی به گوشمون برسه.
هرچی فرکانس PWM بالاتر باشه می تونیم پهنای باند بیشتری توی صدای خروجی داشته باشیم. مثلا یه میکرو با کریستال 20 مگ می تونی PWM هشت بیتی با فرکانس 20000/255 = 78 کیلوهرتز تولید کنه. اگه یه فیلتر 5 کیلوهرتز بهش وصل کنیم می تونیم صدای خوبی داشته باشیم. هرچی فرکانس فیلتر رو پایینتر بیاریم نویز کمتر و صدا بم تر میشه و برعکس.
فیلتر پایین گذر با فرکانس قطع 5 کیلوهرتز رو میشه با مقاومت 1 کیلو اهم و خازن 33 نانو پیاده سازی کرد.
البته کسی که می خواد توی کار صوتی تخصصی کار کنه از فیلترهای اکتیو استفاده می کنه.
با عرض پوزش خدمت دایی های عزیزم تا اطلاع ثانوی به اینترنت دسترسی ندارم.
وقتی یه موج مربعی رو به فیلتر پایین گذر(با فرکانس قطع بسیار کمتر از فرکانس خود موج) بدیم، چیزی از موج مربعی باقی نمی مونه جز مولفه DC اون.
اگه به آنالیز فوریه موج مربعی نگاهی بندازی میتونه بهتر این موضوع رو درک کنی.
این ولتاژ DC در خروجی فیلتر متناسب با دیوتی سایک موج مربعیه. مثلا اگه دامنه موج مربعی بین صفر و 5 ولت باشه و دیوتی سایکلش 50 درصد باشه، با عبور از فیلتر پایین گذر ولتاژ دی سی 2.5 ولت خواهیم داشت.
این قضیه پایه و اساس تولید سیگنال به روش PWM است.
یعنی اگه دیوتی سایکل یک موج مربعی رو متناسب با دامنه یک سیگنال صوتی تغییر بدیم،بعد از عبور فیلتر پایین گذر، همون صدا رو بصورت ولتاژ خواهیم داشت.
با عرض پوزش خدمت دایی های عزیزم تا اطلاع ثانوی به اینترنت دسترسی ندارم.
سلام
حالا بهترین راه که صدا بهتر در بیاد چیه ایا ای سی های هست که با میکرو ارتباط برقرار کنه و صدا در بیاره
ای سی vs1003 دکودر mp3 و... هست چی کار میکنه در پخش mp3
اگر درباره dac هم صحبت کنی ممنون می شم البته یکم ساده تر بگو :sad:
با تشکر
oo:
در مورد vs1003 بهتره بیخیال شی خیلی سخت پیچیده و مشکلات زیاد داره
در ضمن اون طوری که من می دونم باید mp3 بهش داد تا کار کنه تبدیل صدا هم به این فرمت سرعت خیلی زیاد در عین حال برنامه نویسی خیلی سختی می خواد پرو تکل ارتباطی spi هست که در حال منسوخ شدن هست!!
بازم میگم من که از این ای سی خیری دید م لا اقل من نتونستم توی 4 ماه فعالیت روی این چیپ ازش جواب بگیرم
شما هم بیخایل برو یه چیپ با خروجی انالوگ پیدا کن خودتو راهت کن
atxmeg 32
VS1003 و امثال این آی سی ها هر روز با اسم ها و عناوین مختلف وارد بازار می شود وهیج توجیح تولیدی ندارند امروز هست فردا ممکنه نباشه
من خودم با میکرو تا 25 کیلو هرتز هم تونستم صدا ضبط و پخش کنم کار نسبتا ساده ای هست البته اولش یه مقدار دنگ فنگ داره ولی شدنش می شه خواستم فرکانس کاری رو ببررم بالاتر از 25 اما ADC میکرو جواب نداد البته من 8 بیتی ذخیره سازی کردم می دونم اگر 10 بیتی می بود خیلی بهتر جواب می داد صدا ضبط شده هم بد نبود خوب دیگه در حد خودش البته من از آی سی فلش برای ذخیره سازی استفاده کردم
جالب بدونید من از دیجیتال به آنالوگ هم استفاده کردم ولی در نهایت PWM میکرو در مد FAST در فرکانس 16 کیلو بهترین نتیجه رو داد.
موفق باشید.
نادانترین مردم کسانی هستند که فکر می کنند داناترین آنها هستند.
دیدگاه