This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] TMS320F28377S:了解看门狗复位发生时代码(PC)的位置

Guru**** 2402805 points
Other Parts Discussed in Thread: C2000WARE

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1177222/tms320f28377s-knowing-where-was-the-code-pc-when-watchdog-reset-occurs

器件型号:TMS320F28377S
主题中讨论的其他器件:C2000WARE

您好!

根据一个情况、我得到一个看门狗复位。

也就是说、我的代码中有一些内容太多、导致看门狗对复位进行三角处理。

看门狗工作做得很好!

现在、我要查找我的代码中的哪一部分过长。
当 WDG 复位发生时、是否可以知道计数器程序(PC)的值?

我尝试通过将 WDG 配置为"中断"模式来捕获 WDG 复位、但 PIEIFR1.INTx8从未设置。 (我将 LPMCR.WDINTE 配置为1、SCSR.WDENINT 配置为1……

如果我手动设置 PIEIFR1.INTx8、CPU 跳转到 ISR 例程...

但我肯定会生成看门狗事件、但从未设置 Int1.8。

-1)在发生 WTG 复位时如何知道 PC 地址

2)备选解决方案:我错过了什么来跳转到 WDG 事件的接口? (通过这种方式、借助调试器、我可以看到堆栈并在事件发生时执行函数。。)

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    [报价 userid="209440" URL"~/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1177222/tms320f28377s-knowing-where-was-the-code-pc-when-watchdog-reset-occurs "]是否可以在 WDG 复位时知道计数器程序(PC)值?

    当 WD 生成复位时不会发生这种情况。

    [引用 userid="209440" URL"~/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1177222/tms320f28377s-knowing-where-was-the-code-pc-when-watchdog-reset-occurs ]-1)在发生 WTG 重置时如何知道 PC 地址[/quot]

    不确定是否识别生成 WD 复位的函数会有所帮助、因为该函数本身可能不会花费太多时间、但前面的函数会这样做。

    [引用 userid="209440" url="~/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1177222/tms320f28377s-knowing-where-was-the-code-pc-when-watchdog-reset-occurs "]我错过了哪些跳转至 WDG 事件上的交互?

    请在 C:\ti\c2000\C2000Ware_4_01_00_00\driverlib\f2837xs\examples\cpu1\watchdog 中尝试测试的示例。