【发布时间】:2009-03-19 11:35:42
【问题描述】:
我的微控制器中有一个看门狗,如果它没有被启动,它将重置处理器。我的应用程序在一段时间内运行良好,但最终会重置,因为看门狗没有被踢。如果我单步执行该程序,它就可以正常工作。
有什么方法可以调试这个?
编辑: 结论: 我发现我的错误的方式是看门狗面包屑。
我正在使用具有高 ISR 向量和低 ISR 向量的 PIC。 High 向量用于处理 LED 矩阵,Low 向量用于处理计时器滴答声。但是我将两个 ISR 处理程序都放在了高向量中。因此,当我禁用 LED 矩阵 ISR 并且计时器滴答 ISR 需要服务时,处理器将卡在低 ISR 以处理计时器滴答,但计时器滴答处理程序不存在。
面包屑将我的搜索限制在处理 LED 矩阵并专门禁用 LED 矩阵中断的函数。
【问题讨论】:
标签: embedded debugging watchdog