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.

[参考译文] RTOS/TM4C123GH6PM:将调用栈打印到控制台

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/619539/rtos-tm4c123gh6pm-print-call-stack-to-console

器件型号:TM4C123GH6PM

工具/软件:TI-RTOS

您好!

随着项目复杂性的增加、我实施了一个小调试处理程序。 因此、我想向调试输出(串行接口)显示过去的调用堆栈、如下所示:

fprintf (stderr、"\r\n");
vfprintf (stderr、"组消息");

//输出堆栈
callstack.print();// stacktrace.print()???

halt(); 

是否有任何 RTOS 板实现该目的的方法?

 

 

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

    您好、Volker、

    RTOS 没有任何运行时调用来获取此信息。 它位于 CCS 中的 Tools->ROV->Tasks->CallStacks (也在 IAR 中)。

    Todd

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

    您好 Todd、

    感谢您的回答。 我知道 CCS 附带的调试可能性、因此我知道 CallStack 选项卡。 但是、我需要的是对该调用栈的显式访问、以将其打印到串行端口(或文件或其他内容)。 因此 RTOS 没有任何对它的调用、低级实现会怎么样?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    抱歉。 TI-RTOS 运行时代码中没有任何内容。

    Todd
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    好的、无论如何、谢谢 Todd。 实际你的回答没有解决我的问题,但它澄清了我的问题;-)
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Volker、

    事实证明、我们确实使用了以下开源回溯代码: github.com/.../crash-handler。 它看起来很有希望、但一旦我们有了 ROV 回溯、将其添加到内核中并不是一个优先事项...一天中只有这么多小时:)

    Todd