امتیاز موضوع:
  • 0 رأی - میانگین امتیازات: 0
  • 1
  • 2
  • 3
  • 4
  • 5
استفاده ازهمه تایمرهادرمد pwm ومشکل درایجادتاخیرطولانی
نویسنده پیام
alirezajf68 آفلاین
تازه وارد

ارسال‌ها: 23
موضوع‌ها: 12
تاریخ عضویت: اردیبهشت ۱۳۹۱

تشکرها : 0
( 1 تشکر در 1 ارسال )
ارسال: #1
استفاده ازهمه تایمرهادرمد pwm ومشکل درایجادتاخیرطولانی
سلام دوستان

من تو یه پروژه ای برا کنترل چندتاموتور از atmega32استفاده کردم.براکنترل دورموتورها ازتمامی تایمرهای میکروتومدpwm استفاده کردم.برد pcb مدار روطراحی وچاپ کردم ونهایی شده.الان بعدگذشت یک ماه لازم شده یه تاخیرچندثانیه ای مثل waitms 5000 توبرنامه ام ایجادکنم.همونطورکه میدونیدایجادتاخیربازمان های طولانی مثل نمونه ذکرشده نیازبه استفاده ازتایمرداره چون ایجادتاخیرهای طولانی بااستفاده ازدستور waitکار درستی نیست وتاخیرباخطاهای زیاداتفاق میفته.حالاسوال من اینه که وقتی من ازتمامی تایمرها تومد pwm استفاده کردم راه حل ایجادتاخیرطولانی ودقیق توبرنامه چیه؟ ممنونم
۱۸-اسفند-۱۳۹۴, ۲۰:۴۳:۳۸
ارسال‌ها
پاسخ
sharin آفلاین
مدیر بازنشسته
*****

ارسال‌ها: 2,053
موضوع‌ها: 28
تاریخ عضویت: مرداد ۱۳۸۹

تشکرها : 3714
( 8171 تشکر در 2772 ارسال )
ارسال: #2
RE: استفاده ازهمه تایمرهادرمد pwm ومشکل درایجادتاخیرطولانی
سلام.

اگر از همه تایمرها برای pwm استفاده کردید، همه تایمرها مشغول هست دیگه.
زمان 5 ثانیه فکر نمی کنم نیاز به دقت داشته باشه با همون دستور wait بایستی کافی باشه.
به هر حال بستگی به جایی که تاخیر رو در برنامه نیاز دارید و وضعیت pwm ها در زمان تاخیر ، شاید بشه یکی از تایمرها رو مداوم مجدد پیکربندی کنید.
اما باز می گم ، همون دستور wait و ... باید کافی باشه ... .

موفق باشید.

۱۸-اسفند-۱۳۹۴, ۲۲:۲۰:۴۷
وب سایت ارسال‌ها
پاسخ
تشکر شده توسط : 1نفر
alirezajf68 آفلاین
تازه وارد

ارسال‌ها: 23
موضوع‌ها: 12
تاریخ عضویت: اردیبهشت ۱۳۹۱

تشکرها : 0
( 1 تشکر در 1 ارسال )
ارسال: #3
RE: استفاده ازهمه تایمرهادرمد pwm ومشکل درایجادتاخیرطولانی
دستور wait اصلا دقیق نیست.من تو مدارم از کریستال خارجی استفاده کردم و همین مدار با کامپیوتر تبادل اطلاعات داره.یعنی کلاکش و فیوزبیت ها درست تنظیم شده.حالا اگه 5 ثانیه بشه 6 ثانیه قابل قبوله ولی خطاش بسیار زیاده. وقتی قراره مدار شبانه روزی روشن باشه و کار کنه اگه یکبار هم اشتباه کنه قابل قبول نیست. حالا فکر کنید از این میکرو تو پروژه های تقریبا حساس استفاده کنن.دنبال یه راه حل اساسی باید بود. قرار نیست از میکر  فقط تو مسابقات رباتیک استفاده کرد. خیلی ها از این میکرو تو پروژه های صنعتی استفاده میکنن و بعضا چنین اشتباهاتی خسارت به بار میاره.
۱۸-اسفند-۱۳۹۴, ۲۳:۵۱:۲۹
ارسال‌ها
پاسخ
sharin آفلاین
مدیر بازنشسته
*****

ارسال‌ها: 2,053
موضوع‌ها: 28
تاریخ عضویت: مرداد ۱۳۸۹

تشکرها : 3714
( 8171 تشکر در 2772 ارسال )
ارسال: #4
RE: استفاده ازهمه تایمرهادرمد pwm ومشکل درایجادتاخیرطولانی
برای هر پروژه باید میکروی درخورش انتخاب بشه.
هنوز هم نگفتید 5 بشه 7 چه اتفاق بدی می افته؟ ( حساسیت تایمینگ 5 ثانیه روی چه موضوعی هست؟ )
تفاوت در حد 1 ثانیه نیست. خطا در حد میلی ثانیه هست که با گذر زمان ، این خطا ها جمع می شه و دچار شیفت زمانی می شه . برای خیلی پروژه ها هم  این موضوع اهمیتی نداره. برای پروژه هایی که نیاز به تایمینگ دقیق دارن هم یک تایمر رزرو می شه.

راه حل دیگه اینه که اگر PWM ها معمولی هستن و فرکانس زیادی ندارند، می تونید نرم افزاری تولیدشون کنید تا تایمرها بیکار بشن و بتونید زمان دقیق محاسبه کنید.

جدا از اینها، برای ارسال و دریافت هایی با پروتکل usart که احتمالا در پروژه تون استفاده کردید و همینطور پروتکل های دیگه ، یه سری وقفه ارسال و دریافت وجود داره که هر وقت داده ای موجود بود میکرو مطلع بشه و اطلاعات رو برداره و ...
خیلی مسائل و راهکار ها وجود داره که از هر کدام باید سرجاش استفاده بشه ... ، به همین منظور نیازه که طراح ابزار کارش رو خوب بشناسه ...

موفق باشید.

۱۹-اسفند-۱۳۹۴, ۰۳:۰۷:۱۰
وب سایت ارسال‌ها
پاسخ
تشکر شده توسط : omid_phoenix, 1نفر
omid_phoenix آفلاین
مدیر بخش
*****

ارسال‌ها: 2,238
موضوع‌ها: 108
تاریخ عضویت: شهریور ۱۳۹۱

تشکرها : 12682
( 15433 تشکر در 4574 ارسال )
ارسال: #5
RE: استفاده ازهمه تایمرهادرمد pwm ومشکل درایجادتاخیرطولانی
سلام
بجای wait با حلقه for میتونید با دقت بیشتر تاخیر مورد نیاز رو ایجاد کنید

۲۰-اسفند-۱۳۹۴, ۰۰:۴۷:۵۷
ارسال‌ها
پاسخ


پرش به انجمن:


کاربرانِ درحال بازدید از این موضوع: 1 مهمان

صفحه‌ی تماس | IranVig | بازگشت به بالا | | بایگانی | پیوند سایتی RSS