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.

F2837xS/D flash api



Hi,

I'm looking to upgrade the device support library I'm using on my project. With the V200, the flash API was updated to V1.54. In the past, I was always linking with the F2837xD library even for F2837xS DSP (since we use only one core, sometimes there are F2837xD on our cards). Reading the important notes of the F2837xS flash api doc, I notice that there are some differences between each library. Is there a problem linking to F2837xS library all the time even if the code will run on a F2837xD? If yes, would it be less of a problem always linking with F2837xD lib? 

Thanks!

  • I think the difference is with the extra flash memory mapped to the CPU on the S device. I've asked our flash expert to confirm.
  • Simon,

    Looks like you want to use only one lib for both F2837xD and F2837xS.  Since, you plan to use F2837xS, you can not use F021_API_F2837xD_FPU32.lib to program the second bank in single core devices and you must use F021_API_F2837xS_FPU32.lib (v1.55) to be able to program the second bank of the F2837xS.    

    Hence, I analyzed the differences between F021_API_F2837xS_FPU32.lib (v1.55) and F021_API_F2837xD_FPU32.lib (V1.54) for you to see if it is possible to use the F021_API_F2837xS_FPU32.lib for F2837xD devices as well.  You can use F021_API_F2837xS_FPU32.lib (v1.55) for F2837xD devices as long as:

    (i) You take care of passing the correct address for F2837xD.  For example, you should not pass F2837xS second bank address to API executing on F2837xD.  API will not be able to tell you that it is an invalid address.  

    (ii) You note that the functions Fapi_getDeviceInfo(), Fapi_getBankSectors() and Fapi_waitDelay() are deprecated.

    (iii) You use the Fapi_UserDefinedFunctions.c file provided with F2837xS example.

    (iv) You claim the pump semaphore correctly (between cores in F2837xD and between banks in F2837xS).

    Also, note that F2837xS has performance improvements compared to that of F2837xD API and hence you will notice that the verify and blankcheck are faster.

    Let me know if you have any questions.

    Thanks and regards,

    Vamsi