آموزش مد Phase Pwm واحد تایمر/کانتر

سلام ، وقتتون بخیر، امروز آخرین مبحث از سلسله مباحث Timer/Counter رو قراره با هم دیگه پیش ببریم و قراره که با هم بیشتر جزئیات مد Phase Pwm واحد تایمر/ کانتر آشنا بشیم. اما قبل از شروع، برای درک بهتر شما عزیزان یک توضیح کوتاه درباره واحد تایمر/کانتر میدم تا بدونید این واحد به چه کاری میاد.

اما این توضیح کوتاه فقط یه مقدمه برای این جلسه است و اگر می خواهید به طور مفصل با  این با این واحد آشنا شید. حتما آموزش Timer Counter میکروکنترلرهای AVR – مقدمه  و  آموزش مد Fast Pwm واحد تایمر/کانتر رو مطالعه کنید.

 

در آموزش قبلی به طور مفصل درباره ی PWM توضیحات لازم رو دادیم، پس الان دیگه بهش اشاره نمی کنیم و میریم سراغ اصل مطلب…

[icon name=”star-half-o” class=”” unprefixed_class=””] در Phase Pwm که همون “مد تصحیح فاز” است، برای تولید PWM از موج مثلثی بجای موج دندانه اره ای در مد Fast PWM داشتیم،استفاده میکنیم.

 

در این مد رجیستر TCNT0 از 0 تا 255 شمارش کرده و سپس سیر نزولی گرفته و از 255 تا 0 کاهش می‌یابد. می بینید که در این مد تغییرات به صورت آرام صورت میگیرد.

به همین دلیل بود که در آموزش قبل بهتون توصیه کردم که بهتر کنترل سرعت موتور های DC رو با استفاده از این مد انجام بدین.

حالا طبق معمول با استفاده از بیت WGM00 ، WGM01 که در رجیستر TCCR قرار دارند، میایم و  مد مدنظرمان را انتخاب میکنیم.

 

[icon name=”circle-o” class=”” unprefixed_class=””]بیت های 3و6 (WGM n0, WGM n1):

 

 

حالا که مد Phase PWM را انتخاب کردیم میریم به سراغ تنظیم سایر بیت ها و رجیسترها…

سایر بیت های رجیسترTCCR n:

 

[icon name=”circle-o” class=”” unprefixed_class=””] بیت7(FOC n):

چون در مد Fast PWM هستیم که یکی ازمد های PWM در نتیجه این بیت 0 و  غیرفعال .

 

[icon name=”circle-o” class=”” unprefixed_class=””] بیت های 5و4 (COMn0,COM0n1)

عبارت COM مخفف<< Compare Match Output Mode >>مد خروجی تطابق در مقایسه و به معنای است.

این دوبیت رفتار پایه ی خروجی OC n (در تایمر1 ، پایه های OC1A ، OC1B) را کنترل میکنند.

میدانیم که در صورتیکه یکی از این دو بیت یا هر دو آنها 1 شوند، پایه OC n، وظیفه خود را بعنوان I/O را از دست میدهد و توسط تایمر کنترل می شود.البته باید توجه کنید که برای این منظور باید رجیستر DDR مربوط به این پایه حتما به صورت خروجی تنظیم شده باشد.

 

 

یادتون نره که این بخش که تفاوت اصلی بین 2 مد PWM رو بوجود میاره!!پس بدقت مطالعه کنید تا دستور درست رو انتخاب کنید.

 

[icon name=”star-half-o” class=”” unprefixed_class=””] حالت رزروشده به این معنی است ، نباید این حالت را انتخاب کنیم چون غیرمجاز است!!

 

بیت های 0 تا 2(Clock Select ):

همانطور که در آموزش قبل گفتیم این بیت ها برای مشخص کردن منبع کلاک تایمر/کانتر اند.

 

 

در تایمر 1:

منبع کلاک تایمر/کانتر 16 بیتی،1 میتواند داخلی و خارجی باشد.

در صورتی که منبع کلاک،کلاک سیستمی ویا تقسیمی ازآن باشد،به آن تایمر گفته می شود.

و در صورتی که منبع کلاک،کلاک خارجی باشدکه توسط پایه T1، به آن تایمر گفته می شود. این تنظیمات به 3 بیتی که در جدول آورده ایم ،مربوط می شوند.

 

دو رجیستر TCNT , OCR را در آموزش مقدمه بطور مفصل توضیح داده ایم. برای فهمیدن مفاهیم بالا حتما به آموزش قبل مراجعه کنید.

 

:OCR0ثبات [icon name=”circle” class=”” unprefixed_class=””]

در مورد این ثبات نیز قبلا صحبت نمودیم و شما میدونید که  از این ثبات به منظور ذخیره ی مقدار مقایسه استفاده می شود. اما هنگامی که تایمر صفر در مد PWM کار می کند مقدار ذخیره شده در این ثبات در نقش چرخه ی کار ظاهر می شود.

 

همونطور که میبینید در بخش های مختلفی بیشتر مد ها مشترک اند، ولی گاها برای مرور بیشتر دوباره براتون تو هر آموزش قرار دادم تا راحت تر به خاطر بسپاریدشون.

 

 

خب اینم از آموزش اخر واحد تایمر/کانتر که البته نکات سختشو قبلا یاد گرفته بودید ولی لازم بود که تفاوتش رو با سایر مد ها بدونید

راستی یادتون نره ، حتما به اینستاگرام ماهم سربزنید

.

 

 

[wp_ulike]
اگر می‌خواهید از آخرین و محبوب‌ترین مقالات ما در ایمیل خود مطلع شوید، همین الان ایمیل و شماره موبایل خود را در کادر زیر وارد کنید:
تعداد علاقه مندانی که تاکنون عضو خبرنامه ما شده اند: 0 نفر
دیدگاه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *