TMS570LS1227,即Cortex R4。
我需要跳转到特定地址(例如:0x4万)。 它是从引导到应用程序的跳转。
此处应使用什么组装说明集。 跳转完成后,除非重置完成,否则我不想返回Bootloader部分。
我尝试了BLX指令。 它跳转到应用程序代码。执行几个指令后,切换到调用它的bootloader。
对于相同部件,正确的装配说明应该是什么?
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.
TMS570LS1227,即Cortex R4。
我需要跳转到特定地址(例如:0x4万)。 它是从引导到应用程序的跳转。
此处应使用什么组装说明集。 跳转完成后,除非重置完成,否则我不想返回Bootloader部分。
我尝试了BLX指令。 它跳转到应用程序代码。执行几个指令后,切换到调用它的bootloader。
对于相同部件,正确的装配说明应该是什么?
案例1:
asm (" mov R12,0x2万");
ASM (" blx R12");
刷新十六进制文件后,将验证写入的应用程序十六进制文件,然后在上创建Appflag。
发生重置,检查Appflag,即验证应用程序文件,然后调用跳转例程
asm (" mov R12,0x2万");
ASM (" blx R12");
被调用
它跳至0x2万地址(在反汇编列表中观察)。执行几个指令,当处于连续运行状态时;不执行应用程序代码,而是执行重置,然后再次执行bootloader。
再次检查Appflag,即验证应用程序文件,然后跳过例程 。 仅保留在Bootloader中。
2 ((void (*)(void))0x2万)(); 完全不工作
刷新十六进制文件后,将验证写入的应用程序十六进制文件,然后在上创建Appflag。
发生重置,检查Appflag (即验证应用程序文件),然后调用跳转例程,其中 调用(void (*)(void))0x2万)();
但它不起作用。 仅保留在Bootloader中。
Lokesh,您好!
是否可以使用我的引导加载程序示例以二进制格式加载应用程序?
您可以使用CCS生成二进制文件:
键入以下命令:
"${cce_install_root}/utils/tiobj2bin/tiobj2bin""${BuildArtifactFileName}""${BuildArtifactFileBaseName}.bin""${CG_tool_root}/bin/armofd""${CG_tool_root}/bin/armhex"
至
生成-->步骤-->生成后步骤:
QJ Wang,您好!
在此之前,我有一个问题。 请浏览我随附的Word文件 。e2e.ti.com/.../305.2022万.docx
在cmd文件和intvecs.asm文件中所做的更改应该是什么