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/TM4C1290NCZAD:TI-RTOS Hello 示例(hello_DK_TM4C129X_TI_TivaTM4C129XNCZAD)在使用 SEGGER J-Link 进行编程后立即崩溃

Guru**** 2457760 points
Other Parts Discussed in Thread: SEGGER, TM4C1290NCZAD, EK-TM4C1294XL

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/631184/rtos-tm4c1290nczad-ti-rtos-hello-example-hello_dk_tm4c129x_ti_tivatm4c129xnczad-crashed-right-after-programming-when-using-segger-j-link

器件型号:TM4C1290NCZAD
主题中讨论的其他部件:SEGGEREK-TM4C1294XL

工具/软件:TI-RTOS

您好!

当我使用 SEGGER J-Link 对器件进行编程和调试时、TI-RTOS Hello 示例出现问题。 它要么在器件编程后立即崩溃、要么在编程完成后立即启动。

编程后崩溃时、CCS 控制台中提供以下输出:

SE:0x3aa0146。
 栈大小:0x8f9c1f0。
R0 = 0x760801F1 R8 = bbdb00f46
R1 = 0x01f8161c R9 = 0xc08ff0e8
R2 = 0x0098021c R10 = 0x756e2846
R3 = 0x01f10029 R11 = 0x00296c6c
R4 = 0x7f900200 R12 = 0x006304c0
R5 = 0x00ae83f4 SP (R13)= 0xfce92d00
R6 = 0x51b10898 LR (R14)= 0x7e460541
R7 = 0x40700146 PC (R15)= 0x754a744c
PSR = 04bb60f48
ICSR = 0x00000003
MMFSR = 0x00
BFSR = 0x01
UFSR = 0x0000
HFSR = 0x40000000
DFSR = 0x00000001
MMAR = 0xe000ed34
BFAR = 0xe000ed38
AFSR = 0x00000000
正在终止执行...

我尝试更新 J-link 驱动器、但没有帮助。

我在使用 XDS100v2调试器时未发现任何问题。

我使用的是 CCS 7.2.0.00013和 TI-RTOS 2.16.01.14。

在下面查找我的项目的副本。 这是一个 TI-RTOS Hello 示例、其中添加了一个简单的任务、并将器件类型更改为 TM4C1290NCZAD。

e2e.ti.com/.../hello_5F00_DK_5F00_TM4C129X_5F00_TI_5F00_TivaTM4C129XNCZAD.zip

如果有任何帮助,我将不胜感激。

此致、

Peter A.

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    尊敬的 Peter:
    我刚刚尝试了 Jlink Ultra+、无法复制您的结果。 在控制台中、我看到"hello world"、然后是连续的"Working。。。" 打印到控制台。 它使用您的程序二进制文件在我的 EVM 板上工作。

    您是否对其他示例有相同的问题? 您可以再试几个 TI-RTOS 示例和非 TI-RTOS TivaWare 示例吗? 不过、我不理解仿真器是如何导致问题的。

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

    您好、Charles、

    感谢您的回答以及尝试重现我的问题。

    您看到的行为是正确的-我仅在使用 XDS100v2调试器时看到的行为。

    我尝试了另一个 TI-RTOS 示例-"时钟示例"(clock_DK_TM4C129X_TI_TivaTM4C129XNCZAD)、并且在使用 J-Link 时获得了类似的结果。

    当我首次尝试对其进行调试时(从 XDS100v2切换到 J-Link 之后)。 程序在我有机会启动之前崩溃。 按下"Debug"按钮后、CSS 会编译工程、对器件进行编程并在崩溃状态下停止。 请参阅下面的屏幕截图:

    在我按下"Debug"按钮之后的每次后续尝试中、CCS 都会编译代码、对器件进行编程并在 main()的第一行停止、但在我按下"Resume"按钮后、程序会立即崩溃。 请参阅下面的屏幕截图:

    使用 XDS100v2时、我看不到其中任何崩溃。

    请在下面找到我使用的项目。 我将其修改为使用 TM4C1290NCZAD 并在第二个计时器超时时时持续运行、而不是退出。

    e2e.ti.com/.../clock_5F00_DK_5F00_TM4C129X_5F00_TI_5F00_TivaTM4C129XNCZAD.zip

    我还尝试了一个非 TI-RTOS 项目- UART_ECHO (见下文)、它在 J-Link 和 XDS100v2上都可以正常工作。

    e2e.ti.com/.../1121.uart_5F00_echo.zip

    我还发现调试器导致程序崩溃有点奇怪、但我在使用示例项目后没有任何想法、仍然看到问题。

    非常感谢您提供的任何帮助。

    此致、

    Peter A.

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

    您好、Charles、

    我还在同事的 PC 上尝试过、第一次尝试时我们遇到相同的崩溃、之后每次尝试时都遇到不同的崩溃:

    我们在切换到 XDS100v2时未看到任何崩溃。

    我不知道这是否重要、但我在 Windows 10 64b 上测试的两台 PC 都运行。

    此致、

    Peter A.

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

    尊敬的 Peter:

     不幸的是、我在运行时钟示例后仍然无法复制您的结果。 它在我的 EVM 板上运行正常。 您是否有可以尝试的 TM4C129 LaunchPad? 我正在使用 LaunchPad 来运行您的项目。 我也在 Windows 7 PC 上运行。  

     我建议您尝试一下、但我不确定它是否会对您有所影响。 我不点击调试按钮。 我要做的是手动执行以下步骤:

     1.选择 View->Target Configurations

     2.从您拥有的目标配置列表中、选择与您的项目对应的配置。 在"User Defined"或"Projects"下查找

     3.看到目标配置后,请右键单击并选择“启动目标配置”

     4.选择 Run->Connect Target

     5.选择 Run->Load Program 并为项目提供.out 文件。

     6.运行程序

     有什么不同吗?

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

    您好、Charles、

    遗憾的是、我没有 LaunchPad。

    我尝试了您建议的过程、但结果完全相同:使用 XDS100v2时没有问题、使用 J-Link 时也会崩溃。

    我将尝试查找 Win7计算机并在那里进行测试。

    此致、

    Peter A.

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

    您好、Charles、

    我成功获得了 DK-TM4C129X 开发板。 我尝试通过 JLink 对其进行编程、结果完全相同-编程后或启动后程序立即崩溃。

    当我使用嵌入在电路板中的电路内编程器时、我没有发现任何问题。

    我还注意到、如果在初始崩溃后单击"CPU Reset"按钮、程序将正常启动并按预期工作。

    CCS 中是否有任何可能导致此问题的设置?

    此致、

    Peter A.

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    尊敬的 Peter:
    我目前不在办公室。 我明天会回来并将尝试复制它。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Peter:

    您能检查几件事情。

    1.入口点是什么? 您需要在 CCS 中禁用"run to main"功能。 要在加载映像后执行此操作、请暂停映像并执行此操作

    -工具->调试器选项->自动运行和启动选项

    -取消选中“On a program load or restart”(在程序加载或重新启动时)框。

    -保存("记住我的设置"...no不能确定为什么它不只是保存)

    - CPU 复位(突出显示如下)

    -重新启动 (突出显示如下)

    您应该在_c_int00...您在那里吗?

    看门狗可以关闭吗? RTOS 不对其执行任何操作。

    Todd

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

    H Todd、

    我觉得一切都还可以。

    执行指令并启动调试会话后、我位于_c_int00。

    在点击"resume"后、程序崩溃、就像以前一样:

    在重新启动整个过程程序后、程序以第二种方式崩溃(与以前相同):

    2.我没有将看门狗配置添加到我使用的示例工程中,因此不应该启用它。 我通过在运行时检查 RCGCWD 寄存器确认了这一点。

    此致、

    Peter A.

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

    您能在 Tools->ROV->Hwi->Exception 中查看反向跟踪吗? 这将有助于显示导致异常的原因。

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

    您好 Todd、

    请参阅以下内容:

    我还注意到"详细"选项卡中列出了很多中断。 不确定这是否重要、但看起来很奇怪。

    按下"CPU Reset"(CPU 重置)按钮、然后按下"resume"(恢复)后、详细视图中仅列出一个 int。

    此致、

    Peter A.

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您是否曾了解过这一点? 我的 J-Link 也有同样的问题、而 EK-TM4C1294XL 上的 ICDI 接口工作完全正常。 真的很沮丧。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    当我尝试进入此行时、它总是崩溃:

    您也可以在屏幕截图中看到上一次崩溃的控制台输出。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Nick、
    不幸的是,我没有这样做。 我希望 CCS 中的某个 J-link 支持更新能够修复它、但从未修复过。 我刚刚停止使用 J-Link 并切换到 XDS100v2、但遗憾的是、这种速度要慢得多。

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

    谢谢 Peter、

    这对我来说是个坏消息、因为我只有一个 J-Link。 希望 TI 的某个人能够对此有所了解。

    Nick

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Nick、
    它可能与 CCS 仿真驱动程序有关。 我建议您将问题发布在 CCS 论坛上、我希望那里的专家能够比 TM4C 论坛更好地为您提供帮助。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    谢谢 Charles、

    对于任何观看此主题的人、我在 CCS 论坛上发表了另一篇文章: e2e.ti.com/.../647708

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

    Peter Adamus 说:
    XDS100v2、但很遗憾、它的速度要慢得多。

    XDS110现已推出、并且根据产品页面具有更好的性能。

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

    另一个主题中建议的解决方案似乎对我有效、也许您想尝试一下。

    Nick
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Nick、
    我刚试过它、它工作正常。 非常感谢您提供的信息。

    此致、
    Peter A.
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    尊敬的 Peter:
    感谢您提供信息。 它看起来是一个合理的选择。 当我有机会时、我会尝试一下。
    此致、
    Peter A.