初级会员
- 积分
- 63
- 金钱
- 63
- 注册时间
- 2016-10-17
- 在线时间
- 11 小时
|
1金钱
做了一个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,人小言微不方便强行更换 |
|