تبیان، دستیار زندگی
هر Timer می تواند چهار رفتار متفاوت داشته باشد آه به هر یك از اینها یك مد کاری می گویند. از این چهار مد، ما تنها دو مد را بررسی می آنیم. مد ١ و مد ٢.
بازدید :
زمان تقریبی مطالعه :

چگونه از تایمرها استفاده کنیم؟

در مقاله قبلی به معرفی تایمر پرداختیم اکنون به بررسی مدهای آن خواهیم پرداخت

هر Timer می تواند چهار "رفتار" متفاوت داشته باشد که به هر یك از آنها یك "مد کاری" می گویند. از این چهار مد، ما تنها دو مد را بررسی می کنیم. مد 1 و مد 2

عملکرد Timer در مد 1 :

timer

Timer در مد 1 از تمام 16 بیت خود برای شمارش استفاده می کند، یعنی بزرگترین عدد در Timer می تواند 65535 باشد. نتیجتاً طولانی ترین تأخیری که Timer در مد 1 می تواند به تنهایی ایجاد کند، کمی بیش از 65 میلی ثانیه است . در این مد، هر بار که Timer سرریز می شود، باید مقدار مورد نظر را دوباره در آن Load کرد . این عمل نیاز به چند میكروثانیه زمان دارد و زمانی که بازه زمانی مورد نظر کوچك باشد (مثلاً تولید موج KHz 100) این مسئله دقت را کاهش می دهد (مثلاً به جای KHz100، KHz80 خواهد شد)

عملكرد Timer در مد2 :

timer

این مد مشكلی که در مورد مد 1 مورد بحث قرار گرفت را برطرف می کند. در مد 2 تنها هشت بیت از Timer برای شمارش استفاده می شود (بنابراین طولانی ترین تأخیر می تواند 255 میكرو ثانیه باشد). امّا 8 بیت دیگر Timer مقدار بعدی که باید در 8 بیت شمارنده قرار داده شود را ذخیره می کند. مثلاً برای تولید یك موج 100 KHz عدد 10_ 255  را هم در رجیستر شمارنده و هم در رجیستری ذخیره کننده قرار می دهیم، زمانی که برای اولین بار Overflow اتفاق بیفتد، با اینكه محتوای رجیستر شمارنده صفر شده است درست پس از Overflow ، به طور خودکار و توسط سخت افزار، مقدار 10-255 از رجیستر ذخیره کننده به رجیستر شمارنده کپی می شود و شمارش ادامه می یابد . به این ترتیب بدون اینكه زمان اضافی تلف شود Timer "دقیقا" هر 10 میكروثانیه یك بار Overflow می شود. این خاصیت را Auto Reload گویند.

رجیسترها و تنظیمات Timer :

پیش از آنكه از Timer ها استفاده کنیم لازم است ابتدا  Timer را برای کار در مد مورد نظر تنظیم کنیم ، علاوه بر تعیین مد تنظیمات دیگری نیز لازم است که در زیر شرح داده می شود.

جدول رجیستر TMOD) Timer Mode) در زیر آمده است :

0

0

0

0

0

0

0

0

Value after seret

T0 M0

T0 M 1

C/T0

Gate0

T1M0

T1M1

C/T 1

Gate1

TMOD

bit0

bit1

bit2

bit3

bit4

bit5

bit6

bit7

Bit name

در قسمت بعد شرح کار بیت ها به طور مفصل توضیح داده خواهد شد

ادامه دارد..

برگرفته از سایت: AVR و IranIct

تنظیم : سیدخاموشی