当前位置:  开发笔记 > 编程语言 > 正文

如何调试看门狗超时

如何解决《如何调试看门狗超时》经验,为你挑选了1个好方法。

我的微控制器中有一个看门狗,如果它没有踢,将重置处理器.我的应用程序运行良好一段时间,但最终会重置,因为看门狗没有被踢.如果我单步执行该程序,它工作正常.

有什么方法可以调试它?

编辑:结论:我发现我的错误的方式是看门狗面包屑.

我正在使用具有高和低ISR向量的PIC.高矢量用于处理LED矩阵,低矢量用于处理定时器滴答.但我把两个ISR处理程序放在高位向量中.因此,当我禁用LED矩阵ISR并且计时器滴答ISR需要服务时,处理器将陷入低ISR以处理计时器滴答,但计时器滴答处理程序不在那里.

面包屑将我的搜索范围限制在处理led矩阵的功能中,特别是禁用LED矩阵中断.



1> Robert..:

添加一个未初始化的全局变量,该变量在整个代码中设置为不同的值.具体来说,在主要函数调用之前和之后设置它.

在main的开头放一个断点.

当处理器重置时,全局变量仍然具有它设置的最后一个值.继续添加这些"面包屑"以缩小问题功能.

推荐阅读
pan2502851807
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有