با سلام به دوستان
قصد دارم یک صفحه کلید keypad رو به یک میکرو avr متصل کنم بطوری که با فشار هر کدام از اعداد روی کیپد یک صدای تون شبیه به تلفن از بلندگو یا بازر شنیده بشه
به نظر شما چیکار باید کرد ؟
نمایش نسخه قابل چاپ
با سلام به دوستان
قصد دارم یک صفحه کلید keypad رو به یک میکرو avr متصل کنم بطوری که با فشار هر کدام از اعداد روی کیپد یک صدای تون شبیه به تلفن از بلندگو یا بازر شنیده بشه
به نظر شما چیکار باید کرد ؟
اگه با بسکام کار میکنید؛ کامپایلر بسکام یه دستور داره به نام sound. با این دستور میتونید صدا با فرکانس دلخواهتون رو روی بازر پخش کنید...
برای زبان c هم یک پروژه هست که با تایمر 16 بیت و خروجی pwm سیگنال dtmf میسازه و اگر تغییرات بدی میتونی صدای دلخواه تولید کنی. دنبال dtmf بگرد
با تشکر از شما
من با بیسکام کار می کنم
این دستور beep جزو دستورات پنهان هست ؟ چون تو help نرم افزار من نیست
میشه کمی بیشتر توضیح بدید
فرکانس های تون رو هم نمیدونم تو چه بازه ای هستن
ببخشید اشتباه شد، دستور sound هستش...
ممنوننقل قول:
می خواستم بدونم بلندگوی مناسب چی بذارم ؟
بازر گذاشتم اصلا خوب نبود با تغییر فرکانس فقط بلندی صدا کم و زیاد می شد
پایه ی میکرو که pwm تولید میکنه به ورودی یک فیلتر پایین گذر آپ امپی بدین بعد خروجی آپ امپ رو به یک بلندگو بدین. برای این میگم یک وقت جریان پایه زیاد نشه و میکرو نسوزه.
اگه بجای فیلتر از ترانزیستور استفاده کنم اشکالی داره ؟نقل قول:
درضمن منظورم نوع بلندگو بود من بازر استفاده کردم صدای خوبی نمی گیرم
بلندگوی پیزو وصل کردم اصلا صدا نمی گیرم
از همین بلندگوهای معمولی 32 اهمی استفاده کنید. یک خازن هم سری کنید که آفست رو حذف کنه.
ترانزیستور به مهارت بیشتری نیاز داره. ما اینجا تقویت نمیخوایم. پیک خروجی صدا حدود 2 ولت میشه و قابل شنیدنه
ترانزیستور رو فقط برای تقویت جریان بلنگو استفاده کردمنقل قول:
فرق پیزو با بلندگوهای دینامیکی چیه ؟ میدونید ؟
در ضمن اگه از بلنگوی دینامیکی 8 اهمی استفاده کنم ایرادی داره ؟
برای تولید صدا که از پیزو استفاده نمیکنن. بلندگو برای این هدف ساخته شده.
اگر از تقویت کننده استفاده کنید 8 اهمی مشکلی نداره. گفتم 32 اهمی رو با خازن سری کنید مستقیم برای آزمایش به پایه میکرو وصل کنید که فشار کمتری به میکرو بیاد.
دوست عزیز تا امروز وقت نکرده بودم تست کنمنقل قول:
ولی امروز یه بلندگوی 32 اهمی رو با یه خازن 1نانوفاراد به پایه میکرو وصل کردم ولی هیچ صدایی شنیده نمیشد
بلندگو های مختلفی وصل کردم بازم هیچ صدایی نمیشنیدم
به نظرتون چیکار کنم ؟
حالا چرا 1 نانو فاراد؟ 100 میکرو فاراد باشه. پلاریته رو دقت کنید چون برای دکوپله کردن ولتاژ میزارید. پایه ی مثبت خازن به پایه میکرو وصل بشه و پایه منفی به اسپیکر. پایه ی دیگر اسپیکر هم زمین بشه
ممنون از اینکه پیگیر هستیدنقل قول:
والا همین کارو کردم فقط یه صدای تق شنیدم
من با نرم افزار بیسکام کار می کنم و دستور زیر
Sound Portd.1 , 1 , 60000
حالا چطور می تونم این ایرادو برطرف کنم ؟
نمیدونم بسکام چطور کار میکنه که بتونم کمک کنم. من با کدویژن و تایمر 16 بیتی و مثالی که خود اتمل داده جواب گرفتم و با چک آبی روی خط تلفن شماره گیری کردم.
از تایمر 16 بیتی بصورت pwm استفاده کردید ؟نقل قول:
بله با تایمر pwm تولید میکنه. روش کار به این صورته:
ابتدا یک آرایه تعریف میشه که مقدار دامنه ی یک موج سینوسی رو مثلا در 20 سمپل ذخیره میکنه. حالا در هم بار که تایمر سرریز میکنه مقدار بعدی این آرایه در تایمر قرار میگیره و متناسب با مقدار آرایه دیوتی سایکل تغییر میکنه و درنتیجه دامنه ی خروجی. بعد از اینکه هر 20 سمپل تموم شد یک موج سینوسی داریم و تکرار میکنیم. برای تغییر فرکانس هم باید فرکانس پالس pwm تغییر کنه.
دیوتی سایکل برای دامنه و فرکانس pwm برای فرکانس خروجی. اگر 20 سمپل داشته باشیم فرکانس سینوسی میشه یک بیستم فرکانس pwm ما
دستور زیر هم امتحان کنید:
Sound PORTD.1 , 500 , 400
ممنوننقل قول:
جواب خوبی نداد ولی وضعیت خیلی بهتر شد
فکر کنم اون اعداد 500 و 400 رو تغییر بدم جواب بهتر میشه
خیلی ممنون از لطف شما