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.

CCS/TMS320F28388D: FLASH programming

Part Number: TMS320F28388D


Tool/software: Code Composer Studio

Hello,

I was able to load the program in flash, but i am observing a strange behavior when i use the flash lnk cmd file.

i am using the example Flash link cmd file which is slightly modified.

BEGIN            : origin = 0x080000, length = 0x000002 

the application code is updated to be place in flash 4 to7, i have observed it once worked fine even after reset, but later after some time i reloaded after a reset it did not work. on further analysis i observed that at the BEGIN location it was still FFFF FFFF, which should have been some address which will jump to my main function. 

Can you please let me know what settings could have been wrong so that i can look around it, or does it mean that FLASH sector is corrupted.

/* Flash sectors */
FLASH0 : origin = 0x080002, length = 0x001FFE /* on-chip Flash */
FLASH1 : origin = 0x082000, length = 0x002000 /* on-chip Flash */
FLASH2 : origin = 0x084000, length = 0x002000 /* on-chip Flash */
FLASH3 : origin = 0x086000, length = 0x002000 /* on-chip Flash */
FLASH4 : origin = 0x088000, length = 0x008000 /* on-chip Flash */
FLASH5 : origin = 0x090000, length = 0x008000 /* on-chip Flash */
FLASH6 : origin = 0x098000, length = 0x008000 /* on-chip Flash */
FLASH7 : origin = 0x0A0000, length = 0x008000 /* on-chip Flash */
FLASH8 : origin = 0x0A8000, length = 0x008000 /* on-chip Flash */
FLASH9 : origin = 0x0B0000, length = 0x008000 /* on-chip Flash */
FLASH10 : origin = 0x0B8000, length = 0x002000 /* on-chip Flash */
FLASH11 : origin = 0x0BA000, length = 0x002000 /* on-chip Flash */
FLASH12 : origin = 0x0BC000, length = 0x002000 /* on-chip Flash */
FLASH13 : origin = 0x0BE000, length = 0x001FF0 /* on-chip Flash */
// FLASH13_RSVD : origin = 0x0BFFF0, length = 0x000010 /* Reserve and do not use for code as per the errata advisory "Memory: Prefetching Beyond Valid Memory" */

  • Nagesh,

    Your setting look ok. It may happen if code_start function get optimized. Can you check where code_start is mapped in your map file ?

    Regards,

    Vivek Singh

  • Hi Vivek, 

    Thank you for the response, i did check the map file this is what  i found for the code_start

    >> Linked Tue Jul 7 16:23:06 2020

    OUTPUT FILE NAME: <F28388D_Base_Core1.out>
    ENTRY POINT SYMBOL: "_c_int00" address: 000896a5

    The _c_init00 address i believe should have been 0x080000, instead it is showing 00896a5 which is incorrect as per my FLASH lnk cmd file.

    Can you please let me know if its getting this value from anywhere else.

    thanks,

    Nagesh

  • Hi viviek, 

    this is continuation to above reply, in the obj file it shows th address as 0x80000

    SECTION ALLOCATION MAP

    output attributes/
    section page origin length input sections
    -------- ---- ---------- ---------- ----------------
    codestart
    * 0 00080000 00000002
    00080000 00000002 cdstrbr.obj (codestart)

    .switch 0 00088000 00000080
    00088000 00000080 Adc.obj (.switch:_AdcConfig)

  • Nagesh,

    ENTRY POINT SYMBOL: "_c_int00" address: 000896a5

    Entry point symbol should have been code_start. Can you check your project properties and update it and then recompile the code and load it to see if you see correct value at 0x80000 location. Also see if you are getting any warning during compile.

    Regards,

    Vivek Singh