程式中使用了定時器來執行餵狗操作,
void tim4_irqhandler(void)
if(g_iwdg_cnt >= 200)
iwdg_feed(); // 每隔100ms喂一次狗
tim_clearitpendingbit(tim4,tim_it_update);
}
}
看門狗定時1s復位,
// iwdg_config(iwdg_prescaler_64 ,625);
void iwdg_config(uint8_t prv ,uint16_t rlv)
// 餵狗
void iwdg_feed(void)
發現總是在按鍵的時候,看門狗異常復位。原因:按鍵中斷函式中有延時操作且時間超過了1s,導致看門狗溢位復位。
解決:將看門狗溢位定時延長。
iwdg_config(iwdg_prescaler_64 ,6250);
stm32獨立看門狗實驗
alientek mini stm32開發板v1.9範例 5 獨立看門狗實驗 正點原子 alientek 技術論壇 www.openedv.com stm32f103rbt6屬於中容量版本的mcu 看門狗的原理 微控制器系統在外界的干擾下會出現程式跑飛的現象導致出現死迴圈,看門狗電路就是為了避免這種...
STM32獨立看門狗(IWDG)
在微控制器執行的過程中,我們可能會遇到程式陷入死迴圈的情況。很顯然我們需要對這種情況進行提前的預防。看門狗就是用來進行該工作的。看門狗分為獨立看門狗和視窗看門狗,這一節介紹的是獨立看門狗。stm32的獨立看門狗由內部專門的40khz低速時鐘驅動,與系統主時鐘分開工作,也就是說,主時鐘損壞時,看門狗仍...
stm32 視窗看門狗
當程式跑飛後又回到正常地方或者正好執行了重新整理看門狗操作,此情況下一般的看門狗是檢查不出來的 故可以使用視窗看門狗,這樣保證不會提前或者之後重新整理看門狗。可以檢查程式沒有按正常路線執行而跳過的一些程式段。視窗看門狗 就是在餵狗時間上有乙個上下線。只有在此時間段內才能執行餵狗操作。上線可以在暫存器...