我最近在使用TMS570LS0714的处理器,想要使用F021的Flash存储数据,F021 Flash API 的版本为02.01.01。
下面为擦除bank0的sector7,地址为0x20000。
操作如下:
Fapi_initializeFlashBanks(80);
Fapi_setActiveFlashBank(0);
Fapi_enableMainBankSectors(0xffff);
while( FAPI_CHECK_FSM_READY_BUSY != Fapi_Status_FsmReady );
Fapi_issueAsyncCommandWithAddress(Fapi_EraseSector, 0x20000);
while( FAPI_CHECK_FSM_READY_BUSY == Fapi_Status_FsmBusy );
while(FAPI_GET_FSM_STATUS != Fapi_Status_Success);
执行到红色部分就一直跳不出来,是有什么步骤漏了么?还是有其他原因?
Kuanjun Liu:
你的代码运行地址是多少?二者不能在同一bank
bangfa xiong:
回复 Kuanjun Liu:
代码是运行在bank0,可是TMS570LS0714芯片整个只有一个bank0,那是不是没办法做成bootloader去引导程序的方式了?
Kuanjun Liu:
回复 bangfa xiong:
试试编译时把flash擦写代码编译到ram中运行,然后在bootload中加一段将擦写代码和f021库复制到ram函数,就可以擦写flash了
user5876479:
回复 Kuanjun Liu:
我现在也遇到同样问题,在红色部分跳不出来。操作flash的代码我已复制到ram了。到底怎么解决?