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.

[参考译文] TMS320F28032:将 ERTM 添加到主函数的第一行将影响芯片的功能。

Guru**** 2391415 points
Other Parts Discussed in Thread: C2000WARE

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1037673/tms320f28032-add-ertm-to-the-first-line-in-the-main-function-will-affect-the-chip-s-functionality

器件型号:TMS320F28032
主题中讨论的其他器件:C2000WARE

您好 专家,

  现在客户遇到了一个奇怪的问题、 F28032芯片工作正常、但是现在上电不能正常工作。 初始定位的原因是 ERTM 被添加到主函数中。

  当把 ERTM 添加到主函数时会影响芯片的正常运行。 然而、ERTM 不被添加到主芯片 F28032上电并正常运行。

  那么、 我想知道 ERTM 的作用是什么、或者如何使用它?   是否有更多有关 ERTM Impact 硬件或其他代码软件的参考?
  我检查 了手册、ERTM 等效于 t0 "CLRC DBGM"指令、这是允许实时访问仿真器以访问存储器和寄存器所必需的。

  我想与您确认一些事情:

  1.   需要在 ISR 前后使用 ERTM?对 ERTM 的限制

  2.使用 ERTM 时、在没有连接 JTAG 仿真器的情况下、是否会对芯片或其他代码产生影响?

  由于客户不屏蔽代码内部的 ERTM、并且当仿真器被连接时、芯片被正确加电并且代码运行正常。

  3. 除了 JTAG 实时仿真外,我们能否看到芯片处于哪种模式,是否有其他方法可以查看芯片处于哪种状态? 芯片是处于仿真模式、还是在运行时以另一种方式查看?

  例如、看门狗标志可用于查看看门狗的状态。

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

    您好!

    ERTM  是一种指令、用于清除状态寄存器 ST1中的位、以在内核中启用实时调试模式。 您可以在"CPU 和指令集参考指南"的第2.4节中阅读有关此内容的更多信息。

    有关详细信息、请参阅此论坛帖子

    (+)编译器/TMS320F2812:什么是 ERTM 指令- C2000微控制器论坛- C2000 ︎ 微控制器- TI E2E 支持论坛

    此致、

    Ozino

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

    您好、 Ozino、

      是的、我已阅读此信息。 而且无法提供足够的信息。  客户的问题是 ERTM 是否会影响其代码?

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

    2.使用 ERTM 时、在没有连接 JTAG 仿真器的情况下、是否会对芯片或其他代码产生影响?

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

    大家好,

      请帮帮我。 我的问题没有得到解答、这种情况非常紧急!

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

    绍兴

    我不确定您是否有机会查看文档(spru430f)中的第2.4节、它指出了这一点  

    " 调试使能屏蔽位。 当 DBGM 被置位时、仿真器不能实时访问内存或寄存器。 调试器无法更新其窗口。"

    "在 CPU 执行中断服务例程(ISR)之前、它会设置 DBGM。 当 DBGM = 1时、来自主机处理器的暂停请求和硬件断点被忽略。 如果要在非时间关键型 ISR 中单步执行或设置断点、必须在 ISR 开始处添加 CLRC DBGM 指令。"

    是否要 启用全局实时中断 DBGM? 如果是、您应该在 EINT (启用全局中断 INTM)指令之后立即调用此指令。 您应该注意 的是、DBGM 也在中断操作期间被自动置位。

    使用 ERTM 不应直接影响代码在执行中断时启用调试的能力。

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

    此参考资料未能解决我的问题、 使用 ERTM 是否会导致芯片无法正常工作?

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

    您好  Ozino,

       您的意思是、如果客户想要使用 ERTM、 并且客户还需要在其前面使用 EINT?

       仅使用 ERTM 是否会产生我上面提到的影响?  

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

    您好!

    我刚刚收到了有关这方面的通知。 仍然尝试同化确切的问题。

    从我目前可以读取的内容中、

    A.最初的客户代码运行正常

    B.但在开始时添加 ERTM 会产生问题。

    是这样吗?

    如果答案是肯定的、

     A.当您说它无法正常工作/无法正常通电时,实际发生了什么?

     B.客户打算做什么?

    很抱歉,有太多问题:)

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

    是的、 正确。

    客户  可能希望这样做:

    1. ERTM 指令是否会影响其他器件中的代码? 如果没有 ,希望您提供合理的解释(最好提供物质支持),以消除客户的困惑。
    2. 为什么移除 ERTM 会使芯片正常工作?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    请观看此视频、了解 有关设置和使用实时调试中断的更多信息 https://www.youtube.com/watch?v=gVDRo9m-4ng

    请参阅 C2000Ware 中的此示例、该示例实际展示了它(C:\ti\c2000\C2000Ware) \device_support\f2803x\examples\c28  、称为 epqm_real-time_interrupts)

    请注意,如果没有连接调试器,DBGM 的状态将不会产生影响。  在启动初始化期间、我们的大多数示例(如果不是所有示例)都会清除 DBGM 位。  

    您能否解释更多有关将指令添加到源代码时观察到的内容的详细信息? 您能否在代码中提供有关您尝试使用此指令的时间和位置的详细信息?

    连接仿真器后、您会观察到什么?

    您能否尝试对器件进行编程、下电上电、连接 CCS、复位、然后运行。 看看这是否会有所不同。

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

    您好、Ozino、

       并不是每次都出现这种现象、如我的电子邮件中所述。 客户觉得可以解释为什么添加 ERTM 会导致芯片无法工作、因为如果看门狗没有启用、芯片就会进入无限循环。 但是、它为什么会进入两个 未启用的中断(EMUINT_ISR 和 User1_ISR)中的一个? 因此、我没有找到相关的材料要解释。  

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

    您好、绍兴、

    您的示例中的中断似乎配置不正确。 请仔细检查以确保您的示例中的中断配置正确。 请注意、您可以参考 C2000Ware 中提供的中断示例 SW_SFFITICE_INTERRUPTS、以了解更多信息。

    此外、我们还提供了本文档、其中介绍了如何调试和更正 lllegal ISR。  C28x 中断常见问题解答(TI.com)

    此致、

    Ozino