STM32F103做IAP编译过程出现 Error: L6218E

2019-07-18 17:33发布

芯片STM32F103VC
官方库:V3.5
MDK:      5.11
在做IAP工程时,参考官方代码
IF (((*(__IO uint32_t*)AppAddress) & 0x2FFE0000 ) == 0x20000000) //检查栈顶地址是否合法.
        {/* Jump to user application */

                JumpAddress = *(__IO uint32_t*) (AppAddress + 4);
                /* 用户应用地址 */
                Jump_To_Application = (pFunction) JumpAddress;
                /* Initialize user application's Stack Pointer */
                __set_MSP(*(__IO uint32_t*) AppAddress);
                 //跳转到APP.
                Jump_To_Application();                              
        }


编译过程  出现 Error: L6218E: Undefined symbol __set_MSP (referred from iap.o).
头文件路径已都包含,百度谷歌 无果,求助弄过的大神,谢谢
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
5条回答
huazhe
1楼-- · 2019-07-18 18:13
本帖最后由 xmshao 于 2017-3-20 16:03 编辑

应该是工程里少了跟内核定义相关的代码,你查下那个core_cm3.c文件加进来没有。

最简单的方法基于ST的模板建个新工程。说不定你少的文件还不止一个。
7762642422d
2楼-- · 2019-07-18 23:28
本帖最后由 moyanming2013 于 2017-3-21 12:30 编辑
ebcoelectronics
3楼-- · 2019-07-18 23:58
 精彩回答 2  元偷偷看……
uwyywefwd
4楼-- · 2019-07-19 01:48
不用谢,实在找不到路径,而且问题又只有这个__set_MSP,就可以自己编写一个,官方的也是人编写出来的。MSP主堆栈指针赋值,不过就几条语句,简单的汇编命令而已。
URtea
5楼-- · 2019-07-19 05:14
你好,我也出现了同样的问题,最后楼主解决了吗?怎么解决的?

一周热门 更多>