اطلاعیه

Collapse
No announcement yet.

کاربرد اصلی تایمر ها در AVR چیست؟

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

    کاربرد اصلی تایمر ها در AVR چیست؟

    سلام خدمت شما دوستان عزیز
    ممنون میشم پاسخ بدین
    با تشکر فراوان

    #2
    پاسخ : کاربرد اصلی تایمر ها در AVR چیست؟

    توی PIC بیشتر نقش شمارنده داره و همینطور برای اینکه میکرو هنگ نکنه استفاده میشه! WDT

    دیدگاه


      #3
      پاسخ : کاربرد اصلی تایمر ها در AVR چیست؟

      خوب همون طور که از اسمش معلومه برای تایمینگ استفاده می شه . یعنی می تونی تاخیر ایجاد کنه
      وظیفه اصلیش همینه !
      حالا چیزهای دیگه هم ازش مشتق گرفته می شه !
      Aristar Group - Always And Forever

      دیدگاه


        #4
        پاسخ : کاربرد اصلی تایمر ها در AVR چیست؟

        در واقع تاخیر هم یکی از کارهایی هست که میتونید با تایمر انجام بدید. میشه اینجوری مطلب رو کمی روشن تر کرد:
        تایمر جدا از برنامه ای که شما نوشتید و در حال اجرا هست کار خودش رو انجام میده و در واقع یک شمارنده مستقل هست که تنظیماتش رو شما انجام میدید. وظیفه تایمر در واقع شمارش هست و زمانی که این شمارش به حد تعیین شده ای برسه میتونه پردازشگر رو به اجرای دستوراتی خاصی هدایت کنه.
        از اونجا که تایمر دقیق هست معمولا در زبان های سطح بالا و متوسط برای ایجاد تاخیر هم از اون استفاده میشه چون تاخیری که تابع تاخیر در زبان سطح بالا ایجاد میکنه خیلی دقیق نیست. به همین خاطر هست که در خیلی از موارد از تایمر برای ایجاد تاخیر هم استفاده میشه، تفاوت تایمر میکرو با تایمری که شما خودتون ممکن هست با برنامه نویسی بسازید در این هست که تایمر شما از روی کدهای نوشته شده شما اجرا میشه و CPU رو به خودش مشغول میکنه ( از روی نرم افزاری که شما نوشتید اجرا میشه )، به این معنی که اگر برنامه شمارش شما داره اجرا میشه نمیتونید کار دیگه ای انجام بدید، اما زمانی که از تایمر خود میکرو استفاده میکنید این تایمر مستقل از اجرای کد عمل میکنه، با این روش پردازشگر میتونه کار خودش رو انجام بده و زمانی که تایمر وقفه رو اعلام کرد ( زمان تغیین شده سپری شد ) کاری که براش در نظر گرفته شده بوده انجام میشه ( کدی که نوشته بودید براش رو اجرا میکنه ) در واقع دلیل وجود تایمر در میکرو این هست که شما بتونید کنترل زمان رو مستقل از کدهایی که در حال اجرا هتسند در دست بگیرید.
        به عنوان مثال برای روشن و خاموش کردن LED در 1 ثانیه من تفاوت کار با تایمر برای ایجاد تاخیر و کار بدون تایمر رو مینویسم:
        اگر شما از تایمر استفاده نکنید و تاخیر 1 ثانیه رو با کدی که نوشتید دست کنید: اول طبق برنامه LED مثلا خاموش میشه، حالا کد مربوط به تاخیر شروع به اجرا شدن میکنه یعنی پردازشگر مشغول میشه به اجرای کد تاخیر، در این حالت پردازشگر نمیتونه تا این 1 ثانیه تاخیر تمام نشده کار دیگری انجام بده، مگر اینکه تاخیر رو بیخیال بشه و به قسمت دیگری از کد بره و اجرا کنه، پس در نتیجه پردازشگر شما باید 1 ثانیه درگیر با تاخیر باشه و بعد که اجرای این کد یک ثانیه تمام شد ادامه برنامه که روشن کردن LED هست رو انجام بده.
        حالا اگر شما برای ایجاد این تاخیر از تایمر استفاده کنید: اول شما تنظیمات تایمر رو انجام میدید ( برای مدت 1 ثانیه مقدار دهی میکنید و مشخص میکنید که زمان تایمر که تمام شد LED رو روشن کنه و بعد تایمر رو فعال میکنید ) حالا بعد برنامه اصلی شروع به اجرا شدن میکنه که در واقع LED خاموش میشه، تایمر حالا داره به صورت مجزا کار خودش رو انجام میده و شما میتونید توی این فرصت یک ثانیه پردازشگر رو به هر کار دیگه ای که بخواید مشغول کنید، یک ثانیه تایمر که تمام بشه CPU خود به خود هر جای برنامه باشه اون رو موقتا نگه میداره و دستورات مربوط به تایمر رو اجرا میکنه ( که در اینجا روشن کردن LED بود ) بعد دوباره بر میگرده و ادامه کاری که انجام میداد رو انجام میده.
        پس مشخص شد که توی این حالت شما میتونید به جای اینکه پردازشگر رو با حلقه های تاخیر درگیر کنید میتونید در این زمان از اون استفاده های دیگه بکنید ضمن اینکه عملیات تاخیر هم داره توسط تایمر کنترل میشه و زمانی که وقتش رسید کدهای مربوطه خود به خود اجرا میشه.
        پس به طور خلاصه: تایمر میکرو وسیله ایست برای کنترل زمان که به صورت سخت افزاری مستقل از پردازشگر عمل میکنه.
        امیدوارم بد توضیح نداده باشم. اگر جایی اشتباه بود دوستان لطف کنند اصلاح کنند.
        ممنون
        از آنجا که گاهی فرصت بازخوانی پست نیست، بابت غلط های املایی و نگارشی احتمالی معذرت میخوام.
        هیچیک از پاسخ هایی که میدم را کاملا تایید نمیکنم و ممکن هست اشتباه کرده باشم، اگر من به نوشته ام مطمئن هستم شما مشکوک باشید.
        اگر در حل مشکل من کمک کردید و دکمه تشکر رو نزدم حتما فراموش کردم کوچکترین کمک شما برایم ارزشمند است!
        اگر به هر طریقی از من ناراحت شدید حتما با یک پیام خصوصی تذکر بدهید تا مشکل رو حل کنیم و رابطه ی صمیمانه، پایدار بماند.
        شاد و موفق باشید

        دیدگاه

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