F4 bootloader选择外部nor flash启动的问题

2019-07-20 20:50发布

bootloader写好了,可以将编好的bin文件写到外部norflash。外部norflash地址为0x60000000

nAddr = 0x60000000;
if (((*(vu32*)nAddr) & 0x2FFE0000 ) == 0x20000000)

m_JumpAddress = *(vu32*) (nAddr + 4);
JumpToApplication = (FunVoidType) m_JumpAddress;

__set_MSP(*(vu32*) nAddr);
JumpToApplication();

while (1);
}


编译的时候,设置如图:编译出来bin应该有问题,m_JumpAddress 的值为 0x0800019d。
如果将ROM1勾选,生成bin文件的时候就会出错。
Error: Q0147E: Failed to create Directory FlashObjoutput.binER_IROM1: File exists


如果下载0x08000000的bin文件,启动的时候直接将m_JumpAddress 的值赋值为0x6000019d,还是启动不起来。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
2条回答
kourbeck
1楼-- · 2019-07-20 22:20
编译的时候,IROM1设为0x08040000。
运行区起始地址设为0x08040000,将升级的版本bin放在外部nor flash中,运行的时候将bin拷贝到0x08040000。
如此,以上的问题便不存在了。
emWin
2楼-- · 2019-07-20 23:41
 精彩回答 2  元偷偷看……

一周热门 更多>