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.

[参考译文] TMS320F28388S:在 CCS12下连接调试器

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1461227/tms320f28388s-attaching-debugger-under-ccs12

器件型号:TMS320F28388S

工具与软件:

您好!

               在我们一直使用的上一版本 CCS10中、我们有一个在不影响器件的情况下连接到器件的过程。  这种做法多年来一直运作良好。  在 CCS12下、当我们执行同样的操作时、它始终会使目标停止。  我们的步骤是:

  1. 使用不会修改任何内容的 GEL 脚本
  2. 在 Project Properties->Debug 中、取消选中"Halt the target on a connect"。
  3. 在 Debug Configurations 中、选择项目、然后选择"Program"选项卡并点击"Load symbols Only"。
  4. 在 Target 选项卡中、取消选中"Halt the target on a connect"(在连接时停止目标)。
  5. 点击 Debug

我需要向其中添加什么内容吗?

谢谢!

 据

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

    尊敬的 Ed:  

    我能够 连接到一个设备,而不停止它通过你的步骤,并使用默认的 GEL 文件 ,并 在 OnTargetConnect ()注释掉 GEL_Reset (). 您可以尝试一下吗?  

    对于 F28388S.gel (注释掉第28行)

    Fullscreen
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    OnTargetConnect()
    {
    *(int *)0x5F412 =0x000F; /* RAM INIT FOR M0/M1/D0/D1 Memory */
    *(int *)0x5F432 =0x00FF; /* RAM INIT FOR LS0..LS7 Memory */
    *(int *)0x5F452 =0xFFFF; /* RAM INIT FOR GS0..GS15 Memory */
    if (GEL_IsInRealtimeMode()) /* If in real-time-mode */
    {
    }
    else /* Put device into C28x Mode */
    {
    C28x_Mode();
    }
    F28388s_Memory_Map(); /* Initialize the CCS memory map */
    /* Check to see if CCS has been started-up with the DSP already */
    /* running in real-time mode. The user can add whatever */
    /* custom initialization stuff they want to each case. */
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

    此致!
    Matt

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

    尊敬的 Matt:

                   我尝试过、它影响了程序。  因此我注释掉了 RAM 初始化代码、我认为这是造成干扰的原因。  我还注释掉了 CM 内核代码、因为我目前未在使用它。  这样、在我连接调试器时、它仍然会停止处理器。

    谢谢!

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

    尊敬的 Ed:

    我来看看 F2838x 器件、明天早上我将为您提供最新信息。  

    此致!

    Matt

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

    尊敬的 Ed:

    我能够 避免上的连接暂停 F28388D 通过执行以下操作:

    1. Project Properties > Debug > Program/Memory Load Options > Connection Options:取消选中"Halt the target on a connect"和"Reset the target on a connect"
    2. Debug As > Debug Configurations > PROJECT_CCXML_FILENAME > Program > Loading options:选择"Load symbols only (仅加载符号)"
    3. Debug As > Debug Configurations > PROJECT_CCXML_FILENAME > Target > Program/Memory Load Options > Connection Options: 取消选中"Halt the target on a connect"和"Reset the target on a connect"
    4. 打开设备的 GEL 文件(在调试会话中、转到 Tools > GEL Files)并注释掉 OnTargetConnect ()中的 RAM init 和 GEL_Reset ()行。 然后 、确保 已保存 GEL 文件。

    重新启动调试会话、它应该在不停止器件的情况下进行连接。

    此致!
    Matt

     

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

    尊敬的 Matt:

    默认情况下未选中"Reset the target on connect"。  因此、对于上述任何步骤、我无需进行任何更改。  一切都设置为"Load symbols only"、我还将 GEL 文件中的所有内容注释掉。

    作为附加实验、尽管我目前不在使用它、但我将 CM 内核设置为仅加载符号、而不停止或复位。  CCS 不会尝试执行任何操作、但我还是会尝试它。

    但结果仍然是相同的。  它在连接时停止处理器(CPU1)。

    谢谢!

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

    尊敬的 Ed:

    这是不寻常的。 您能否 共享 GEL 文件?  

    此致!

    Matt

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

    尊敬的 Matt:

    目前、所有内容都已注释掉。  它在逻辑上是空的。

    谢谢!

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

    尊敬的 Ed:

     尝试连接时、您在设备上运行的是什么程序?  

    此致!
    Matt

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

    尊敬的 Matt:

    我将运行我们的产品代码。  自从我在388S 上升级到 CCS 12.5.0后就一直在这样做。  它适用于379D 上的 CCS 10.4.0。

    谢谢!

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

    尊敬的 Ed:

    您是否可以尝试更新到 CCS 12.8.1并 重试? 这是我 在上确认此过程的版本(12.8.1.00005)。

    此致!

    Matt

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

    尊敬的 Matt:

    CCS 12.8.1已连接、CPU1保持运行。  但 CLA 被暂停了。  该选项设置为仅加载符号、未选中"Halt on Connect"并显示为灰色。

    因此、这部分问题得到了解决。

    谢谢!

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

    尊敬的 Ed:

    我很高兴听到它适用于 CPU1。 你是否也修改了 CLA 的 GEL?

    此致!

    Matt

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

    尊敬的 Matt:

    CLA 未指定 GEL 文件。

    谢谢!

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

    尊敬的 Ed:

    对不起,你是对的。 让我在一天结束时回到你身边。

    此致!

    Matt

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

    尊敬的 Ed:

    这位 CLA 专家下周都不在办公室、但我只想确认一下、那时你在 CLA 中确实执行了代码?  

    此致!

    Matt

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

    尊敬的 Matt:

    是的、当连接调试器时、我在 CPU1及其 CLA 中都执行了代码。

    谢谢!

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

    尊敬的 Ed:

    我重新分配给 CLA 专家、以尽快解决这个问题。

    此致!

    Matt

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

    尊敬的 Ed:

    根据特性、CLA 在由主 CPU 完全配置(并且内存被分配)前自动"暂停"、并且其中一个任务被触发。 这样、它与主 CPU 不同、这是因为它并不总是运行代码、而只是等待一个任务被触发。 你能否验证 CLA 在你连接调试器时实际上是否正在运行一个任务? 为此、我建议在任务内部切换 GPIO。

    此致、

    Delaney

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

    尊敬的 Delaney:

    在我连接调试器的情况下、CLA 本来不会运行。

    因此、我尝试将它连接到一个正在运行的系统、在该系统中、CLA 的运行时间略高于10%。  我连接了调试器后、CLA 在地址0处挂起、CPU 上发生了复位、导致其在 TI 引导加载程序中停止。  该复位很可能是由于 CPU 正在等待 CLA 停止运行(我尚未向 CPU 代码添加超时)这一事实而发生的看门狗复位。  但 CLA 因连接过程而停止。

    我已重新启动系统并重试。  这一次 CPU 继续运行、而 CLA 在一个 MSTOP 指令上被暂停。  它似乎停留在那个指令上、这是因为 CLA 的运行时间实际上为0。

    BTW、目前我们正在进行 CLA 的软件启动。

    谢谢!

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

    尊敬的 Ed:

    在与 CCS 团队的专家协商后、我发现无法在 CLA 已经运行(未停止)时连接到 CLA。 C28x 内核上的实时模式即可实现该功能、遗憾的是、尚未为 CLA 内核添加该功能。

    此致、

    Delaney