器件型号: AM2612-Q1
尊敬的专家:
请分享使用 CCS Theia 调试 XIP 应用的步骤。
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.
器件型号: AM2612-Q1
尊敬的专家:
请分享使用 CCS Theia 调试 XIP 应用的步骤。
在本练习中、我们使用 AM261x Launchpad。 但是、 所有 AM263P 和 AM261 器件的步骤相同
请查看以下步骤概述
1.准备申请
2.修改目标配置
3.刷写应用程序并引导相同程序
4.调试应用程序
请按照以下步骤使用 CCS Theia 调试 XIP 应用。
A.准备申请书
1.作为调试 XIP 的示例、我们将使用以下示例:
示例路径:examples\hello_world_XIP_FSS1
在 CCS 中加载示例并构建示例。
2. 在构建示例之前,我们需要更改 devconfig.mak 文件中的闪存窗口地址范围。 此示例使用了从 0x8000 0000 到 0x8800 0000 的第二个闪存窗口、因此我们可以更改此 MCEL_XIP_FLASH_RANGE 值。 如果您的应用使用 0x6000 0000 范围内的闪存。 则这不是必需的。 此闪存范围属于第一个闪存窗口。

开发 XIP 应用时、链接器需要与 SDK 文档中提及该应用的方式保持一致。
3、 在主函数内的后面加上一个 while 循环。

我们在 OSPI 引导模式下调试 XIP 应用。 在 OSPI 引导模式下、一旦刷写和引导应用、应用程序就会运行。 我们需要在 main 函数处停止它。 为此、我们将添加此 while (1) 循环。
b. 修改目标配置
4. 常规目标配置不能用于 XIP 调试。 目标配置需要进行一些更改。 使用新名称创建新目标配置。 在这里、我创建了一个名为 AM261_XIP.ccxml 的目标配置。 要‘新的目标配置、请点击调试窗口中目标配置部分的“+"图标“图标。

5. 选择 AM261x 器件

6.不需要 GEL 脚本、因此删除 GEL 脚本。 初始化脚本字段应为空白、可删除 GEL 脚本。

7.现在在无工程调试模式下启动目标配置。

8、右键点击该内核并选择“Properties",“,然后、然后转到“Debug"。“。


9.在类别为 Program/Memory Load Options 的调试窗口中、 禁用以下选项
a.启用 CIO 函数使用(需要设置断点)
b.启用半主机断点(要求在 SVC_Handler 处设置断点)

‘将类别更改为‘D“DBugger Options“并禁用“Allow Software breakpoints to be used“。

C.刷写和引导应用程序
11、现在刷写示例应用程序和 SBL。
SBL 在偏移处刷写:0x0
应用程序在偏移处刷写:0x81000
这些是默认的闪存偏移量。 可以使用默认的预编译 SBL。 如果调试定制电路板、则根据需要对齐闪存和 ospi 配置以及引脚多路复用。
刷写后、引导示例。
D.调试 应用程序
12.启动示例后、连接到内核、

连接后、加载符号。 符号指的是,OUT 文件。 该选项位于 Run > Load > Load Symbols…中


找到.out 文件并加载符号。
13.加载后,我们可以看到执行卡在 main 内的 while 循环。 循环控制变量显示在变量窗口中。 修改此参数以进行调试。

14. 修改循环控制变量并向前调试。


我们可以在 UART 终端中看到输出。
