اطلاعیه

Collapse
No announcement yet.

مشکل ایجاد تاخیرباتایمر توسط میکرو

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

    مشکل ایجاد تاخیرباتایمر توسط میکرو

    سلام دوستان.
    میخوام مقدار یکی از تایمرهای میکرو را مقدار دهی اولیه کنم و میکرو مشغول قسمت اصلی برنامه باشه بدون اینکه به این قسمت سر بزنه و وقتی سریز اتفاق افتاد فراخوانی اتفاق بیافتد
    منتها این تایم 4 دقیقه باشد.یعنی سریز بعد از 4 دقیقه اتفاق بیافتد
    جدیدترین ویرایش توسط leader.; ۱۳:۰۸ ۱۳۹۷/۰۵/۰۶.

    #2
    پاسخ : مشکل ایجاد تاخیرباتایمر توسط میکرو

    نوشته اصلی توسط leader. نمایش پست ها
    سلام دوستان.
    میخوام مقدار یکی از تایمرهای میکرو را مقدار دهی اولیه کنم و میکرو مشغول قسمت اصلی برنامه باشه بدون اینکه به این قسمت سر بزنه و وقتی سریز اتفاق افتاد فراخوانی اتفاق بیافتد
    منتها این تایم 4 دقیقه باشد.یعنی سریز بعد از 4 دقیقه اتفاق بیافتد
    سلام
    4 دقیقه واقعا زمان زیادیه! نمیشه تایمر AVR رو جوری تنظیم کرد که سرریزش 4 دقیقه طول بکشه. شما باید از تکنیک های دیگه ای استفاده کنید. مثلا متغیری تعریف کنید که با هربار سرریز تایمر 1 واحد به مقدارش اضافه بشه و بعد از اینکه به مقدار خاصی رسید، یا بهتره بگم زمان 4 دقیقه سپری شد، کار مورد نظر انجام بشه. البته اگر دقت خیلی مهمه براتون، باید محاسبات دقیقی درمورد نحوه تنظیم تایمر و تعداد شمارش اون متغیر و.. انجام بشه

    دیدگاه


      #3
      پاسخ : مشکل ایجاد تاخیرباتایمر توسط میکرو

      سلام
      دوست عزیز میکروکنترل های AVR دارای دقت بالایی در تاخیر نیستن و تا حدود 10 ثانیه دقتشون خیلی بالاست بعد از این مقدار به صورت تصاعدی دارای خطا میشن
      بهترین کار اینه این تایم رو با کمک آی سی 555 یا NE555 که از چند ثانیه تا چند ساعت رو با دقت بالا ایجاد میکنه انجام بدید.

      دیدگاه


        #4
        پاسخ : مشکل ایجاد تاخیرباتایمر توسط میکرو

        تشکر از لطف دوستان.
        اینکه 4 دقیقه برای سریز زیاده که خب مشخصه.
        دنبال راحلی بودم که بتونم بدون درگیر نمودن CPU و از دست دادن تایم در این خصوص بتونم یه همچین زمانهایی را ثبت کنم.
        امکان اضافه نمودن سخت افزار جانبی یا اضافی وجود ندارد و این کار حتما باید توسط خود میکرو انجام گیرد.

        دیدگاه


          #5
          پاسخ : مشکل ایجاد تاخیرباتایمر توسط میکرو

          با میکرو های معمولی امکانش نیست دقت پایینی دارند و خطای زیاد فک کنم اگر از میکرو های 32 بیتی یا میکروپروسسور های 64 بیتی استفاده کنید بهتر باشه
          ضمن اینکه تابع delay به نوبه ی خود CPU و تایمر رو اشغال میکنن.

          دیدگاه

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