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.

F28M35E20B: Programming F28M35x flash memories

Part Number: F28M35E20B
Other Parts Discussed in Thread: UNIFLASH, C2000-GANG, CONTROLSUITE

Hi team,

I got a question from customer.

A customer of us asked if we can support the programming of the devices from the F28M35x family. Currently we have a solution for programming Cortex based MCUs but none for programming C2800 based MCUs. I have read the documentation for this devices but it's not 100% clear to me if the programming of all the memories present inside the MCU can be performed just using the Cortex M3 and the FLASH APIs or if we also need to run the APIs with the C2800 in order to program a part of the memory. Using just the Cortex M3 would save us some work, since we would need to implement all the routines for interfacing with C2800, otherwise. Can you help us clarifying this doubt? 

Thanks a lot.

Best regards,

  • ,

    Each core should program it's own flash bank.

    Uniflash from TI, C2000-GANG tool from Elprotronic, C2Prog tool from Codeskin and many other 3rd party flash programming vendors support programming C28x as well on this device.

    If you are going to use JTAG, it does not matter which core is used to program the flash banks on this device, since JTAG is accessible to all the cores.

    If you are going to use SCI (as an example), you can transfer data from M3 to C28x via shared message RAM.  This is how many 3P tools work to establish all the communication via M3 (if that is preferred). 

    Here is the flash API guide for this device:  https://www.ti.com/lit/pdf/spnu595. This tells about the flash API libraries that you have to use for each core.

    Also, there is a flash API usage example in Controlsuite.

    Thanks and regards,

    Vamsi

  • Hi Vamsi,

    Thank you for your patience and quick answer.

    Best regards,

  • Hi Vamsi,

    So for what I understand I need to run two different applications, one for the M3 core and the other for the C28x core for flashing their respective bank. The only thing that changes between JTAG and the "serial bootloader approach" is that with JTAG I can have direct access to both cores for downloading and running my flashing applications, am I correct?

    Thank you.

  • ,

    Your understanding is correct.

    Thanks and regards,
    Vamsi