bootloader无法跳入APP

2019-07-18 17:21发布

然后我优化了APP编译选项,导致bootloader无法跳入APP。降低优化条件,便可以。
不知道是bootloader跳入有问题,还是IDE优化有BUG所致。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
9条回答
bbslsk
1楼-- · 2019-07-18 22:47
 精彩回答 2  元偷偷看……
dang28
2楼-- · 2019-07-18 23:12
bbslsk 发表于 2019-6-14 13:57
没看出啥问题来,我都是这样跳的
void execute_user_code(uint32_t Addr)
{

boot_jump()代码是怎么样的?
bbslsk
3楼-- · 2019-07-19 03:45
dang28 发表于 2019-6-14 14:09
boot_jump()代码是怎么样的?

__asm void boot_jump( uint32_t address )
{
        LDR SP, [R0]                ;Load new stack pointer address
        LDR PC, [R0, #4]        ;Load new program counter address
}
TOPCB
4楼-- · 2019-07-19 07:57
可能是楼主优化代码以后,部分问题导致。建议楼主仿真测试一下。带有boot的程序也可以仿真的
dang28
5楼-- · 2019-07-19 09:01
TOPCB 发表于 2019-6-14 14:33
可能是楼主优化代码以后,部分问题导致。建议楼主仿真测试一下。带有boot的程序也可以仿真的

仿真可以的。
就是最优化后bootloader跳不过去,应该没有执行到APP的初始化代码,因为出来的是bootloader的HardFault处理打印信息。
后来我降低优化等级就可以了,然后再最优化编译,也可以了。不知道怎么地。
dang28
6楼-- · 2019-07-19 09:43
 精彩回答 2  元偷偷看……

一周热门 更多>