gpt4 book ai didi

embedded - 如何调试看门狗超时

转载 作者:行者123 更新时间:2023-12-02 18:28:41 25 4
gpt4 key购买 nike

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

有哪些调试方法?

编辑:结论:我发现 bug 的方法是看门狗面包屑。

我使用的 PIC 具有高 ISR 向量和低 ISR 向量。 High 向量用于处理 LED 矩阵,Low 向量用于处理计时器滴答声。但我将两个 ISR 处理程序都放在高向量中。因此,当我禁用 LED 矩阵 ISR 且计时器滴答 ISR 需要服务时,处理器将陷入低 ISR 状态以处理计时器滴答,但计时器滴答处理程序不存在。

面包屑将我的搜索限制为处理 LED 矩阵的函数,特别是禁用 LED 矩阵中断。

最佳答案

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

在 main 的开头放置一个断点。

当处理器重置时,全局变量仍将具有最后设置的值。继续添加这些“面包屑”以缩小问题函数的范围。

关于embedded - 如何调试看门狗超时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/661864/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com