一、Watchdog介紹
單片機的watchdog一般都有兩個,一個是獨立看門狗IWDG,一個是窗口看門狗WWDG。
以STM32為例,STM32的獨立看門狗是一個12位的遞減計數器,當計數器的值從某個值一直減到0的時候,系統就會產生一個復位信號,即IWDG_RESET。看門狗功能由VDD電壓域供電,在停止模式和待機模式下仍能工作。
關于STM32的獨立看門狗的框圖如下所示:

二、Watchdog的工作原理
為了防止程序在運行過程中跑飛,加上一個看門狗實時監控程序,如果在規定的時間內沒有喂狗,則狗叫會是的單片機復位。
如果在規定的時間內,刷新計數器的值,則單片機就不會產生復位,即我們所說的喂狗。
STM32的看門狗超時時間(40KHz的輸入時鐘(LSI))如下表所示:

三、STM32的IWDG配置
void IWDG_Config(void) { IWDG_WriteAccessCmd( IWDG_WriteAccess_Enable ); IWDG_SetPrescaler(IWDG_Prescaler_64); IWDG_SetReload(500); IWDG_ReloadCounter(); IWDG_Enable(); }
-
單片機
+關注
關注
6078文章
45557瀏覽量
672878 -
STM32
+關注
關注
2312文章
11183瀏覽量
374367 -
Watchdog
+關注
關注
0文章
12瀏覽量
9738
原文標題:單片機之Watchdog
文章出處:【微信號:mcugeek,微信公眾號:MCU開發加油站】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
基于單片機下Watchdog之淺析
評論