(Bascom _AVR) راه اندازی تایمر 2 در مد مقایسه ای (Compare) پرش پردازنده میکروکنترلر به حلقه اصلی (مهندسی برق _ الکترونیک)

پژوهشگر و نویسنده: (  افشین رشید )

نکته: تایمر دو Timer 2در مد مقایسه ای پیکر بندی میشود در این مُد مقدار شمرده شده توسط تایمر با عددی که شما در برنامه تعیین میکنید ، مقایسه میشود .

در صورت اختلاف مقدار شمرده شده با عدد شما وضعیت پایه oc2) پایه 21 میکروکنترلر AVR مگا16 ( مطابق انچه که در برنامه تعیین کردید تغییر میکند ) 

CONFIG TIMER2 = TIMER ,COMPARE = CLEAR |SET |TOGGLE|DISCONNECT,PRESCALE =1|8 

|32|64 |256|1024,CLEAR TIMER=_ 1|0 

DISCONNECT|TOGGLE|SET 

|CLEAR = COMPARE : زمانی که مقدار شمرده شده توسط تایمر 2 با مقدارCOMPARE ، که بعدا معرفی میشود ، برابر شد ،پایه خروجی oc2 می تواند SET)یک), (صفر), CLEAR) برعکس ) TOGGLE و یا ارتباط پایه با مد مقایسه ای قطع شود (پایه oc2 به یک ورودی خروجی عادی تبدیل شود).

1024|256 |64|32 |8|1 =PRESCALE 

عدد PREACALE فرکانس (دقت ) تایمر را معیین میکند.(ممکن است دربعضی از میکرو ها اعداد 32 و 128 موجود نباشد ) 

0|1 = TIMER CLEAR : با انتخاب گزینه 1، محتوای تایمر/کانتر در زمان تطابق مقایسه ای RESET) 0000) $میشود  و در صورت انتخاب 0 مقدار شمرده شده تغییری نمیکند. با دستورات زیر میتوان عددی را که محتوای تایمر باید با ان مقایسه شود را تعیین کرد

Compare1 = x یاOcr2=x 

به جای x یک عدد ثابت یا یک متغییر قرار میگیرد ، هنگامی که عدد شمرده شده توسط تایمر یک با اعداد گذاشته شده برابر شد میکرو وضعیت پایه های مربوطه را همانگونه که در پیکربندی مشخص کردید تغییر میدهد.

با دستور فعال سازی وقفه مقایسه هنگامی که مقدار شمرده شده توسط میکرو با Compare یا ocr2 برابر شد cpu میکرو با دستور lable oc2 on به برچسب مورد نظر برش میکند و در آنجا عملیات دلخواه را انجام میدهد، در صورتی که در پایان برچسب دستور return گذاشته شود cpu به حلقه ی اصلی پرش میکند.

پژوهشگر و نویسنده:  دکتر  (  افشین رشید)

دکترایِ  تخصصی نانو _ میکرو الکترونیک