Trong các bộ vi điều khiển hoạt động cần độ ổn định cao
Watchdog timer để hệ thống hoạt động 24/24
Trong quá trình chạy các yếu tố như nhiễu ,chương trình không tốt cũng gây ảnh hưởng đến MCU
Có 2 cách để reset MCU là dùng phần cứng như các IC chuyên dụng Watchdog timer
ở đây mình giới thiệu Dòng Ti TPS3228 nguyên lý hoạt động khá đơn giản MCU xuất IC 1 xung nhịp
Nếu trong quá trình MCU bị treo không xuất xung Thì IC kích hoạt xung Reset để reset MCU
Đó là phần cứng ,các bạn có thể dùng phần mền STM32
void config_watchdogtimer(void)
{
IWDG_WriteAccessCmd(IWDG_WriteAccess_Enable);//Enable write PR and RLR
IWDG_SetPrescaler(IWDG_Prescaler_32); //Write PR pre frequency value
IWDG_SetReload(10000); //Write RLR
IWDG_Enable();//
}
trong hàm main gọi hàm
IWDG_ReloadCounter();
Chú ý gọi hàm để không vượt quá time reset Có thể dùng bộ định thời timer để gọi hàm IWDG_ReloadCounter();