(Bascom AVR)استفاده از وقفه مد Capture کانتر 1 و پیکر بندی تایمر/کانتر یک در مد PWM (مهندسی برق _ الکترونیک)

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

نکته: مد Capture کانتر یک نیز مانند دیگر مد ها دارای یک منبع وقفه است که میتوانید با دستور Icp1 Enable آن را فعال کنید تا با دستور lable icp1 On، هنگامی که پالسی به پایه icp اعمال شد ، cpu به برچسب مورد نظر پرش کند و در انجا عملیات دلخواه را انجام دهد.

هنگامی که پالسی به پایه icp اعمال شود ،تعداد پالس شمرده شده توسط کانتر1 در ریحیستر Capture1ریخته میشود و cpu به برچسب q برش میکند و در انجا مقدار Capture1 را بر روی lcd نمایش میدهد. pwm یا مدولاسین پهنای پالس یکی از امکانات پرکاربرد در avr میباشد ، از این موج برای کنترل دور موتور ساخت پالس مربعی و دیگر پالس ها و ... استفاده میشود ، در این نوع مدولاسیون دامنه پالس ثابت است و نسبت زمان صفر به یک آن تغییر میکند برای درک بیشتر موضوع بهتر است کلیه مثالها را اجراکنید. راه اندازی تایمر/کانتر 1 در مد pwm با دستورات زیر انجام میشود : 

Config Timer1 = Pwm,Pwm = 8|9|10 , Compare A Pwm=Clear Up |Clear Down 

|Disconnect ,Compare B Pwm =Clear Up |Clear Down |Disconnect , 

Prescale=1|8|64|256|1024 

10|9|8 = Pwm : pwm میتواند 8 یا 9 یا 10 بیتی باشد که مقدار بیت هرچه بیشتر یاشد دقت موج بیشتر است (تعدا پله بیشتر است ) pwm 8 بیتی تا 256 سرریز میشود (شما میتوانید 256 واحد ان را کم یا زیاد کنید) pwm   9 بیتی تا 512 و pwm 10 بیتی تا 1024 سر ریز میشود. موج ، Clear Up گزینه از استفاده صورت در: : Compare A Pwm=Clear Up |Clear Down |Disconnectpwm از سطح 1 شروع میشود و در صورت انتخاب Down Clear ، موج pwm از سطح صفر شروع میشود و درصورت انتخاب Disconnect ، هنگامی که مقدار pwm با pwm1a که در برنامه مشخص میشود برابر شد ، ارتباط پالس با پایه ی oc1a قطع میشود . موج ، Clear Up گزینه از استفاده صورت در: : Compare b Pwm=Clear Up |Clear Down |Disconnect pwm از سطح 1 شروع میشود و در صورت انتخاب Down Clear ، موج pwm از سطح صفر شروع میشود و در صورت انتخاب Disconnect ، هنگامی که مقدار pwm با pwm1b که در برنامه مشخص میشود برابر شد ، ارتباط پالس با پایه ی oc1b قطع میشود.

Prescale : این گزینه و مقدار کریستال در تعیین فرکانس pwm نقش دارند . برای تولید PWM با فرکانس های متفاوت از این گزینه ها استفاده می شود. با استفاده از دو دستور زیر میتوان یک عدد ثابت یا متغییر را در ریجیستر pwm قرار داد تا مقدار pwm با آنها مقایسه شود.

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