hal【独立看门狗配置】STM32调试时进入断点系统被IWDG 看门狗复位的解决办法


独立看门狗的时钟为32k分频

可以配置为32分频,这样就是1khz,方便计算

 

 

 

 初始化后,看门狗就启动了,不需要另外手工启动

喂狗

 HAL_IWDG_Refresh(&hiwdg);

 

但,调试的时候,看门狗也会把程序复位,这是不行的,所以 

  找个地方把这两句放进去就好了

    __HAL_DBGMCU_FREEZE_IWDG();    // 在调试单步时,独立看门狗iwdg暂停    The independent watchdog counter clock is stopped when the core is halted
    __HAL_DBGMCU_FREEZE_WWDG();        //窗口狗也暂停

 这样,调试进入断点时不管停留多久,都不会触发看门狗

但在运行时,照样会出发看门狗

可以做一个简单的测试,初始化后,调用这两句

然后写一个延时空跑 时间超过喂狗时间

前边加断点,停留,不复位

运行这个耗时的部分, 系统复位,并且重新进入这个点

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM