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.

[参考译文] AM2632:在锁步模式下进行调试

Guru**** 2527710 points
Other Parts Discussed in Thread: AM2632

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1274783/am2632-debugging-in-lockstep-mode

器件型号:AM2632

您好!

目前我正在使用 AM2634-LP、但在我的最终项目中、我们将使用 AM2632。
我尝试了 SDK-9.0中的 CCM 示例。 在 readme.html 中、我认为我应该仅在 QSPI-boot 模式下使用示例(而不是在调试器模式下)。

现在我的问题:  

是否可以在锁步模式下调试? 如果我在调试模式下加载了示例、我总是得到一个挂起的 ESM 回调函数。

谢谢。

乔·肖

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

    您好、Jo:

    阅读示例的说明、不应在连接调试器的情况下运行示例。 据我所知、运行该示例的唯一方法是通过 UART 刷写 QSPI 应用程序映像。 我将与主题专家同步、以确认是否有调试示例的方法。  

    此致、

    埃里克

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

    Erik、您好、

    昨天晚上 e2e-forum/您给我发了一封电子邮件、内容如下:

    您是否仍需要这些信息、或者无法使用连接的调试器进行调试?

    此致、

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

    您好、Jo:  

    据我了解、您无法调试示例、只能通过刷写应用程序映像来运行示例。  
    我已在该主题中添加了示例所有者以对示例的可调试性进行注释。  

    此致、

    埃里克

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

    Erik、您好、

    我在调试模式下、单步执行期间遇到了问题(更多详细信息、请参阅下文)。

    在正常模式下(通过 QSPI 从外部闪存加载映像、然后从 RAM 执行、问题不存在、请参阅此处 my TeraTerm - log





    现在、我的配置的更多详细信息:

    SDK 版本:  AM263x-9.0.0.35
    硬件:      AM263x-LP (评估板)
    CCS 版本:CCS  12.2
    编译器:      TI Clang v2.1.2.LTS

    我使用了 SDK 中的 SDL-CCM-example、但这个示例是针对253x-CC 创建的、这是不是一个问题?


    问题是如何发生的?

    该问题存在于调试和发布配置中类似。
    我还尝试了引导模式 DevBoot 或 QSPI (4)。 对于 DevBoot、我刷写了 NULL 引导加载程序。 在 QSPI 中、我尝试了 Null-BL 和 QSPI-BL。
    在所有尝试过的配置下、问题已经存在。

    编译项目后、我在评估板上调试项目。 因此、我使用"Debug AS"(按钮"Bug")。

    在开始连接之前、我对评估板进行了电源重置。
    IDE 连接到目标、加载程序并在 main 函数处停止。

    现在、我使用 F6/步越函数三次。 程序在 CC_MAIN (NULL)停止。
    我可以在这里详细地将问题本地化:

    在函数 Esmhandlerinit 中 调用函数 SDL_DPL_registerInterrupt ()。

    我可以进入函数 SDL_DPL_registerInterrupt、并在第125/SDL_DPL.c 行停止

    现在我单步执行到这个函数、然后在第115行(dpl_interface.c)停止、我现在进入这个函数。

    在 Hwip_building 内部、我可以阶跃到第176/Hwip_arm7r_vim.c 行

    在执行下一行时会出现问题、我得到了以下无限的终端输出。

    当停止进一步执行时、程序在这里停止:

    我该怎么办?

    此致

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

    Erik、您好、  
    现在、我已经在调试模式下尝试第二个示例(VIM 应用)。
    在该示例中、我还会在调试模式下收到错误。

    在不进行调试的情况下从 QSPI 提取示例可以正常工作。

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

    您好、Jo:

    仅在 QSPI 引导模式下支持 CCM (R5F 和 VIM)示例。 这些示例不支持无引导模式。  

    谢谢。此致、
    Vishwanath Reddy.

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

    您好 Vishwanath:

    感谢您的回答。 但我认为这解决了我的诗不完整。
    我知道、只能在 QSPI 引导模式下运行该示例。

    但是否可以在 QSPI 引导模式下调试?  
    我也可以使用调试器探针在 QSPI 模式下连接到 R5F 控制器、并加载/运行我的程序。  

    谢谢、此致

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

    您好、Jo:

    在安全手册中、您可以看到以下声明:

    当 CPU 被置于一个暂停调试状态时锁步检验被禁用并且只能在一个随后的复位后被恢复。

    由于一旦调试器被连接、锁步检查被禁用、锁步示例就不能被调试。 您可以在代码中添加 debug 语句、并监控终端中的日志。

    谢谢。此致、
    Vishwanath Reddy.