آموزش STM8 ( قسمت چهارم )

آموزش راه اندازی Watch Dog در میکروکنترلر STM8

(WDT (WatchDoge Timer :

در این بخش از آموزش قصد داریم راه اندازی واحد Watch Dog در میکروکنترلر STM8 را آموزش دهیم ، پس با ما رد ادامه آموزش همراه باشید.

 

واحد WDT در  STM8 : 

WDT به تایمری خاص اشاره دارد که وظیفه آن نگھداری و نظارت بر کار میکروکنترلر است. این تایمر مجھز به اسیلاتور RC داخلی برای خود است که پس از شمارش و سرریز شدن، این قابلیت را دارد که میکروکنترلر را بصورت داخلی ریست کند.

 

این تایمر در مواردی کاربرد دارد که امکان قفل کردن یا هنگ کردن تراشه وجود دارد و به این وسیله پس از قفل کردنیا هنگ کردن میکروکنترلر ، دیگر امکان ریست کردن WDT وجود ندارد و به ھمین دلیل WDT شمارش خود را انجام داده و سرریز می شود و در نتیجه میکروکنترلر را ریست می کند تا از حالت قفل یا هنگی خارج شود. برنامه میکروکنترلر باید بگونه ای باشد که در حین اجرا، تایمر سگ نگھبان (Watch Dog Timer) بصورت مداوم قبل از سرریز شدن، صفر شود. 

 

در تصویر زیر میتوانید رجیستر مربوط به watchdog timer را مشاھده نماید . با یک شدن بیت شماره 7 این رجیستر تایمر فعال شده و توسط مابقی بیت ھا مقدار تایمر مشخص میشود . در صورت سرریز این تایمر میکرو کنترلر reset می شود. برای ھمین امر شما بعد از فعال کردن این تایمر باید در برنامه خود مقدار این تایمر را صفر نمایید. 

 

 

در زیر نمونه مثالی را برای شما انجام دادیم که مطلب را به صورت کامل درک کنید ، اول مدار را به صورت شماتیک زیر ببندید و سپس برنامه ای که در انتها قرار میدهیم را دانلود و روی تراشه خود بریزید . 

نمونه شماتیک : 

 

دانلود نمونه مثال : 
دانلود به صورت مستقیم : دانلود 
دانلود از GitHub : دانلود 

 

نویسنده : محمد امین خادم الحسینی
مراجع :
جزوه مهندس محمد شفیعی 
st.com-stm8

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد.