做了一个sd卡读取刷新固件的BL,跳转部分是这样的:
[mw_shl_code=c,true]#ifndef APP_ADDR
#define APP_ADDR 0x80100000
#endif
typedef void (*pFunction)(void);
pFunction JumpToApplication;
uint32_t JumpAddress;
void LoadApplication(void)
{
f_mount(&fs, "", 0);
HAL_SD_DeInit(&cardHandle);
HAL_DeInit();
SysTick->CTRL = 0;
JumpAddress = *(__IO uint32_t*) (APP_ADDR + 4);
JumpToApplication = (pFunction) JumpAddress;
__set_MSP(*(__IO uint32_t*) APP_ADDR);
JumpToApplication();
}[/mw_shl_code]
是的....跳转没有成功.app是个很简单的点灯程序
首先我把Linker.ld文件的地址修改成了0x08010000
system_stm32f4xx.c里
[mw_shl_code=applescript,true]#define VECT_TAB_OFFSET 0x10000[/mw_shl_code]
不知道是否有遗漏,或者是哪里改错了,劳烦各位大虾帮看一下.先谢过了
因为环境限制...我用的是SW4STM32,人小言微不方便强行更换
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
这四个参数设对了应该就没问题了
一周热门 更多>