This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

例程 Example_Flash28027_API.c

用 Example_Flash28027_ROM_API.cmd   就可以执行。

用 Example_Flash28027_SW_API.cmd  不能执行。 为啥?

Example_Flash28027_ROM_API.cmd  屏蔽了 下面api 库

/* Flash28_API:
{
-lFlash2802x_API_V100a.lib(.text)
} LOAD = FLASHD,
RUN = PRAML0,
LOAD_START(_Flash28_API_LoadStart),
LOAD_END(_Flash28_API_LoadEnd),
RUN_START(_Flash28_API_RunStart),
PAGE = 0
*/

xample_Flash28027_SW_API.cmd 

Flash28_API:
{
-lFlash2802x_API_V201.lib(.text)
-lFlash2802x_API_V201.lib(.econst)
} LOAD = FLASHD,
RUN = PRAML0,
LOAD_START(_Flash28_API_LoadStart),
LOAD_END(_Flash28_API_LoadEnd),
RUN_START(_Flash28_API_RunStart),
PAGE = 0

  • 这两个CMD的区别是,ROM_API是Flash_API函数是在Boot_ROM中的,因此不需要下载到Flash中(编译器自动链接2802x_FlashAPI_BootROMSymbols),然后拷到RAM中运行这个动作,因此屏蔽这一段;

    儿SW_API是Flash_API函数下载到Flash中,需要拷到RAM中运行,如果不能运行,检查下Flash_API库的链接地址,Flash初始化,MemCopy()调用等操作是否正常。