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.

TMS320F28377S: 使用Fapi_doVerify()遇到的问题

Part Number: TMS320F28377S

使用TMS320F28377S时利用F021_API_F2837xS_FPU32.lib进行FLASH操作时遇到以下问题:

1、目的:将8个16-bit的Buffer的数烧写入FLASH E中,以下是定义的变量及程序等:

      Uint16 Buffer[8];(以下程序省略了FLASH的初始化等)

      Uint32 *Buffer32 = (Uint32 *)Buffer;

      Uint32 u32Index = Bzero_SectorE_start;

      oReturnCheck = Fapi_issueProgrammingCommand((Uint32 *)u32Index,Buffer,8,0,0,Fapi_AutoEccGeneration);

      while(Fapi_checkFsmForReady() == Fapi_Status_FsmBusy);

     if(oReturnCheck != Fapi_Status_Success)
     {
          Example_Error(oReturnCheck);
     }

     oFlashStatus = Fapi_getFsmStatus();

     oReturnCheck = Fapi_doVerify((Uint32 *)u32Index,4,Buffer32,&oFlashStatusWord);

     if(oReturnCheck != Fapi_Status_Success)
     {
          Example_Error(oReturnCheck);//程序总是停在此处,不再往下执行。。。。。。。显示变量“state = Fapi_Error_Fail”
     }

2、我看文档是说FLASH E的数和Buffer的数 does not match,但是我后面再重新烧写一版程序,专门读FLASH E的数,和我前一次程序烧写的Buffer的数一样,不确定Fapi_doVerify()为什么报错?

3、或者我上面程序里的什么设置不对吗?我看文档里有一句“ This function is not supported for F2837xS ECC memory space”,不知道跟这个有没有关系?

麻烦请教大家!