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.
工具与软件:
你好。
我想知道如何正确连接板中的调试器、哪个软件已经通过 QSPI 引导模式启动。
安装的软件如下所示。
我没能回答这两个问题。
- CCS Theia 1.5.1.3.
- CCS 12.8.0
尝试的方法的详细信息写在下面。
——
##尝试过的方式
### CCS Theia 1.5.1.3
####启动无项目调试
我是这么联系的。
https://software-dl.ti.com/ccs/esd/documents/users_guide/ccs_debug-main.html#manual-launch
-右键单击`targetConfig/*.ccxml`
-单击"`S无项目调试`"
-右键单击目标内核
-单击连接目标
连接失败并出现错误。
```μ A
CS_DAP_0:在长度为0x4的第6页上的0x2140408写入内存块时出现故障:(错误-1170 @ 0x2140408)无法访问 DAP。 重置设备、然后重试此操作。 如果错误仍然存在、请确认配置、对电路板进行下电上电、并/或尝试更可靠的 JTAG 设置(例如、降低 TCLK)。 (仿真软件包20.0.0.3178)
CS_DAP_0:GEL:执行 OnTargetConnect ()时出错:目标无法写入0x02140408@System_View
at *((unsigned int*)(0x02140000+0x408))=(unsigned int) 0x1 [evmam273x.gel:47]
在 apll_en_mode1_default ()[evmam273x.gel:2616]
在 DOALL ()[evmam273x.gel:701]
在 OnTargetConnect()
Cortex_R5_0:连接到目标时出错:(错误-1170 @ 0x0)无法访问 DAP。 重置设备、然后重试此操作。 如果错误仍然存在、请确认配置、对电路板进行下电上电、并/或尝试更可靠的 JTAG 设置(例如、降低 TCLK)。 (仿真软件包20.0.0.3178)
```μ A
####删除初始化 脚本(.gel)
在 CCS 定理中、这里的设置是相同的。
但这不能清楚。
如果我将其设置为空、则会更改为 "..\..\..\..\..\..\..\..\...." 完成。
我使用另一个软件检查了.ccxml。
但这里没有初始化脚本设置。
## CCS 12.8.0
`S"Start Project-less Debug`(无项目调试开始)"。
`Initialization Script`如果通过 CCS 打开.ccxml、则为空 12.8.0.
——
此致。
尊敬的 Shumpei:
在连接到 AM273x 内核之前、需要初始化 SoC 和 EVM。 要初始化 AM273x 内核和 EVM 以进行 JTAG 连接、请执行以下操作:
在"无引导"模式下、使用 CCS ccxml 文件(AKA、目标配置文件)和 GEL 文件(AM273x MCU+ SDK:EVM 设置)(AM273x MCU+ SDK:下载、安装和设置 CCS)
当您的应用程序准备好刷写到 QSPI 闪存中后、
在"UART 引导"模式下、用户可以将 SBL_QSPI 和应用程序映像刷写到 QSPI 闪存中(AM273x MCU+ SDK:EVM 设置) (AM273x MCU+ SDK:刷写 Hello World 示例)
在"QSPI Boot"模式下、您可以从 QSPI 闪存引导应用。 (AM273x MCU+ SDK:EVM 设置)
此致、
Ming
尊敬的 Ming:
感谢您的答复。
应用程序已由 QSPI 引导启动。
它已通过 UART 调试日志进行检查。
我想将调试器连接到已启动应用的内核。
如果我知道如何连接它、我将尝试通过单步执行进行调试。
此致。
尊敬的 Shumpei:
在这种情况下、您可以在应用程序的 main()的开头添加以下段:
Volatile int loopForever = 1;
while (loopForever)
{
}
您应该能够在 while 循环中停止目标内核、然后使用 CCS 从应用程序的输出文件加载 symbol。 您可以更改 loopForever = 0、并从此处开始单步执行。
此致、
Ming
尊敬的 Ming:
感谢您的答复。
我尝试添加了循环。
但"Connect Target"失败相同错误。
在我理解的 exec"load symbol"之前需要"connect Target"。
或者我错了如何连接调试器?
此致。
尊敬的 Shumpei:
似乎是在应用程序到达 main ()之前发生错误。 很可能是您的应用出现了 MPU 设置问题。 您能否共享应用的 example.syscfg 和 linker.cmd 映射文件。
此致、
Ming
尊敬的 Ming:
我使用 zip 共享项目。
写入闪存的图像如下所示。
偏移= 0x00000:"sbl_qspi_am273x-evm_r5fss0-0_nortos_ti-arm-clang\Release\sbl_qspi_am273x-evm_r5fss0-0_nortos_ti-arm-clang.tiimage"
偏移= 0xA0000: "empty_am273x-evm_system_freertos\Debug\empty_system.appimage"
包含如下所示。
- sbl_qspi_am273x-evm_r5fss0-0_nortos_ti-arm-clang
-从"sbl_qspi_am273x-evm_r5fss0-0_nortos_ti-arm-clang"导入: sdk 示例
-测试消息和等待循环在进程前插入。
-测试消息在 TeraTerm 中可见。 开始正确。
-"连接目标"失败,在此时间错误。
```μ A
CS_DAP_0:在长度为0x4的第6页上的0x2140408写入内存块时出现故障:(错误-1170 @ 0x2140408)无法访问 DAP。 重置设备、然后重试此操作。 如果错误仍然存在、请确认配置、对电路板进行下电上电、并/或尝试更可靠的 JTAG 设置(例如、降低 TCLK)。 (仿真软件包20.0.0.3178)
CS_DAP_0:GEL:执行 OnTargetConnect ()时出错:目标无法写入0x02140408@System_View
at *((unsigned int*)(0x02140000+0x408))=(unsigned int) 0x1 [evmam273x.gel:47]
在 apll_en_mode1_default ()[evmam273x.gel:2616]
在 DOALL ()[evmam273x.gel:701]
在 OnTargetConnect()
Cortex_R5_0:连接到目标时出错:(错误-1170 @ 0x0)无法访问 DAP。 重置设备、然后重试此操作。 如果错误仍然存在、请确认配置、对电路板进行下电上电、并/或尝试更可靠的 JTAG 设置(例如、降低 TCLK)。 (仿真软件包20.0.0.3178)
```μ A
- 空_*
-从"empty_am273x-evm_system_freertos"导入: SDK 示例
-我用它作为主软件,由 SBL_QSPI 引导。
e2e.ti.com/.../20250305_2D00_ti_2D00_forum_2D00_How-to-connect-debugger-with-qspi-boot-mode.zip
此致。
尊敬的 Shumpei:
由于 SBL_QSPI 已完成 SoC 初始化、因此 QSPI 引导模式不需要任何 GEL 文件。
确保您的 CS_DAP_0没有与之关联的 GEL 文件:
最好的野猪
Ming
尊敬的 Ming:
感谢您提供解决方案。
它可以完全正常工作。
我的故障是每个内核的 check` Initialization Script `。
我了解到这一点正在 删除`初始化脚本`中`CS_DAP_0`。
而不是每个内核。
非常感谢您的答复。
此致。