پاسخ : چطور میتونم با تایمر/کانتر 0 شمارش نزولی انجام بدم؟
تا اونجایی که من میدونم با دادن هر پالس به کانتر صفر یکی اضافه میکنه.
برای این کار میتونی یه متغییر از نوع بایت درست کنی و با آمدن هر پالس مقدار کانتر (یکی اضافه میشه)رو از 255 کم کنی و داخل اون متغییر بریزی.
یا میتونی یه متغییر از نوع بایت درست کنی و با 255 پر کنی و پالس رو به یکی از پین ها وصل کنی و دائما اونو تست کنی هر موقع 0 یا 1 شد یکی از متغییر کم کنی. (ربطی به کانتر صفر نداره.)
راه های دیگه هم هست.
پاسخ : چطور میتونم با تایمر/کانتر 0 شمارش نزولی انجام بدم؟
با تشکر از شما دوست عزیز
فرض کنید در حالت صعودی تا 50 شمردم و حالا می خواهم نزولی بشمارم . یعنی به غیر از Pinb.0 که برای شمارش استفاده می کنم از Pinb.6 برای اعلام وضعیت شمارش صعودی و از Pinb.7 برای اعلام وضعیت نزولی استفاده می کنم . حالا اگر با اتصال Pinb.6 به صفر من در مود صعودی با دادن 50 سیگنال به Pinb.0 تا 50 شمردم و می خواهم Pinb.6 را غیر فعال کنم و Pinb.7 را به صفر وصل کنم که بتونم در حالت نزولی با دادن پالس به Pinb.0 بشمارم . آیا می تونم هر دفعه یکی از TCNT0 کم کنم یا را حل بهتری هم وجود داره؟
با تشکر
دیدگاه