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.

[参考译文] TMS320F28P650DK:编程后连接到器件时出现问题

Guru**** 2462880 points
Other Parts Discussed in Thread: TMS320F28P650DK

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

https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1501490/tms320f28p650dk-problems-connecting-to-device-after-programming

器件型号:TMS320F28P650DK

工具/软件:

尊敬的论坛:

我围绕 TMS320F28P650DK9ZEJ 器件开发了一些定制数字控制板。 我使用了几个月的原型板一直运行良好、但现在无法通过 XDS200连接到它。 我收到-2131错误、如下所示:-

我甚至无法使用新配置工具下的"测试连接"工具连接到电路板。 C2000器件托管在一个小型子板上、因此我构建了另一个子板、并将其与主系统分开供电。 我能够立即连接到设备并上传测试代码。 但是、在这个新电路板上、现在我无法再连接到 C2000器件。

是否知道为什么会发生这种情况? 我有另一个备用的控制器板、但在我知道这里发生了什么之前不愿意编程。 提醒一下、在该问题发生之前的几个月里、第一块电路板一直在正常工作、没有出现问题。

谢谢、

Iain

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

    此外、有趣的是、如果我将 TMS320F28P650DK 保持在复位状态(将 nXRS 引脚保持在低电平)、可以使用"测试连接"功能连接到器件:

    那么我认为 XDS200可以正常工作吗?

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

    尊敬的 Iain:

    真有意思。 无法连接时设备的状态是什么? 它是否在闪存中执行程序?

    此致、

    马特

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

    我还将补充说明、我们在《C2000 MCU JTAG 连接调试指南》中有2131错误代码的调试步骤:

    但是、由于这涉及定制电路板、因此问题的性质可能更复杂。 这是一个很好的起点。

    此致、

    马特

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

    谢谢 Matt、我将会介绍这一过程。

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

    您好、Matt、是的、该器件正在从闪存执行代码。 在新电路板上、事件序列是(1)使用目标配置检查来检查连接-工作正常。 然后(2)对成功完成的闪存进行编程。 然后(3)对电路板进行下电上电。 MCU 加电并执行代码、但从那时起、我仍然无法连接到 MCU。 我现在订购了备用 XDS200、以便排除我当前订购的产品造成的损坏。 您是否看到 XDS200是砖型器件?

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

    你好、Matt、好的、我取得了一些进展。 作为硬件工程师、我决定在 XDS200尝试连接时查看 JTAG 引脚的状态。 在下面的示波器图中、C1 (黄色)为 TMS、C2 (红色)为 TDI、C3 (蓝色)为 TDO、C4 (绿色)为 TCK。  

    这是我尝试连接目标配置工具时在 JTAG 端口上执行的第一个活动。 我们在 TCK 和 TDI 上获取活动、但在 TMS 或 TDO 上不获取活动。 我不确定这是否符合预期、但我阅读了您随附的指南、并注意到仅使用两个引脚 JTAG 即可连接到此器件:

    我更改为 cJTAG (1149.7) 2引脚高级模式、设置如上和所示 这样可以连接到器件、编程闪存并读取调试值。  

    出于好奇心、在看到一些 JTAG 信号不是以正常的四线制方法激活的后、我选择了这条路线。 我的问题是:

    1)有什么想法可能导致这种情况? 电路板已经愉快地使用默认的四线 JTAG 运行了几个月、我不使用任何与 JTAG 引脚进行多路复用的 GPIO

    2)这是否是可接受的器件编程方法? 我以前从未使用过它,只是偶然发现了它的一点运气。

    谢谢、

    Iain

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

    好<我知道现在发生了什么。 很抱歉浪费了您的时间、但我错误地将引脚 T12分配为 UART_B、没有检查该引脚是否也用于 UART TDI 功能。 因此、当我对器件进行编程并开始执行代码时、当我尝试再次进行编程/连接时、TDI 不再可用于通信。 幸运的是、2线 cJTAG 模式仍然有效、我能够再次连接。 我现在已经回到正常的四线 JTAG 模式、并且返回的引脚 T12仅为 TDI 功能。

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

    尊敬的 Iain:

    我很高兴您能够如此快速地解决问题! 感谢您更新该主题、并详细说明了解决方案。

    2)这是一种对器件进行编程的可接受方法吗? 我以前从未使用过它,只是偶然发现它有点运气。

    cJTAG (IEEE 1149.7)是 JTAG 标准(IEEE 1149.1)的扩展、该标准通过在一个双向引脚上多路复用 TMS、TDI 和 TDO 信号来减少所需的引脚数量(这就是为什么您能够连接 cJTAG、但不能连接正常的 JTAG)、提供所有正常的 JTAG 调试和测试功能。

    请查看以下主题、了解有关 cJTAG 的更多信息:

    https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/754473/tms320f280049-question-jtag-vs-cjtag

    https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/807783/tms320f280049-cjtag-vs-jtag-speed-robustness

    此致、

    马特