تایمر نگهبان (Watchdog Timer) در AVR
تایمر نگهبان که در همه میکروکنترلر های AVR تعبیه شده است، باعث می شود تا اگر به هر دلیلی عملیات میکروکنترلر دچار اختلال شود (سیستم هنگ کند)، میکرو بصورت خودکار Reset شود. در ادامه نحوه فعال کردن ان را به سه روش تنظیم فیوز بیت، تنظیم نرم افزاری و تنظیم جادوگر (Wizard) توضیح خواهیم داد.
روش اول - فعال سازی با فیوز بیت WDTON:
با این روش فقط می توان تایمر نگهبان میکرو هایی که شامل این فیوز بیت هستند را فعال کرد. با فعال کردن این فیوز بیت تایمر نگهبان دائما روشن می باشد.
روش دوم - کد نویسی نرم افزاری:
در این روش به کمک رجیستر WDTCR اقدام به فعال سازی تایمر نگهبان می کنیم. در اینجا فقط یک نمونه کد فعال سازی تایمر نگهبان با اسیلاتور 1MHz را ذکر خواهیم کرد. زمان بازنشانی و بیت های رجیستر را می توانید در برگه اطلاعات ای سی و کتابچه راهنمای AVR مشاهده کنید.
int a;
WDTCR=0X1E;
for(a=0;a<1500;a++)
{
#asm("WDR");
}
روش سوم - ویزارد نرم افزار:
در این حالت با مراجعه به منوی Watchdog Timer از پنجره CodeWizard AVR تیک Watchdog Timer Enabled را زده و گزینه OSC/16k را انتخاب کنید.
توضیحات مطابق با نسخه 3.12 نرم افزار. دریافت از سایت soft98.ir
سلام
مهندس دستت درد نکنه خیلی عالی بود لطف کن بیشتر از این مطالب برق و الکترونیک بذار ممنون میشم خیلی به دردم خورد خسته نباشی