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/CC1312R:问题编程定制板

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

https://e2e.ti.com/support/tools/code-composer-studio-group/ccs/f/code-composer-studio-forum/759584/ccs-cc1312r-issues-programming-custom-board

器件型号:CC1312R

工具/软件:Code Composer Studio

您好!

我目前正在尝试使用 CC1312对定制板进行编程、并且在使器件进行编程时遇到问题。 我将 XDS110调试探针与 ARM10引脚连接器搭配使用。 我不熟悉对 TI 处理器进行编程、也没有太多有关 JTAG 接口的经验。  

当我尝试调试我正在处理的项目时、即让几个 LED 闪烁、我从控制台获得以下输出:

------------------------------------------------------------------

Cortex_M4_0:GEL 输出:内存映射初始化完成。
Cortex_M4_0:GEL 输出:电路板复位完成。
Cortex_M4_0:无法运行目标 CPU:(错误-2134 @ 0x0)无法控制器件执行状态。 重置设备、然后重试此操作。 如果错误仍然存在、请确认配置、对电路板进行下电上电和/或尝试更可靠的 JTAG 设置(例如、较低的 TCLK)。 (仿真包8.0.903.4)
Cortex_M4_0:JTAG 通信错误:(错误-1170 @ 0x0)无法访问 DAP。 重置设备、然后重试此操作。 如果错误仍然存在、请确认配置、对电路板进行下电上电和/或尝试更可靠的 JTAG 设置(例如、较低的 TCLK)。 (仿真包8.0.903.4)

------------------------------------------------------------------

我已经进入了目标配置并更改了设置、例如将 JTAG 频率降低到100kHz、绕过 DAP、然后很幸运地关闭定制配置。 当我使用"测试连接"功能时、我获得以下输出:

------------------------------------------------------------------

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

执行以下命令:

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

[结果]


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

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

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

此实用程序已选择100或510类产品。
此实用程序将加载适配器'jioxds110.dll'。
库构建日期为"2018年11月27日"。
库构建时间为'13:02:43'。
库软件包版本为'8.0.903.4'。
库组件版本为'35.0.0'。
控制器不使用可编程 FPGA。
控制器的版本号为'5'(0x00000005)。
控制器的插入长度为"0"(0x00000000)。
此实用程序将尝试重置控制器。
此实用程序已成功重置控制器。

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

扫描路径将通过切换 JTAG TRST 信号进行复位。
控制器是具有 USB 接口的 XDS110。
从控制器到目标的链路是直接的(不带电缆)。
该软件配置为 XDS110功能。
控制器无法监控 EMU[0]引脚上的值。
控制器无法监控 EMU[1]引脚上的值。
控制器无法控制输出引脚上的时序。
控制器无法控制输入引脚上的时序。
扫描路径链路延迟已精确设置为"0"(0x0000)。

---- [对 JTAG IR 执行完整性扫描测试]-----

此测试将使用64个32位字的块。
该测试将仅应用一次。

使用0xFFFFFFFF 进行测试。
扫描测试:1、跳过:0、失败:0
使用0x00000000执行测试。
扫描测试:2、跳过:0、失败:0
使用0xFE03E0E2执行测试。
扫描测试:3、跳过:0、失败:0
使用0x01FC1F1D 进行测试。
扫描测试:4、跳过:0、失败:0
使用0x5533CCAA 进行测试。
扫描测试:5、跳过:0、失败:0
使用0xAACC3355进行测试。
扫描测试:6、跳过:0、失败:0
所有值均已正确扫描。

JTAG IR 完整性扫描测试成功。

---- [在 JTAG DR 上执行完整性扫描测试]-----

此测试将使用64个32位字的块。
该测试将仅应用一次。

使用0xFFFFFFFF 进行测试。
扫描测试:1、跳过:0、失败:0
使用0x00000000执行测试。
扫描测试:2、跳过:0、失败:0
使用0xFE03E0E2执行测试。
扫描测试:3、跳过:0、失败:0
使用0x01FC1F1D 进行测试。
扫描测试:4、跳过:0、失败:0
使用0x5533CCAA 进行测试。
扫描测试:5、跳过:0、失败:0
使用0xAACC3355进行测试。
扫描测试:6、跳过:0、失败:0
所有值均已正确扫描。

JTAG DR 完整性扫描测试成功。

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

------------------------------------------------------------------

我已经确定了 JTAG 信号的范围、但在调试时、这些信号都不会卡住。 我在许多其他论坛帖子中看到过这些错误、但迄今为止我尝试过的解决方案都没有解决我的问题。 我只是想了解问题是什么、以便找出解决问题的方法。

非常感谢您的任何建议!

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

    您好 Grady、

    您的低级 JTAG 连接测试通过、因此效果良好。 您的物理连接看起来良好。  

    [引用 USER="Grady Anderson]Cortex_M4_0:无法运行目标 CPU:(错误-2134 @ 0x0)无法控制器件执行状态。 重置设备、然后重试此操作。 如果错误仍然存在、请确认配置、对电路板进行下电上电和/或尝试更可靠的 JTAG 设置(例如、较低的 TCLK)。 (仿真包8.0.903.4)[/引述]

    此错误记录在以下链接中:

    http://software-dl.ti.com/ccs/esd/documents/ccs_debugging_jtag_connectivity_issues.html#lost-control-of-device-execution-state

    [引用 USER="Grady Anderson]Cortex_M4_0:JTAG 通信错误:(错误-1170 @ 0x0)无法访问 DAP。 重置设备、然后重试此操作。 如果错误仍然存在、请确认配置、对电路板进行下电上电和/或尝试更可靠的 JTAG 设置(例如、较低的 TCLK)。 (仿真软件包8.0.903.4)[/引述]

    此错误记录在以下链接中:

    http://software-dl.ti.com/ccs/esd/documents/ccs_debugging_jtag_connectivity_issues.html#cannot-access-the-dap

    根据这些链接中的建议、我首先要尝试的是批量擦除选项、以便您的器件了解该选项是否有用

    谢谢

    Ki

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

    我查看了您发送的链接并尝试了 MassErase 脚本。 当我点击"调试"时、程序按预期失败、这将打开调试窗口。 然后、我右键点击德州仪器 XDS110 USB Debug Probe、然后点击"Connect"。 执行此操作后、它在括号中显示为"已暂停"、但我仍然可以运行脚本进行 MassErase。 我还可以读取一些寄存器值、例如辅助寄存器、但 UART0和 UART1等寄存器显示"错误:无法读取"。 MassErase 看起来很成功、因为它会将其输出到控制台:
    ------------------------------------------------------------------
    Cortex_M4_0:MassEras():正在初始化。
    Cortex_M4_0:MassEras():发出电路板复位信号。
    Cortex_M4_0:MassEras():整体擦除完成。
    ------------------------------------------------------------------
    即使在大量擦除器件之后、器件仍会出现相同的错误。 我下载了 SimpleLink CC13x2软件开发套件、并尝试运行 pwmled2_CC1312R1_LAUNCHXL_nortos_CCS 项目。 即使我的闪烁 LED 测试是这些导入项目之一的修改版本。 我不确定是否将项目用于 Launchpad 电路板是问题的一部分、但在某些论坛上建议这样做、因为启动新的项目文件不包含为这些器件正确运行所需的一些驱动程序。 我已经尝试创建自己的项目、这会导致生成错误:
    ------------------------------------------------------------------
    错误#10234-D:未解析的符号仍然存在
    警告#10062-D:未定义入口点符号"ResetISR"
    错误#10010:链接期间遇到错误;未构建"Test_Project.out"
    ------------------------------------------------------------------
    因此、我选择坚持使用下载的 SDK 构建工程。 我们非常感谢您的任何建议。

    再次感谢您的帮助!

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

    您好 Grady、

    [引用 USER="Grady Anderson"]即使在批量擦除器件后,仍会出现相同的错误

    如果您仍然遇到这些仿真错误、可能还会涉及其他问题。

    [引用 USER="Grady Anderson"]、但这是某些论坛上推荐的、因为启动新项目文件时不包含为这些器件正确运行所需的一些驱动程序。 [/报价]

    这违反了我的理解。 我 了解到、我们始终希望人们从现有 SDK 示例开始、而不是从头开始。 生成错误是因为缺少必要的初始化源文件。  

    我将向器件专家介绍此主题。 我相信他们可以为你提供更多的建议,让你进一步取得进展。

    谢谢

    Ki

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    -额外检查 JTAG 接口是否已启动并正在运行:您是否能够使用 SmartRF Studio 控制电路板?
    -如果您使用 SDK 中未修改的示例之一、您是否会看到同样的问题?
    您是否有 LaunchPad 可用于测试?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我能够解决我的问题。 事实证明、我完全忘记了使用内部稳压器所需的电感器和电容器。 为了解决此问题、我在物理上切断了从 DCDC_SW 引脚流出的迹线在 PCB 上的连接、并使用了数据表 VDDR 部分中描述的全局 LDO 选项。 我将在我的设计中修复此问题、以便我可以使用内部稳压器并节省功耗、但现在这是一个简单的修复方法、使我的板可以正常工作。 我能够从 SDK 加载示例、而不会出现任何问题。

    再次感谢所有的帮助和建议!