工具与软件:
您好!
我正在 TDA4VM 的 Cortex-R5内核上运行我自己的裸机代码、旨在使 LED 闪烁。 我使用arm-none-eabi-gcc编译器、曾尝试过 SBL 和 U-Boot 引导加载程序、但遇到了一些问题:
-
SBL: 为了运行此处的代码、我使用 SDK 中的 K3ImageGen 将 ELF 文件转换为 appimage、然后按照 SDK 文档中的规定将文件重命名为"app"。 通过 SBL 加载时、没有错误消息、但 LED 不会闪烁、表示代码未执行。 该代码通过 Code Composer Studio 加载时运行不会出现问题、因此我认为这不是代码本身的问题。

-
U-Boot:
- 二进制格式(.bin): 当使用 U-Boot
go命令时、我会收到一个带有的"同步中止"处理程序错误esr 0x02000000。
- uImage 格式: 这也会导致相同的"同步中止"错误。
- 使用 bootelf 的 elf 格式(.elf): 这种方法不会产生任何误差、但也不会运行。 我检查了加载代码的存储器区域(0x80000000)、代码符合预期。 然而、所有寄存器均不发生变化、从而确认代码未在执行。
- 二进制格式(.bin): 当使用 U-Boot
此外、我使用一个更简单的程序进行了测试、该程序只将一个值(0x123456789)写入到存储器中、但遇到相同的问题。
是否有任何见解可能是什么导致了这一问题、或者我可能需要在 U-Boot 或 SBL 中考虑哪些其他配置? 对于 DDR 或其他组件、是否存在我缺失的存储器访问权限或初始化?
感谢您的任何帮助!
此致、
Heverton。