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.

Debugging Concerto with Blackhawk Emulator

Hello,

I hope my thread is placed here correctly... since Blackhawk didn't give an answer right away maybe someone of this community has encountered the same issue:

I'm using CCS 5.3 with an Blackhawk System Trace Emulator working on an F28M35C Concerto device. When debugging on the ARM M3 core with CCS I'm frustrated because it will always erase and program the flash when switching to the debugging session, even when there are no changes in the out-file. It is possible to change the debug options just to make a verify but then if there are changes the debug session will quit because of that and not ask me if I want to program the new out-file. Stupid!

Also, quite often the debug session is quit when starting because of corrupted DWARF symbol information. Because of the exit of the debug session I can't load the symbol information manually. So I have to start the debug session again, the flash is erased again and programmed again. After several tries (2-4) it works eventually. But this makes me angry as well. So much wasted time!

Also it is not possible to update variables or handle (set/enable/disable) breakpoints when the application is running which is also not very comfortable! When stopped or while stepping I loose the focus on global variables which are not part of the current software object in the watch expressions.

Also I need some help in an advanced searchin CCS. I'm not able to search for a text in the whole project. Sometimes it works, but not in all cases. For instance look for something which is not part of the code... I know that I have to be careful which project is active (sometimes it is not quite clearly shown in the project tree!). I have tried out several search methods [Str+H] but neither is really reliable. Is it because of the linked ressources? But with [F3] I have no problems. I still use Codewright for editing my code since it has some nice features which I really miss in the eclipse environment.

So now my question: Who is responsable for this inconviencieses? The CCS software, the emulator, the eclipse toolbox, ... the stupid user (me)?

Best regards,
Stefan

  • Stefan,

    Let me try to address some of your concerns/issues.

    Stefan Buechner said:
    When debugging on the ARM M3 core with CCS I'm frustrated because it will always erase and program the flash when switching to the debugging session, even when there are no changes in the out-file. It is possible to change the debug options just to make a verify but then if there are changes the debug session will quit because of that and not ask me if I want to program the new out-file

    You could try the setting to erase "Necessary Sectors only" instead of entire flash during program load. This will be faster especially if you're simply reloading the same code. The option is available under the On-chip Flash settings.

    Stefan Buechner said:
    Also, quite often the debug session is quit when starting because of corrupted DWARF symbol information.

    We've had a couple of other reports on "corrupted DWARF information" errors. Please see this thread. These are fixed in the final CCS 5.4 release, so when you get a chance I would recommend installing CCS 5.4, even if in a separate directory than CCS 5.3. You can keep and work side by side with mutiple versions. CCS 5.4 can be downloaded from http://processors.wiki.ti.com/index.php/Download_CCS.

    Stefan Buechner said:
    Also it is not possible to update variables or handle (set/enable/disable) breakpoints when the application is running which is also not very comfortable!

    Not being able to set/enable/disable breakpoints while the application is running is by design. Please see this related thread: http://e2e.ti.com/support/development_tools/code_composer_studio/f/81/p/31082/109147.aspx#109147

    Stefan Buechner said:
    Also I need some help in an advanced searchin CCS. I'm not able to search for a text in the whole project.

    Did you try "File Search" or "C/C++ Search"? If the text you are searching for is inside header files that are not "linked" to the project but are referenced via compiler include paths, then I believe File Search would not find those occurances. It would only search in files that are visible in the Project Explorer view. But the C/C++ Search should find it.

  • To clarify on the setting to enable breakpoints when code is running, the screenshot shows where the option is available:

  • Hello ArtiG,

    sorry for not responding earlier, I read your post and thank you very much!

    I have installed CCS 5.4 and the problem with the corrupted DWARF when starting the debugging session did not occur any more. Very fine thing!

    When switching to the new version I run into minor problems (small fixes for the next release?): First I could not import the old project due to some metadata corruption errors. No idea why, it said I should contact support... After I created a new project and successfull compilation, I could not start the debugging session because CCS could not load the out-file. I realized that my project had a 'space' in its name so I renamed the project (in CCS) with an '_' instead. After that the compiler didn't work because the path variables "CCS_BASE_ROOT" and others were empty. I could not edit them but after I restarted CCS they were correct again. And then I could compile and start my debug session without any errors!

    Just erasing the necessary flash sector when programming will help a little. Still I'm wondering why you still need to do so when the out-file did not change. When compiling the project while the debug session is active CCS informs you that the out-file has changed and asks whether it should reprogram or leave the old program. So you have already that information. So why don't you skip the programming when possible? It happens a couple of times that I want to relaunch the debug session without any changes (because I forgot something to look for before I want to edit my code).

    Setting breakpoints is working now, thank your for linking the threads. Still have the problem not seeing static variables if they are not in the context of the active module. Is there a refresh?

    The search I will try out to find out how it works eventually. Right now I'm fine with editing my code in CodeWright and using CCS just for compiling/debugging.

    Have a nice weekend,
    Stefan