همه اینا بستگی داره به اینکه می خوای از تایمر چه استفاده ای بکنی و تو چه مدی باهاش کار کنی. ایا می خوای موج PWM تولید کنی یا می خوای زمان رو اندازه بگیری یا تعداد پالس خارجی رو بشماری و ....
هر کدون از این مدها برای خودش فرق می کنه و Start و Stop کردن تایمر هم به اینها بستگی داره...
فرض کنید کریستال 1 مگ گذاشتین. یعنی هر کلاک شما 1 میکرو ثانیه طول می کشه.
می خواین 1 میلی ثانیه تاخیر ایجاد کنید
1 میلی ثانیه می شه 1000 میکرو ثانیه که با این کریستال یعنی باید 1000 کلاک رو بشماریم.
پس نمی تونیم از تایمر صفر استفاده کنیم ( البته با تقسیم کلاک 1) . از تایمر 1 استفاده می کنیم . مد تایمر رو معمولی با Top=ffff قرار می دیم.
مقدار اولیه تایمر رو 1000 - 65535 قرار می دیم. و می گیم برنامه تا وقتی که تایمر کارش تموم نشده ( یعنی توی تاخیر زمانی هستیم) توی یک لوپ بمونه و کاری نکنه.
زمان Start تایمر وقتیه که به تاخیر زمانی نیاز دارین. زمان Stop هم پس از پایان کار تایمر هست.
می شه برای این منظور از وقفه سرریز تایمر هم استفاده کرد.
با درود . . .
نوشتمش ولی اجازه ندارم بذارمش رو سایت!!!!!!!
به ایمیل من نامه بزن تا برات بفرستمش
nassiri.vahid@gmail.com
اگه خصوصی برای یک مفر ننوشتی تو یه فضای پلود رایگان این کارو انجام بده تا بقیه هم بتونن استفاده کنن .
یه جاای مثل www.4shared.com و یا www.rapidshare.com
دیدگاه