اطلاعیه

Collapse
No announcement yet.

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

Collapse
X
 
  • فیلتر
  • زمان
  • Show
Clear All
new posts

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

    با سلام خدمت دوستان عزیز
    من برنامه ای دارم که از تایمر استفاده میکنه و با هر بار سر ریز شدن تایمر وقفه ایجاد شده و یه قسمتی از برنامه از اول اجرا میشه
    مشکل اینجاس که توی برنامه از حلقه for استفاده شده که حاوی یه سری محاسبات ریاضی از جمله sin, cos است، در حالت عادی و بدون استفاده از تایمر، با افزایش تکرار این حلقه هیچ مشکلی برای برنامه ایجاد نمیشه مگر تکرار رو خیلی زیاد کنم مثلا 1000 که کم کم باعث کاهش سرعت برنامه میشه که منطقیه. با فعال کردن تایمر اگه تکرار رو روی 10 یا 12 قرار بدم سرعت برنامه به شدت کاهش پیدا میکنه و با قرار دادن اون روی 14 برنامه کاملا متوقف میشه و اصلا خطهای اولیه برنامه که خارج از تایمر هستند هم اجرا نمیشن، در واقع برنامه به طور کامل از کار میفته!
    فک کردم که ممکنه با افزایش تکرار حلقه قبل از اتمام محاسبات تایمر سر ریز میکنه و وقفه اتفاق میفته و مشکال اینجاست . به همین دلیل برای افزایش زمان سر ریز تایمر از تایمر 16 بیتی استفاده کردم و مشکل در ازای از دست دادن زمان حل شد ، ولی غیر منطقی به نظر میاد چون محاسبات انقدر هم پیچیده نیست که به همچین مشکلی بر بخورم در ضمن مثلا وقتی روی 12 میزارم مدار جواب میده ولی با سرعت خیلی پایین در صورتی اگه این مشکل که گفتم به وجود اومده بود برنامه باید جواب اشتباه میداد نه اینکه سرعت بیاد پایین.
    دلیل خاصی داره که با استفاده از تایمر سرعت برنامه انقدر کم میشه؟

    #2
    پاسخ : کاهش سرعت برنامه در اثر استفاده از تایمر

    برنامه + شماتیک=راهنمایی
    اینطوری هرچی بگیم شاید به جواب نرسی
    ... و (بدانيد) گرفتن تصميمهاى محكم (براى رسيدن به اهداف بزرگ) با خوش گذرانى و سفرهآ‌هاى رنگين سازگار نيست و چه بسيار كه خواب شبانه تصميمهاى محكم روز را از ميان برده و تاريكيآ‌ها، خاطره همتآ‌هاى بلند را از يادها محو كرده است. (نهجآ‌البلاغه، خطبه211)

    امام علي (ع):کسي که به وقت ياري رهبرش در خواب باشد، با لگد دشمنش بيدار مي شود (غررالحکم،ص 422)

    دیدگاه


      #3
      پاسخ : کاهش سرعت برنامه در اثر استفاده از تایمر

      باید کدتون را بذارید. احتمالا حجم کد داخل وقفه و دفعات سرریز زیاده که این اتفاق میفته.

      دیدگاه

      لطفا صبر کنید...
      X