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/TMS320F28069M: flash and debug

Part Number: TMS320F28069M
Other Parts Discussed in Thread: MOTORWARE

Tool/software: Code Composer Studio

I have two CCS codes.

One code is as follows.

The other codes are as follows.

1) What is the difference between [Active - Flash] and [Active - Debug]?

2) I use only one tms320f28069m chip. I added a project as follows and became two projects.

If I build(push ctrl + b) in this state, does one of the two projects work? Or are both projects working?

  • Hello,

    The links to your screenshots appear to be broken. Please repost them

    Kwan Hyoung Lee said:
    1) What is the difference between [Active - Flash] and [Active - Debug]?

    They are separate Build Configurations of the project.

     Without knowing the details of how each configuration was set up, I would guess that "Flash" configuration is to have the code programmed and run from flash while "Debug" may be going to RAM. The easiest way to confirm this is to check the Linker Command File for each.

    Kwan Hyoung Lee said:
    2) I use only one tms320f28069m chip. I added a project as follows and became two projects.

    I will need the working screenshot to answer this question. Please repost it.

    Thanks

    ki

  •  I have two CCS codes.

    One code is as follows.

    (picture 1 )

    The other codes are as follows.

    (picture2)

    1) What is the difference between [Active - Flash] and [Active - Debug]?

    2) I use only one tms320f28069m chip. I added a project as follows and became two projects.

    (picture3)

    If I build(push ctrl + b) in this state, does one of the two projects work? Or are both projects working?

    3) I'dont know how to check the Linker Command File for each.

  • Kwan Hyoung Lee said:
    If I build(push ctrl + b) in this state, does one of the two projects work? Or are both projects working?

    Only the project with the "Active" designation will be built.

    Kwan Hyoung Lee said:
    3) I'dont know how to check the Linker Command File for each.

    The key thing to look at is what Memory region the .text section is being allocated to. Is that range Flash? RAM?

  • Q1. Do I just have to look at the .CMD file?
  • That would definitely tell you where the code is being loaded to. It is a good start.
  • I saw the .cmd file.
    a partial code of the .cmd files in the file [active - debug] is as follows:

    SECTIONS
    {

    /* Allocate program areas: */
    .cinit : > FLASHA, PAGE = 0
    .pinit : > FLASHA, PAGE = 0
    .text : > FLASHA, PAGE = 0
    codestart : > BEGIN, PAGE = 0

    #ifdef __TI_COMPILER_VERSION__
    #if __TI_COMPILER_VERSION__ >= 15009000
    .TI.ramfunc : {} LOAD = FLASHD,
    RUN = RAML0,
    LOAD_START(_RamfuncsLoadStart),
    LOAD_END(_RamfuncsLoadEnd),
    RUN_START(_RamfuncsRunStart),
    PAGE = 0
    #else
    ramfuncs : LOAD = FLASHD,
    RUN = RAML0,
    LOAD_START(_RamfuncsLoadStart),
    LOAD_END(_RamfuncsLoadEnd),
    RUN_START(_RamfuncsRunStart),
    PAGE = 0
    #endif
    #endif

    I think the [active - debug] file is also stored in flash memory.
    What's the difference between [active - flash] and [active - debug]?
  • Kwan Hyoung Lee said:
    I think the [active - debug] file is also stored in flash memory.

    This looks to be the case.

    Kwan Hyoung Lee said:
    What's the difference between [active - flash] and [active - debug]?

    This question is best answered by the person who originally created the project. Note that the project configuration names are arbitrary. They can be changed to what the user's wishes. What each configuration does can be changed to the user's wishes. It could be that the build options for "debug" have additional setting to provide best debug visibility by disabling optimization and enabling full generation of debug symbols. Again, this varies from project to project.

  • [Active - flash] and [Active - debug] projects want to be combined into one.
    Which of the two([Active - flash] and [Active - debug]) is better for a project that is integrated into one?
  • Are you working with an example from TI? Or is this a customer project created by yourself or someone else?
  • One is motorware and the other is consumer project created by someone else.
  • Which exact motorware example are you using? What is the exact name of the project example?

  • One is proj_lab12b [Active - Flash] and the other([Active - Debug]) is made by someone else.
  • proj_lab12b from Motorware has two build configurations: FLASH and RELEASE


    The build options are very similar to each other, with both having -02 optimization enabled. This configuration is not meant for best debug visibility

    The only difference between the two configurations is that the FLASH configuration:

    • has an addition compiler option "--define=FLASH". This define will ensure that the program will be build to run from FLASH memory. 
    • includes/excludes the relevant project files to support loading and running from FLASH

    RELEASE configuration will configure the project to build/run from RAM.

    That is the difference for the two build configurations for proj_lab12.

    I cannot comment about the other custom project from someone else since I have no idea what the build options for it are. But "Debug" typically means minimal (or no) optimization with full symbolic debug enabled for best debug visibility. As for if it runs from ram or flash, I cannot comment since that depends on the project specifics.

    Thanks

    ki