调试模式 当 MCU 进入调试模式并使内核暂停止时,根据 DBG 模块中的配置位,以上两只狗要么继续正常工作,要么停止。试想,调试中我们暂停程序执行后,就不能执行喂狗语句,如果看门狗不暂停,系统就会重启!我们就可以通过以下配置来使的暂停程序执行时,看门狗也暂停。
DBG_IWDG_STOP: 内核暂停时,IWDG 计数器停止运行 0:即使内核暂停,IWDG 仍然运行。上电复位默认值! 1:内核暂停,IWDG 也暂停运行。注意:通常我们使用调试工具进行调试时,调试工具会默认配置该项为 1。 DBG_WWDG_STOP: 内核暂停时,WWDG 计数器停止运行 0:即使内核暂停,WWDG 仍然运行上电复位默认值!。 1:内核暂停,WWDG 也暂停运行。注意:通常我们使用调试工具进行调试时,调试工具会默认配置该项为 1。 注意:
这里容易造成调试模式下看门狗暂停不用喂狗错觉!即使是在调试模式下,不喂狗仍然会产生看门狗复位。看门狗暂停的配置是指,我们在调试下暂停运行的时候(例如遇到断点的暂停),此时的看门狗也跟着暂停,这样就会不导致复位了。 在使用中发现,当使用 Jlink 仿真器进入调试模式时,Jlink 会自动配置以上的位,ST-Link 则不会自动配置。 在使用中发现,当正常调试退出 Jlink 的调试模式时,以上设置并不会被清除!
|