1 窗口看門狗工作原理
1.1 簡介
WWDG簡介
窗口看門狗通常被用來監測,由外部干擾或不可預見的邏輯條件造成的應用程序背離正常的運
行序列而產生的軟件故障。除非遞減計數器的值在T6位變成0前被刷新,看門狗電路在達到預置
的時間周期時,會產生一個MCU復位。在遞減計數器達到窗口寄存器數值之前,如果7位的遞減
計數器數值(在控制寄存器中)被刷新, 那么也將產生一個MCU復位。這表明遞減計數器需要在
一個有限的時間窗口中被刷新;
PC指針跑飛,指針指向未知內存地址,程序死機。
程序正常執行的過程中,代碼的執行有時間限制,代碼執行超過這個執行時間說明,程序PC指針跑偏,程序執行出現問題;
窗口看門狗規定了程序執行時間的上限和下限;程序執行不再這個時間內說明PC指針指向錯誤;
因此引出了窗口看門狗的:窗口上限和窗口下限;
喂狗的操作就是當中斷計數器的值快到達裝載計數器的值時,進行回拉操作;
與門
或門
非門
2 .2 WWDG的寄存器
2.2.1 控制寄存器(WWDG_CR)
2.2.2 配置寄存器(WWDG_CFR)
2.2.3 狀態寄存器(WWDG_SR)
2.2.4 WWDG寄存器映像
2 WWDG代碼實現
正式進入中斷之前,先清除中斷的標志位;
stm32的所有的中斷都歸NVIC管理,只要有中斷,必然有NVIC;
[NVIC詳細解釋]
寄存器
NVIC詳細解釋