STM32F407 分散加载文件做IAP升级

2019-07-20 13:17发布

最近在做一个项目,STM32F407跑FreeRTOS系统做IAP在线升级,编译器用的是MDK5的,碰到一个问题是,IAP程序跑起来没问题,APP程序没有修改中断向量表起始地址时,跑起来也没有问题的,但修改了中断向量表起始地址后,中断向量表起始地址由0x8000000改为0x8010000后,APP程序运行起来会进入void HardFault_Handler(void)里跑飞,不过删除一些.c文件减少程序能跑起来,中断向量表起始地址在程序里SCB->VTOR = FLASH_BASE | 0x10000;也改了,编译器也设置正确了!这里和平常的STM32的IAP升级最大的不同是IAP程序和APP程序用到分散加载,并且分散加载文件里把堆栈地址指定了,大小也分配了。有哪位大神搞过的或知道哪里出问题,跪求请教{:cry:}
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
3条回答
风中答案
1楼-- · 2019-07-20 15:53
谢谢原子哥,找到原因了,是跳转前没关中断问题,一开始被分散文件给带跑思路了。在这里表示抱歉,题目写的不合法,以后发帖会注意!
正点原子
2楼-- · 2019-07-20 17:51
 精彩回答 2  元偷偷看……
steel_2006
3楼-- · 2019-07-20 23:39
 精彩回答 2  元偷偷看……

一周热门 更多>