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.

TMS320F280037C: Problem saving code in flash memory

Part Number: TMS320F280037C
Other Parts Discussed in Thread: TMS320F280037

I wrote a code using bitfield programming for the microcontroller TMS320F280037, but when I try to save my code in flash memory I receive the following errors:

"../F280037_flash_lnk.cmd", line 13: error #10263: BOOT_RSVD memory range has already been specified
"../F280037_flash_lnk.cmd", line 13: error #10264: BOOT_RSVD memory range overlaps existing memory range BOOT_RSVD
"../F280037_flash_lnk.cmd", line 15: error #10263: RAMM0 memory range has already been specified
"../F280037_flash_lnk.cmd", line 15: error #10264: RAMM0 memory range overlaps existing memory range RAMM0
"../F280037_flash_lnk.cmd", line 16: error #10263: RAMM1 memory range has already been specified
"../F280037_flash_lnk.cmd", line 16: error #10264: RAMM1 memory range overlaps existing memory range RAMM1
"../F280037_flash_lnk.cmd", line 20: error #10263: RAMLS0 memory range has already been specified
"../F280037_flash_lnk.cmd", line 20: error #10264: RAMLS0 memory range overlaps existing memory range RAMLS0
"../F280037_flash_lnk.cmd", line 21: error #10263: RAMLS1 memory range has already been specified
"../F280037_flash_lnk.cmd", line 21: error #10264: RAMLS1 memory range overlaps existing memory range RAMLS1
"../F280037_flash_lnk.cmd", line 22: error #10263: RAMLS2 memory range has already been specified
"../F280037_flash_lnk.cmd", line 22: error #10264: RAMLS2 memory range overlaps existing memory range RAMLS2
"../F280037_flash_lnk.cmd", line 23: error #10263: RAMLS3 memory range has already been specified
"../F280037_flash_lnk.cmd", line 23: error #10264: RAMLS3 memory range overlaps existing memory range RAMLS3
"../F280037_flash_lnk.cmd", line 24: error #10263: RAMLS4 memory range has already been specified
"../F280037_flash_lnk.cmd", line 24: error #10264: RAMLS4 memory range overlaps existing memory range RAMLS4
"../F280037_flash_lnk.cmd", line 25: error #10263: RAMLS5 memory range has already been specified
"../F280037_flash_lnk.cmd", line 25: error #10264: RAMLS5 memory range overlaps existing memory range RAMLS5
"../F280037_flash_lnk.cmd", line 26: error #10263: RAMLS6 memory range has already been specified
"../F280037_flash_lnk.cmd", line 26: error #10264: RAMLS6 memory range overlaps existing memory range RAMLS6
"../F280037_flash_lnk.cmd", line 27: error #10263: RAMLS7 memory range has already been specified
"../F280037_flash_lnk.cmd", line 27: error #10264: RAMLS7 memory range overlaps existing memory range RAMLS7
"../F280037_flash_lnk.cmd", line 32: error #10263: RAMGS0 memory range has already been specified
"../F280037_flash_lnk.cmd", line 32: error #10264: RAMGS0 memory range overlaps existing memory range RAMGS0
"../F280037_flash_lnk.cmd", line 33: error #10263: RAMGS1 memory range has already been specified
"../F280037_flash_lnk.cmd", line 33: error #10264: RAMGS1 memory range overlaps existing memory range RAMGS1
"../F280037_flash_lnk.cmd", line 34: error #10263: RAMGS2 memory range has already been specified
"../F280037_flash_lnk.cmd", line 34: error #10264: RAMGS2 memory range overlaps existing memory range RAMGS2
"../F280037_flash_lnk.cmd", line 35: error #10263: RAMGS3 memory range has already been specified
"../F280037_flash_lnk.cmd", line 35: error #10264: RAMGS3 memory range overlaps existing memory range RAMGS3
"../F280037_flash_lnk.cmd", line 38: error #10263: BOOTROM memory range has already been specified
"../F280037_flash_lnk.cmd", line 38: error #10264: BOOTROM memory range overlaps existing memory range BOOTROM
"../F280037_flash_lnk.cmd", line 39: error #10263: SECURE_ROM memory range has already been specified
"../F280037_flash_lnk.cmd", line 39: error #10264: SECURE_ROM memory range overlaps existing memory range SECURE_ROM
"../F280037_flash_lnk.cmd", line 41: error #10263: RESET memory range has already been specified
"../F280037_flash_lnk.cmd", line 41: error #10264: RESET memory range overlaps existing memory range RESET
"../F280037_flash_lnk.cmd", line 48: error #10263: BEGIN memory range has already been specified
"../F280037_flash_lnk.cmd", line 48: error #10264: BEGIN memory range overlaps existing memory range BEGIN
"../F280037_flash_lnk.cmd", line 51: error #10263: FLASH_BANK0_SEC0 memory range has already been specified
"../F280037_flash_lnk.cmd", line 51: error #10264: FLASH_BANK0_SEC0 memory range overlaps existing memory range FLASH_BANK0_SEC0
"../F280037_flash_lnk.cmd", line 52: error #10263: FLASH_BANK0_SEC1 memory range has already been specified
"../F280037_flash_lnk.cmd", line 52: error #10264: FLASH_BANK0_SEC1 memory range overlaps existing memory range FLASH_BANK0_SEC1
"../F280037_flash_lnk.cmd", line 53: error #10263: FLASH_BANK0_SEC2 memory range has already been specified
"../F280037_flash_lnk.cmd", line 53: error #10264: FLASH_BANK0_SEC2 memory range overlaps existing memory range FLASH_BANK0_SEC2
"../F280037_flash_lnk.cmd", line 54: error #10263: FLASH_BANK0_SEC3 memory range has already been specified
"../F280037_flash_lnk.cmd", line 54: error #10264: FLASH_BANK0_SEC3 memory range overlaps existing memory range FLASH_BANK0_SEC3
"../F280037_flash_lnk.cmd", line 55: error #10263: FLASH_BANK0_SEC4 memory range has already been specified
"../F280037_flash_lnk.cmd", line 55: error #10264: FLASH_BANK0_SEC4 memory range overlaps existing memory range FLASH_BANK0_SEC4
"../F280037_flash_lnk.cmd", line 56: error #10263: FLASH_BANK0_SEC5 memory range has already been specified
"../F280037_flash_lnk.cmd", line 56: error #10264: FLASH_BANK0_SEC5 memory range overlaps existing memory range FLASH_BANK0_SEC5
"../F280037_flash_lnk.cmd", line 57: error #10263: FLASH_BANK0_SEC6 memory range has already been specified
"../F280037_flash_lnk.cmd", line 57: error #10264: FLASH_BANK0_SEC6 memory range overlaps existing memory range FLASH_BANK0_SEC6
"../F280037_flash_lnk.cmd", line 58: error #10263: FLASH_BANK0_SEC7 memory range has already been specified
"../F280037_flash_lnk.cmd", line 58: error #10264: FLASH_BANK0_SEC7 memory range overlaps existing memory range FLASH_BANK0_SEC7
"../F280037_flash_lnk.cmd", line 59: error #10263: FLASH_BANK0_SEC8 memory range has already been specified
"../F280037_flash_lnk.cmd", line 59: error #10264: FLASH_BANK0_SEC8 memory range overlaps existing memory range FLASH_BANK0_SEC8
"../F280037_flash_lnk.cmd", line 60: error #10263: FLASH_BANK0_SEC9 memory range has already been specified
"../F280037_flash_lnk.cmd", line 60: error #10264: FLASH_BANK0_SEC9 memory range overlaps existing memory range FLASH_BANK0_SEC9
"../F280037_flash_lnk.cmd", line 61: error #10263: FLASH_BANK0_SEC10 memory range has already been specified
"../F280037_flash_lnk.cmd", line 61: error #10264: FLASH_BANK0_SEC10 memory range overlaps existing memory range FLASH_BANK0_SEC10
"../F280037_flash_lnk.cmd", line 62: error #10263: FLASH_BANK0_SEC11 memory range has already been specified
"../F280037_flash_lnk.cmd", line 62: error #10264: FLASH_BANK0_SEC11 memory range overlaps existing memory range FLASH_BANK0_SEC11
"../F280037_flash_lnk.cmd", line 63: error #10263: FLASH_BANK0_SEC12 memory range has already been specified
"../F280037_flash_lnk.cmd", line 63: error #10264: FLASH_BANK0_SEC12 memory range overlaps existing memory range FLASH_BANK0_SEC12
"../F280037_flash_lnk.cmd", line 64: error #10263: FLASH_BANK0_SEC13 memory range has already been specified
"../F280037_flash_lnk.cmd", line 64: error #10264: FLASH_BANK0_SEC13 memory range overlaps existing memory range FLASH_BANK0_SEC13
"../F280037_flash_lnk.cmd", line 65: error #10263: FLASH_BANK0_SEC14 memory range has already been specified
"../F280037_flash_lnk.cmd", line 65: error #10264: FLASH_BANK0_SEC14 memory range overlaps existing memory range FLASH_BANK0_SEC14
"../F280037_flash_lnk.cmd", line 66: error #10263: FLASH_BANK0_SEC15 memory range has already been specified
"../F280037_flash_lnk.cmd", line 66: error #10264: FLASH_BANK0_SEC15 memory range overlaps existing memory range FLASH_BANK0_SEC15
"../F280037_flash_lnk.cmd", line 69: error #10263: FLASH_BANK1_SEC0 memory range has already been specified
"../F280037_flash_lnk.cmd", line 69: error #10264: FLASH_BANK1_SEC0 memory range overlaps existing memory range FLASH_BANK1_SEC0
"../F280037_flash_lnk.cmd", line 70: error #10263: FLASH_BANK1_SEC1 memory range has already been specified
"../F280037_flash_lnk.cmd", line 70: error #10264: FLASH_BANK1_SEC1 memory range overlaps existing memory range FLASH_BANK1_SEC1
"../F280037_flash_lnk.cmd", line 71: error #10263: FLASH_BANK1_SEC2 memory range has already been specified
"../F280037_flash_lnk.cmd", line 71: error #10264: FLASH_BANK1_SEC2 memory range overlaps existing memory range FLASH_BANK1_SEC2
"../F280037_flash_lnk.cmd", line 72: error #10263: FLASH_BANK1_SEC3 memory range has already been specified
"../F280037_flash_lnk.cmd", line 72: error #10264: FLASH_BANK1_SEC3 memory range overlaps existing memory range FLASH_BANK1_SEC3
"../F280037_flash_lnk.cmd", line 73: error #10263: FLASH_BANK1_SEC4 memory range has already been specified
"../F280037_flash_lnk.cmd", line 73: error #10264: FLASH_BANK1_SEC4 memory range overlaps existing memory range FLASH_BANK1_SEC4
"../F280037_flash_lnk.cmd", line 74: error #10263: FLASH_BANK1_SEC5 memory range has already been specified
"../F280037_flash_lnk.cmd", line 74: error #10264: FLASH_BANK1_SEC5 memory range overlaps existing memory range FLASH_BANK1_SEC5
"../F280037_flash_lnk.cmd", line 75: error #10263: FLASH_BANK1_SEC6 memory range has already been specified
"../F280037_flash_lnk.cmd", line 75: error #10264: FLASH_BANK1_SEC6 memory range overlaps existing memory range FLASH_BANK1_SEC6
"../F280037_flash_lnk.cmd", line 76: error #10263: FLASH_BANK1_SEC7 memory range has already been specified
"../F280037_flash_lnk.cmd", line 76: error #10264: FLASH_BANK1_SEC7 memory range overlaps existing memory range FLASH_BANK1_SEC7
"../F280037_flash_lnk.cmd", line 77: error #10263: FLASH_BANK1_SEC8 memory range has already been specified
"../F280037_flash_lnk.cmd", line 77: error #10264: FLASH_BANK1_SEC8 memory range overlaps existing memory range FLASH_BANK1_SEC8
"../F280037_flash_lnk.cmd", line 78: error #10263: FLASH_BANK1_SEC9 memory range has already been specified
"../F280037_flash_lnk.cmd", line 78: error #10264: FLASH_BANK1_SEC9 memory range overlaps existing memory range FLASH_BANK1_SEC9
"../F280037_flash_lnk.cmd", line 79: error #10263: FLASH_BANK1_SEC10 memory range has already been specified
"../F280037_flash_lnk.cmd", line 79: error #10264: FLASH_BANK1_SEC10 memory range overlaps existing memory range FLASH_BANK1_SEC10
"../F280037_flash_lnk.cmd", line 80: error #10263: FLASH_BANK1_SEC11 memory range has already been specified
"../F280037_flash_lnk.cmd", line 80: error #10264: FLASH_BANK1_SEC11 memory range overlaps existing memory range FLASH_BANK1_SEC11
"../F280037_flash_lnk.cmd", line 81: error #10263: FLASH_BANK1_SEC12 memory range has already been specified
"../F280037_flash_lnk.cmd", line 81: error #10264: FLASH_BANK1_SEC12 memory range overlaps existing memory range FLASH_BANK1_SEC12
"../F280037_flash_lnk.cmd", line 82: error #10263: FLASH_BANK1_SEC13 memory range has already been specified
"../F280037_flash_lnk.cmd", line 82: error #10264: FLASH_BANK1_SEC13 memory range overlaps existing memory range FLASH_BANK1_SEC13
"../F280037_flash_lnk.cmd", line 83: error #10263: FLASH_BANK1_SEC14 memory range has already been specified
"../F280037_flash_lnk.cmd", line 83: error #10264: FLASH_BANK1_SEC14 memory range overlaps existing memory range FLASH_BANK1_SEC14
"../F280037_flash_lnk.cmd", line 84: error #10263: FLASH_BANK1_SEC15 memory range has already been specified
fatal error #99900: error limit reached; 100 errors detected

Could you please help resolve this issue?

  • Hi, 

    Looks like you may have added two linker command files to the project.  Pls check if this is the case and include only one of them.

    Best Regards

    Siddharth

  • Yes, you are right, but now I removed one liker and this problem appeared.

    "C:\\ti\\ccs1250\\ccs\\utils\\bin\\gmake" -k -j 4 all -O

    Building target: "F280037 0 FLASH teste.out"
    Invoking: C2000 Linker
    "C:/ti/ccs1250/ccs/tools/compiler/ti-cgt-c2000_22.6.1.LTS/bin/cl2000" -v28 -ml -mt --cla_support=cla2 --float_support=fpu32 --tmu_support=tmu0 --vcu_support=vcrc --advice:performance=all --define=_FLASH --define=DEBUG -g --diag_warning=225 --diag_wrap=off --display_error_number --gen_func_subsections=on --abi=coffabi -z -m"F280037 0 FLASH teste.map" --stack_size=0x200 --warn_sections -i"C:/ti/ccs1250/ccs/tools/compiler/ti-cgt-c2000_22.6.1.LTS/lib" -i"C:/ti/ccs1250/ccs/tools/compiler/ti-cgt-c2000_22.6.1.LTS/include" --reread_libs --diag_wrap=off --display_error_number --xml_link_info="F280037 0 FLASH teste_linkInfo.xml" --rom_model -o "F280037 0 FLASH teste.out" "./Peripheral_Setup.obj" "./can.obj" "./device.obj" "./f28003x_adc.obj" "./f28003x_codestartbranch.obj" "./f28003x_cputimers.obj" "./f28003x_defaultisr.obj" "./f28003x_globalvariabledefs.obj" "./f28003x_gpio.obj" "./f28003x_piectrl.obj" "./f28003x_pievect.obj" "./f28003x_sysctrl.obj" "./f28003x_usdelay.obj" "./gpio.obj" "./interrupt.obj" "./main.obj" "./sysctl.obj" "../F280037_flash_lnk.cmd" "../f28003x_headers_nonBIOS.cmd" -llibc.a
    <Linking>

    undefined first referenced
    symbol in file
    --------- ----------------
    _RamfuncsLoadSize ./device.obj
    _RamfuncsLoadStart ./device.obj
    _RamfuncsRunStart ./device.obj

    error #10234-D: unresolved symbols remain

    error #10010: errors encountered during linking; "F280037 0 FLASH teste.out" not built
    >> Compilation failure
    makefile:152: recipe for target 'F280037 0 FLASH teste.out' failed
    gmake[1]: *** [F280037 0 FLASH teste.out] Error 1
    gmake: *** [all] Error 2
    makefile:148: recipe for target 'all' failed

    Any suggestions?

  • Hi, 

    Looks like the linker command file has a section which is loaded to Flash but the code runs from RAM. 

    These symbols are created by the linker and need to be "extern" in your program. Add the following lines to C file in your project to get rid of this error.

    extern uint16_t RamfuncsLoadStart;
    extern uint16_t RamfuncsLoadSize;
    extern uint16_t RamfuncsRunStart;

    Best Regards

    Siddharth

  • Hi,

    I have added these 3 lines in my main C file, but the problem persists.

    **** Build of configuration Debug for project F280037 0 FLASH teste ****

    "C:\\ti\\ccs1250\\ccs\\utils\\bin\\gmake" -k -j 4 all -O

    Building target: "F280037 0 FLASH teste.out"
    Invoking: C2000 Linker
    "C:/ti/ccs1250/ccs/tools/compiler/ti-cgt-c2000_22.6.1.LTS/bin/cl2000" -v28 -ml -mt --cla_support=cla2 --float_support=fpu32 --tmu_support=tmu0 --vcu_support=vcrc --advice:performance=all --define=_FLASH --define=DEBUG -g --diag_warning=225 --diag_wrap=off --display_error_number --gen_func_subsections=on --abi=coffabi -z -m"F280037 0 FLASH teste.map" --stack_size=0x200 --warn_sections -i"C:/ti/ccs1250/ccs/tools/compiler/ti-cgt-c2000_22.6.1.LTS/lib" -i"C:/ti/ccs1250/ccs/tools/compiler/ti-cgt-c2000_22.6.1.LTS/include" --reread_libs --diag_wrap=off --display_error_number --xml_link_info="F280037 0 FLASH teste_linkInfo.xml" --rom_model -o "F280037 0 FLASH teste.out" "./Peripheral_Setup.obj" "./can.obj" "./device.obj" "./f28003x_adc.obj" "./f28003x_codestartbranch.obj" "./f28003x_cputimers.obj" "./f28003x_defaultisr.obj" "./f28003x_globalvariabledefs.obj" "./f28003x_gpio.obj" "./f28003x_piectrl.obj" "./f28003x_pievect.obj" "./f28003x_sysctrl.obj" "./f28003x_usdelay.obj" "./gpio.obj" "./interrupt.obj" "./main.obj" "./sysctl.obj" "../F280037_flash_lnk.cmd" "../f28003x_headers_nonBIOS.cmd" -llibc.a
    <Linking>

    undefined first referenced
    symbol in file
    --------- ----------------
    _RamfuncsLoadSize ./device.obj
    _RamfuncsLoadStart ./device.obj
    _RamfuncsRunStart ./device.obj

    error #10234-D: unresolved symbols remain
    error #10010: errors encountered during linking; "F280037 0 FLASH teste.out" not built

    >> Compilation failure
    makefile:152: recipe for target 'F280037 0 FLASH teste.out' failed
    gmake[1]: *** [F280037 0 FLASH teste.out] Error 1
    makefile:148: recipe for target 'all' failed
    gmake: *** [all] Error 2

    **** Build Finished ****

    Any other ideia?

  • Hi, 

    Looks like these are reference in device.c since the error mentions it as unresolved symbol in device.obj

    Request you to add these lines in device.c instead of main.c and try it out,

    Best Regards

    Siddharth