تایمر در مد pwm - زبان بیسیک - بسکام

نحوه پیکره بندی تایمر یک در مد pwm به صورت زیر هست.

Config Timer1 = Pwm , Prescale = 1 , Pwm = 8 , Compare A Pwm = Clear Up , Compare B Pwm = Clear Down 

pwm1a=100

pwm1b=200

 

config timer1=pwm یعنی میکرو جان تایمر یک را برای ایجاد موج pwm میخوام 

prescale=1 که این گزینه میتواند 1 یا 8 یا 64 یا 256 یا 1024 باشد که برای تنظیم فرکانس موج pwm هست.

pwm=8  میتواند 9 یا 10 بیتی  باشد هر چه این بیت ها بیشتر باشد دقت موج بیشتر هست اگر 8 بیتی باشد شما 256 واحد آن را کم و زیاد کنید  اگر 9 باشد 512و 10 بیتی 1024 .

compare a pwm=clear up میتواند clear down هم باشد اگر clear up باشد سطح پالس  پایه oc1a از یک شروع میشود و اگر clear down باشد از سطح صفر شروع مشود .

 compare b pwm=clear up میتواند clear down هم باشد اگر clear up باشد سطح پالس  پایه oc1b از یک شروع میشود و اگر clear down باشد از سطح صفر شروع مشود .

حالا در خط بعد با قرار دادن عدد در جلوی pwm1a و pwm1b پهنای پالس خروجی روی پایه های oc1a و oc1b را مشخص میکنیم . به این ترتیب که عدد جلوی pwm1a مربوط به پایه oc1a و عدد جلوی pwm1b مربوط به oc1b هست.

برای اینکه بهتر متوجه بشین یک مثال عملی میزنم که بهتر متوجه بشین اگر بخواین هم میتوانید با وصل کردن اسیلوسکوپ در پروتیوس به پایه های oc1a و oc1b شکل موج pwm را مشاهده کنید.

مثال عملی: میخواهیم با بازی کردن با pwm نور led را کم و زیاد کنیم. در این مثال فقط از پایه oc1a استفاده شده.(توی پروتیوس کم و زیاد شدن نور led قابل ملاحضه نیست باید به صورت عملی مدار را ببندید)

 

نقشه مدار (فقط آند led به پایه 15 وصل میکنید و کاتد را به زمین تغذیه میکرو هم که ایشالا وصل میکنید)

 

خوب حالا میریم سربخت تایمر دو 

فقط یک پایه خروجی پالس pwm به این تایمر مربوطه انم پایه oc2 میکرو هست که پالس را فقط میتوانیم از این پایه دریافت کنیم.

پیکره بندی این تایمر در مد pwm : 

 

Config Timer2 = Pwm ,Pwm =ON , Compare Pwm=Clear Up,Prescale=1

ocr2=200

config timer2=pwm یعنی جناب میکرو تایمر 2 را برای تولید پالس میخوام.

pwm =on میتواند off باشد که حتما باید on باشد من نمیدونم چه لزومی داره این گزینه!!!

compare pwm=clear up میتواند clera down باشد که سطح پالس روی پایه oc2 از یک شروع شود یا صفر با انتخاب clear up از سطح یک شروع میشود و با انتخاب clear down از سطح صفر 

prescale=1 میتواند 8 یا 64 یا 128 یا 256 یا 1024 باشد برای تعیین فرکانس پالس نسبت به کریستال و بیت تایمر.

ocr2=200 میتواند هر عدد دیگه ای باشد با تغییر این عدد پهنای پالس را کم و زیاد میکنیم.

یه مثال:

/ 3 نظر / 725 بازدید
mohammad

salam mamnoon az komaket vagheaan in dastorat komakam kard

ارمیتا

ممنون و خیلی مختصر و مفید بود

بلا گرفته

مرسي كم اله خيرا اگه كپي هم كردي كپي خوبي كردي