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.

Choosing F021 API library

Other Parts Discussed in Thread: HALCOGEN, TMS570LS1227

I am using a TMS570LS1227 with CCS 6.1 and Halcogen 04.04.00. Which F021 API library should I use?

  • Nathan,
    If you're starting out on a project - you should update to HalCoGen 4.05 and use the FlashAPI that is installed along side it.
  • Halcogen says this on the FEE tab:

    I have F021 Flash API 02.01.01 installed, but there are over a dozen different libraries.

    Which library should I use?

  • Hi Nathan,

    Ok I misunderstood; I thought you were referring to the version # i.e. 2.00.01 not the library variant. I do think though that even though HalCoGen says that the F021 library is a separate download, in reality I believe there is a single main Hercules installer w. HalCoGen as one component an the F021 API as another.

    But back to the question - if the TMS570LS1227 is your device - then your choices for the library narrow down to:
    - F021_API_CortexR4_BE.lib
    - F021_API_CortexR4_BE_V3D16.lib

    You should match the V3D16 (On of 'Off') to the build settings of your application since the ABI changes a bit when you use the floating point build setting.

    Best Regards,
    Anthony
  • I am using the floating point unit. Does that mean I should use F021_API_CortexR4_BE_V3D16.lib?
  • Nathan,

    Pretty much. In reality you are going to link this library with your application, and to do that, the library and the application ABI need to match.

    If you are using the FPU - then almost certainly you would have turned on the compiler switch for floating point - unless you're doing something 'super sneaky' and in assembly. So then you'd link against the _V3D16 version ...the FPU's long name is VFPv3D16 which is where _V3D16 comes from.

    Best Regards,
    Anthony