اطلاعیه

Collapse
No announcement yet.

watch dog & Timer

Collapse
X
 
  • فیلتر
  • زمان
  • Show
Clear All
new posts

    watch dog & Timer

    سلام به همه
    دوستان قصد استفاده از watchdog رو دارم اما حجم برنامه نوشته شده تا اینجا چیزی نزدیک به 67 کیلو بایته :mrgreen:
    حالا برای استفاده از watchdog باید تمام کدهارو بازخونی کنم و جای مناسب برای ریست تایمر watchdog ر وپیدا کنم که کاره پیچیده ای میشه بخاطر حجم کدام
    سوال:
    میتونم از تایمر کانتر برای این کار استفاده کنم و تایمر رو مثلا برای هر 500 میلی ثانیه راش بندازم و توی سابروتین تایمر بیام شمارنده مربوط به watchdog رو ریست کنم؟
    اگر میکرو هنگ کنه ممکنه تایمر به کارش ادامه بده و چون با سابروتین وقفه کار میکنه با وجود هنگ کردن میکرو بیاد هر 500 میلی ثانیه watchdog رو ریست کنه و دوباره به خطی که میکرو توش هنگ کرده برگرده؟
    از کمکتون ممنونم
    ای خدا ، من باید از نظر علم از همه برتر باشم، تا مبادا که دشمنان مرا از این راه طعنه زنند. باید به آن سنگدلانی که علم را بهانه کرده و به دیگران فخر میآ*فروشند، ثابت کنم که خاک پای من هم نخواهند شد. باید همه آن تیره دلان مغرور و متکبر را به زانو در آورم، آنگاه خود خاضع ترین و افتاده ترین مرد روی زمین باشم.
    شهید دکتر مصطفی چمران
    اللهم صل علی محمد و ال محمد و عجل فرجهم
    ; C is not for children

    #2
    پاسخ : watch dog & Timer

    نوشته اصلی توسط مهدی رهی
    از تایمر کانتر برای این کار استفاده کنم و تایمر رو مثلا برای هر 500 میلی ثانیه راش بندازم و توی سابروتین تایمر بیام شمارنده مربوط به watchdog رو ریست کنم؟
    اگر میکرو هنگ کنه ممکنه تایمر به کارش ادامه بده و چون با سابروتین وقفه کار میکنه با وجود هنگ کردن میکرو بیاد هر 500 میلی ثانیه watchdog رو ریست کنه و دوباره به خطی که میکرو توش هنگ کرده برگرده؟
    از کمکتون ممنونم
    بله. شما هر جایی که دلتون بخواد می تونید به watchdogمقدار جدید بدید (یا اونو ریست کنید). اینکه میگم مقدار جدید بدید به خاطره اینه که بعضی جاها، اصطلاحا میگن برای watchdog بدوباره fed انجام بدید. دوباره بهش غذا بدید تا میکرو رو ریست نکنه !!!
    اگر میکرو هنگ کنه، تایمر هم متوقف میشه، این تجربه من بوده. برای اطمینان خاطر هم میتونی یک متغیر رو یکبار زیاد کنی (مثلا تو وقفه 250 میلی ثانیه) ، بعد که متغیر شد 2 (تو همون تابع وقفه تایمر، watchdog رو ریست کن.
    ---------
    .
    .
    ...........

    دیدگاه

    لطفا صبر کنید...
    X