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.

Concerto - Can I enter debug mode without reloading Flash on both cores?



Hi,

I'm working on code for the C28 core, but it seems every the only way to enter debug mode is to reload Flash on the M3 core, then load Flash on the C28 core. 

I also get eratic results if I try to recompile and reload the C28 while still in debug mode (system clocks don't initialize as expected).  I've tried stopping and resetting both cores when I do this and making sure to start the M3 core first, but it usually doesn't work right and I end up chasing ghosts, so I've resorted to completely exiting edbug mode and re-entering it just to be sure everything starts correctly.  But waiting for Flash to erase and reload is VERY time-consuming.

Any advice?

  • Follow the following to avoid any issues with the debug process,

    Once image is loaded on both M3 and the C28x follow the sequence below, if image in only updated for one core you will have to repeat this for both the cores,  

    1. Reset C28x
    2. Reset M3
    3. Restart M3
    4. Run M3
    5. Run the C28x ,

    For enabling real time on C28x please set a hardware break point at begining of the main() function on the C28x,  and then enable real time mode.

    Disable real time mode before reflashing either M3 or the C28x

    regards

    Manish Bhardwaj

  • Instead of re-flashing the image everytime you want to run the same application, you can just reload the symbols for COFF file.

    and if your application is small enough to fit in RAM, probably better to start building your applciation to RUN from RAM and then move to RUN from flash.

     

    Best Regard
    Santosh

     

     

  • Another thing I've found is that I need to disable all breakpoints before reloading a program.

    Please submit a feature request for future versions of Code Composer, to automate this process. 

    Time is money, and I really shouldn't need to click 20 buttons to compile and run my code after every change.  I think the industry standard for this process is one click.

    Thanks
    -Will

  • You can  take a look under debug settings menu (run/debug configuration). CCS is quite flexible, you just need to configure it (once you find where the configuration is).

    One grudge I have with TI is that CCS comes heavily pre-configured, particularly when it comes to actions after build is complete. I don't know why somebody at TI thought it would be better to restart CPU then reset, after the code has been loaded. Note that restart interpretation by TI means "run _c_int00 and stop at beginning of main". It is my opinion that CCS is mostly used for program/debug of embedded systems, where it is really really smart to reset the core (to put HW into initial state) before restarting the code.

    Mitja

  • Hi Will, Mitja

    thanks for the feedback, we will channel your inputs to the team(s).

    Regarding break points, you can choose to disable all the break points by a single click from the break points menu - if that is of any help.

    Will said:

    Another thing I've found is that I need to disable all breakpoints before reloading a program.

    Please submit a feature request for future versions of Code Composer, to automate this process. 

    Time is money, and I really shouldn't need to click 20 buttons to compile and run my code after every change.  I think the industry standard for this process is one click.

     

    Best Regards

    Santosh