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.

[参考译文] SK-AM62B-P1:CCS 中的调用栈帮助

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1622627/sk-am62b-p1-help-with-call-stack-in-ccs

器件型号: SK-AM62B-P1

您好:

我尝试调试应用程序中的一个问题、其中 M4 启动会在日志打印过程中锁定。 我在生产板和 AM62x 评估板上看到了这种图像。 在评估板上、我所做的只是运行一个对启动/停止 M4 进行迭代的脚本。 有时我会在 20 次重新启动后锁定、但有时它会需要超过 100 次重新启动才能启动它。 当我连接 CCS 调试器时、可以看到这个调用栈(请参阅随附的图像)。 我不确定调用栈底部的 0xA5A5A5A4 是什么。 这是否表示内存损坏? 调用栈上的下一个函数是我的 do_shutdown 函数、但我知道未调用此函数、因为我在调用 do_shutdown 之前添加了一个标志、并且调试器显示该标志未设置。 这种调用堆栈是否告诉我某种信息、或者它是否指向内存损坏、而不应被信任? 另外、还有几个问题:

  1. 我只能看到活动任务的调用栈、在本例中、它是空闲任务。 是否有办法查看我的其他任务的调用堆栈?
  2. 在“Register"视“视图中、如何获取显示故障寄存器 (CFSR)? 我在存储器@ 0xE000ED28 中进行了检查、结果都是 0。

谢谢。

-艾曼

call_stack.png

tasks.png

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

    尊敬的 Ayman:

    您使用的是哪个版本的 SDK? 使用的编译器版本是什么?

    我不确定调用栈底部的 0xA5A5A5A4 是什么。 这是否表示内存损坏?

    这会显示栈中未初始化的存储器。

    您使用哪个版本的 MCU+SDK? 另外、请分享 示例代码、以便在我们这边重现问题

    此致、

    Tushar