PDA

توجه ! این یک نسخه آرشیو شده میباشد و در این حالت شما عکسی را مشاهده نمیکنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : PWm



arash12
18-03-2010, 12:26
مي خواستم بدونم چگونه ميشه با يك ميكرو و بدون استفاده از آي سي هاي مخصوص pwm و با استفاده از تايمرهاي داخلي ميكرو تعداد زيادي خروجي pwm ايجاد كرد . ممنونم اگر كسي در اين زمينه راهنمايي ام كنه.
پيشاپيش سال نو رو به همه تبريك ميگم

mehrdadgh
18-03-2010, 14:29
اگه برای تابلوهای چند رنگ می خواهید برای این کار پردازنده های مخصوصی وجود دارند که فکر نکنم بشه تو ایران گیرشون آورد !!

همون آیسی ها بهترین گزینه هست فعلا

armstk
18-03-2010, 16:08
سلام
شما میتونین به صورت نرم افزاری تمام i\o های میکرو رو تبدیل به pwm کنین مثلا با یک مگا 16 حدودا میشه 32 تا pwm درست کرد

a_h
18-03-2010, 20:15
دوست عزیز armstk شما لطف کن این روش رو بصورت اموزشی بذار ممنون میشیم.

mehrdadgh
19-03-2010, 17:56
اگر برای تابلو روان می خواهید فکر نکنم میکرو به جز اندازه های کوجک جوابگوی شما باشه ( رو وقفه ها که اصلا حساب نکن چون دو سه تا هستن مگه اینکه با سی و ریست بشه که اونم زیاد خوش بین نیستم دقیق باشن )

Division
19-03-2010, 21:22
سلام
شما میتونین به صورت نرم افزاری تمام i\o های میکرو رو تبدیل به pwm کنین مثلا با یک مگا 16 حدودا میشه 32 تا pwm درست کرد


اينه كه شما فرمودين فكر نكنم عملي باشه 8O
چون برا توليد هر pwm شما محدوديت سخت افزاريم دارين مثلاً تعداد تايمراي مستقل زيادي رو بايد داشته باشين و برا هر تايمر واحد مقايسه كننده اي لازمه كه بتونين pwm تك شيب يا دو شيب توليد بكنين .

يه راه داره اونم اينه از مدرات جداگانه اي استفاده كنين ولي افسار كنترليشون رو بديد دست ميكرو :wink:

1nafar
20-03-2010, 08:10
سلام
شاید بشه با استفاده از تایمر 1 کمترین زمان ممکنه رو تولید کرد و بعد از هر بار سرریز شدن اون به چند تا متغیر یه مقداری رو اضافه کرد .
بعد با استفاده از دستورات شرطی یا select case ، به ازای مقادیر مختلف متغیر های موجود پایه های رو صفر و یک کرد .
این روش چند تا عیب داره :
1- فرکانس pwm به کم میشه
2- در صورتی که بخوایید برنامه رو بعدا تغییر بدید ، دچار مشکل میشید .