راه اندزای تایمر LPC۱۷۶۸

پنج شنبه 06 اسفند 1394  •  دسته بندی: lpc17  •  بازدیدها: 771  •  برچسب ها: |

هدف


این مثال نشان می دهد که چطور می توانید با استفاده از Timer Match  زمان های مشخص و دقیقی را در مد وقفه ایجاد بکنید.


نحوه ی کار

در این حالت زمان ایجاد شده 1 ثانیه است.



Timer configuration :

            - Timer channel: 0

            - Prescaler in microsecond value

            - prescaler value = 100us

Match configuration :

            - Use channel 0, MR0

            - Match value = 10000

            Because timer tick = prescaler = 100us

            So match time = 100 * 10000 = 1000000us = 1s

            - Timer reset after match

            - Not stop MR0 when match

            - Toggle MR0.0 when match

            Because match time = 1s

            So MAT0.0 will be toggled at frequency = 1Hz

            - Generate match interrupt

Whenever MR0 matches the value in

هنگامیکه مقدار ریجستر تایمر کانتر (TC register) با MR0 برابر می شود یک وقفه ایجاد می شود و در روتین مربوط به وقفه به پیام به پورت سریال ارسال می شود و LED D2  روشن و خاموش می شود.

نکته: دقت بکنید که هنگامیک زمان Match  خیلی کوچیک باشه اگر از سریال استفاده بکنید باعث میشه یک Delay  به وجود بیاد.

 

این مطلب را به اشتراک بگذارید:

نظری در این باره وجود ندارد، شما می توانید اولین کسی باشید که نظر می دهید.
نام:
ایمیل:
نظر: