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.

[参考译文] CCS/CC3220MODA:无法通过 XDS110 USB 调试探针与 CC3220MODA 通信

Guru**** 2589280 points
Other Parts Discussed in Thread: CC3220MODA, UNIFLASH, CC3220MOD, CC3120, CC3220SF

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

https://e2e.ti.com/support/wireless-connectivity/wi-fi-group/wifi/f/wi-fi-forum/681983/ccs-cc3220moda-cannot-communicate-to-the-cc3220moda-via-xds110-usb-debug-probe

器件型号:CC3220MODA
主题中讨论的其他器件: UNIFLASHCC3220MOD嵌入式编程CC3220SF

工具/软件:Code Composer Studio

你好

我们有一个使用 CC3220MODA (SF 模块)的全新设计-该模块出厂时为空白、我无法使用 XDS110 USB 调试探针连接到它。

作为测试、使用 Launchpad 开发套件 、我通过移除适当的跳线、I set SOP (仅使用跳线0)、将 CC3220MODA 器件与仿真处理器完全隔离、并使用单独的电源为开发套件供电。 在 CCS ( 版本:7.4.0.00015)中的"目标配置"下、我运行了"测试连接"、一切顺利(报告指出我们已成功进行通信)。

在我们的新设计中,我基本上拥有完全相同的硬件设置并运行相同的测试-只有连接失败(以下是报告):

[开始:德州仪器 XDS110 USB 调试探针_0]

执行以下命令:

%CCS_base%/common/uscif/dbgjtag -f %boarddatafil文件%-RV -o -S 完整性

[结果]


---- [打印电路板配置路径名]---------------

C:\Users\dwarner\AppData\Local\TEXASI~1\
   CCS\ti\0\0\BrdDat\testBoard.dat

---- [打印重置命令软件日志文件]-----------------

此实用程序已选择100或510类产品。
此实用程序将加载适配器'jioxds110.dll'。
库构建日期为 "2017年11月6日"。
库构建时间为'10:36:36'。
库软件包版本为'7.0.100.0'。
库组件版本为'35.0.0'。
控制器不使用可编程 FPGA。

硬打开控制器时出错。

---- [发生了错误,该实用程序已中止]-----

此错误由 TI 的 USCIF 驱动程序或实用程序生成。

值为'-615'(0xfffd99)。
标题为'C_ERR_SWD_Protocol'。

说明如下:
目标无法看到正确格式化的 SWD 报头。 。
与目标的连接可能不可靠。 尝试降低
TCLK 设置、然后再试一次。

[结束:德州仪器 XDS110 USB 调试探针_0]

我减少了时钟设置、确保所有电压与开发套件(PDO 引脚、复位线路等)的电压匹配、并且仍然-无连接。

因此、由于所有内容(硬件方面和 PDO 引脚设置)看起来都与我们的开发套件- Q1上的内容相同。 为什么我无法与我们的板通信?

唯一的区别是开发套件中有一个已编程的映像(我认为是"开箱即用"演示)-我们的处理器为空- Q2。 这会产生影响吗?

如果对这个问题有任何见解、我们将不胜感激!

提前感谢。

Dave

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

    您好、Dave、

    这很可能是 SOP 引脚或 CCS 目标配置文件问题。

    您能否检查您在三个 SOP 引脚中的哪一个引脚拉高/低、因为它们与您的引导模式选择相关? 此外、检查您为 CCS 目标配置选择了哪个器件。 这两种配置应该匹配、否则您将无法连接。

    希望这对您有所帮助、

    Kevin

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

    Kevin:

    感谢你的答复。

    我仍然没有任何运气。 所有 SOP 设置都设置为数据表建议的编程设置-仍然没有。

    对于更改、我们决定尝试使用 Launchpad 开发套件来刷写器件。

    作为初始测试、我们使用 uniflash 将已知良好的映像烧录到开发套件本身上的 CC3220上-(我们设置 SOP 跳线以允许串行编程)-按预期编程、无问题  

    然后、我们移除了所有适当的跳线以移除开发套件上的 CC3220、并将所有信号从仿真处理器路由到电路板上的 CC3220 (确保所有 TX/Rx、电源、接地等都正确连接) -我们在板上设置 SOP 设置以允许串行编程。

    多次尝试后、编程失败(出现"操作失败:读取数据超时"错误)。

    同样、唯一的区别是电路板上的 CC3220出厂即用、从未进行过编程-开发套件的 CC3220附带已安装映像。

    因此、这可能与从工厂编程全新器件有关。

    是否有人了解如何从工厂对全新器件进行编程? 是否有任何特殊软件或是否必须以特定方式设置任何引脚? (SOP 引脚或其他?)

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

    您是否在设备上对服务包进行了编程? 这应该是对器件进行编程的第一件事情、否则可能会导致其他编程失败。

    以下指南也是有关对器件进行编程的有用资源、介绍了 SPI 和 UART 编程方法:

    http://www.ti.com/lit/swra568

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

    尊敬的 Kevin:

    您能否提供一些有关如何在我们的器件上对服务包进行编程的信息? 我们设计了一个板、该板只能访问两个 SWD 引脚、我们将收到与上面 Dave 相同的错误消息。

    Shane

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

    Shane、

    您的电路板已设置为 Functional _2WJ (SWD)、您无法更改它? 即 SOP[0]被上拉、无法下拉?

    在这种情况下、您将无法通过 UART 对器件进行编程、因为您需要在 UARTLOAD 或 UARTLOAD_FUNCTIONAL_4WJ 中进行编程。 您必须通过 SPI 对器件进行编程。

    您可以在 Uniflash 中创建映像、以便通过 SPI 进行编程。 请参阅下面的链接并下载工业闪存编程、它应该会有所帮助。

    http://www.ti.com/tool/embedded-programming

    最棒的

    Kevin

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

    尊敬的 Kevin:

    遗憾的是、我们不知道 Uniflash 要求 SPI 或 UART 引脚能够使用 ServicePack 对 CC3220进行初始闪存、因此我们没有拉出电路板上的 SPI 或适用 UART 引脚...

    幸运的是、我们将 P55_GPIO_01拉出到辅助区域、以便我可以轻松访问 TX 引脚、但 P57_GPIO_02隐藏在芯片本身下方。 我能够在我们的电路板上的芯片本身下方漏出一根非常细的导线、并将其焊接到 CC3220MODASF 上。

    现在、我已经将电路板的3.3V 电压轨连接到 LaunchPad 上的3.3V 电压轨。 我已经从我们的 LaunchPad 上断开了所有未使用的 JTAG 和 UART 引脚、因此仿真器不会尝试与该芯片通信。 然后、我将 UART TX 和 RX 引脚以及 LaunchPad 仿真器侧的 RST 引脚分接至电路板。  我可以确认 SOP2被拉高。 随附的图片应显示我的意思。

    当我尝试使用 UniFlash 连接到器件时、会出现超时错误。 您可以在下面所附的示波器屏幕截图中看到 TX、RX 和复位引脚。 当复位变为低电平时、即我单击 UniFlash 上的"Connect"。 TX 似乎没有完全变为低电平、RX 变为低电平并保持低电平。 一旦超时发生、TX 和 RX 再次被拉高。

    任何可能的信息都很棒! 您还可以看到随附的原理图-我们正在尝试复制 TI 过去在小得多的平台上复制的 CC3220MODASF 摄像机附件-我们找到并使用了 TI 为该项目提供的所有文档。

    Shane

    e2e.ti.com/.../3583.Schematic.PDF

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

    您好、Shane、

    稍后我将要详细介绍这一点、但同时我希望您进行一些验证。

    1。您现在有三个 SOP 行用于 UARTLOAD、是[1、0、0]? ([SOP2、SOP1、SOP0])

    2.仔细检查是否为 UART TX/RX 和其他线路使用了正确的引脚。 CC3220MOD 的引脚55和57应接地。 您可能正在查看 CC3220xx DS。

    此外、我错误地阅读了我链接的嵌入式编程工具的功能。 它不是通过 SPI 进行编程的工具、而是在没有 PC 的情况下进行编程的工具。 很抱歉在那里有任何困惑。

    最棒的

    Kevin

    P.S. 我们提供了硬件设计审查指南、如果您有任何未来的硬件版本 、该指南可能对您有所帮助、请访问 processors.wiki.ti.com/.../CC3120_&_CC3220_Hardware_Design_Review。

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

    1.是的、我可以确认 UARTLOAD 的三个 SOP 行是[1、0、0]。
    2. P55_GPIO_01和 P57_GPIO_02的命名规则来自 CC3220MODASF LaunchPad Altium 文件。 我将 UART TX 连接到 CC3220MODASF 芯片的物理引脚46、将 UART RX 连接到物理引脚47。

    我目前无法通过 SPI 进行编程。

    链接的硬件设计审查将非常有用。

    如果您有任何建议、请告诉我、该项目在我们结束时变得越来越紧迫

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

    Shane、

    好的、听起来一切正常。 我没有意识到某些 CC3220mod LP 引脚与封装的引脚不匹配。

    您能否尝试在 XDS110芯片和模块之间完全隔离 CC3220MOD LP 的电源。 即、移除 BRD、GND 和 VBuffer 接头并连接到接头。

    请参阅图片了解我的意思:

    我在 XDS110的 Launch-CC3220MODSF 和 Launch-CC3220S 上完成了这项工作。 需要以下常见连接:GND、VBAT、BRD、RX、TX、 RST 和 BRD。

    我知道这专门用于 LaunchPad、但如果您可以验证所有必要的连接、则应该可以在您的端使用

    此外、确保电路板上的 UART-TX 焊接连接良好可能值得检查、因为该线路看起来需要较长时间才能降低。

    最棒的

    Kevin

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

    **已编**

    Kevin、

    我进一步看了图片。  

    我翻转了 CC3220MODASF 模块并将其直接焊接到芯片上的引脚上。 连接期间、我仍在 UniFlash 上收到一条超时消息。

    当我探测仿真器侧的 BRD 和 VBAT 电源轨时、我测量的电压大约为3.3V、这是有道理的。 最初、我测量的是1.4V、但我意识到电源轨由坏的万用表探针加载...  

    图片中的原型具有拉出的 RX、TX 和 nRESET、并连接到相应的引脚。 SOP2被拉高至电源轨。 VBAT1和 VBAT2被拉高。 接地连接至 GND。

    我仍在使用此准系统测试获取超时消息。

    有什么想法吗?

    Shane

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    在按下 UniFlash 上的"Connect"按钮之前、TX 和 RX 线路都在3.1V 电压下进行测量。 当我单击"Connect"时、TX 线会降至约2.9V、RX 线会变为低电平0V。

    我可以探测 nRESET 并查看是否变为低电平然后变为高电平以复位芯片。 我还可以测量 SOP2、看看它是3.3V 左右。

    我担心在这个最基本的设置中、UniFlash 无法与一个模块通信。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Shane、

    您能否仔细检查模块上焊接的引脚? 看起来 UART TX/RX 和 SOP2是正确的、但 nRESET 和 VBAT 导线看起来稍微关闭了。

    我相信您的黄色导线用于 nRESET (引脚35)、但它看起来连接到 VBAT_RESET (引脚36)。

    我相信您的红线用于 VBAT 1和2、但连接到 VBAT1 (引脚37)和 NC (引脚39)、而不是 VBAT2 (引脚40)。

    希望这对您有所帮助、

    Kevin

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

    尊敬的 Kevin:

    我想我们已经开始做一些事情了!

    从上面的快照中可以看到、我能够使用 LaunchPad 上的一些跳线连接到"纸板"CC3220模块。 我必须做出您建议的改变(我将把这些错误归结为睡眠不足和咖啡不足)。

    需要注意的是、当我用示波器探测 TX 和 RX 线路时、我会看到这些线路上的一些非常奇怪的影响、并且从 UniFlash 中得到超时错误、 但是、当我断开探头和"飞盲"时、我可以连接到器件、没有问题。 可能与我向这些线路引入的电容有关...

    现在、我可以使用您的输入。  在我感到轻松地加快电路板设计并获得新批次以便轻松访问 RX、TX 和复位线路之前、我希望能够在当前电路板上测试此芯片。 现在我需要做些什么来允许这个芯片在 CCS 中使用两个 SWD 引脚进行编程?

    我的理解是、我需要用 ServicePack 和某种图像刷写此芯片。 您能否提供一些有关我最初可以使用哪个映像对电路板进行编程的信息? 可能是 OOB 映像?

    在开发映像模式下刷写该值后、我应该能够使用 SWD 对芯片进行编程、对吧? 如果是这种情况、那么我应该能够采用这个芯片、将其放置在我制造的电路板上、并使用 CCS 对其进行编程。

    感谢所有的帮助! 您一直是一个保存的恩典。

    Shane

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

    非常好、很高兴听到它的工作原理。 不用担心、完全可以理解。 您可能对示波器探头很合适、它们很可能充当某种负载。

    在 SWD 调试的开发模式中、除了服务包外、您不一定需要刷写任何内容、应用程序映像可以重新配置 GPIO 或将器件置于低功耗状态。 可能建议将一些证书刷写到器件中。 如果您计划运行配置、则需要使用此 SimpleLink Academy 中提到的认证(无论如何都是用于开发)。 dev.ti.com/.../wifi_provisioning.html

    对于 SWD 调试、请确保将 SOP 引脚设置为[0、0、1]、并将 CCS 中的链接器命令文件设置为 CC3220SF_SWD。 除此之外、我认为您很好。 可能值得在线快速搜索与 SWD 调试相关的 E2E 问题、以确保答案正确。

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

    如果我对芯片的 WiFi 信息进行硬编码、是否需要执行配置过程? 我在我所在的位置有两个 LaunchPad、其中一个在几个月前完成了配置过程、另一个我没有执行。 这两种方法都可以正常使用我的网络代码。

    配置过程到底实现了什么?

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

    请访问 processors.wiki.ti.com/.../CC3120_&_CC3220_Provisioning

    配置仅用于向器件添加 WiFi 配置文件并将其连接到网络。 如果您已经使用硬编码配置文件进行连接、则不必担心。 具体取决于您的应用。

    最棒的
    Kevin