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.
We were having difficulty running some firmware recently where the MSP430 was connected to a programmer with Code Composer running. The firmware was running, but would intermittently stop at a specific line in a routine as if it was on a breakpoint. No breakpoints were set. It also could run through the routine a few times before it would stop. I found a hint in an E2E forum that gave a hint about settings in Code Composer under RUN > DEBUG CONFIGURATIONS > (tab) TARGET. In the line “Auto Run and Launch Options” there is a checkbox for “Retore breakpoints from previous session” that should be unchecked. Testing with this unset found that when breakpoints were created, they are still there after a compile. I do edit the files in another program and then execute the compile in CCS. Could a leftover breakpoint be hiding in the CCS? Where do breakpoints get stored?
Hello,
The firmware was running, but would intermittently stop at a specific line in a routine as if it was on a breakpoint.
Which source file and line number does it halt on?
Thanks
ki
It starts in main.c, calling a routine in hal.c, into another routine, and into a third routine. It would stop in the first executable line of the third routine in hal.c . The breakpoint window was blank so I did not capture that.
It starts in main.c, calling a routine in hal.c, into another routine, and into a third routine. It would stop in the first executable line of the third routine in hal.c .
Is this location consistent every time?
Can you use the DEBUG_DumpBreakpoints GEL call in the scripting console and copy and paste the output to a text file and post it to this thread?
See the below post for more details on this:
Also, please enable debug server logging and reproduce the issue. Please only turn on logging right before running the program. AFter the unexpected halt occurs, disable logging, close CCS, zip the the log and attach it to this thread.
https://software-dl.ti.com/ccs/esd/documents/ccs_diagnostic-logs.html
Thanks
ki
It would consistently stop at the same line, but not always the first time through the routine. In attempting to get a workaround for this, I edited an earlier part of the hal.c code and then it worked. I still think there is a ghost breakpoint in there, but it is now missing it. I do not have easy access to the system that was failing, but when I get a chance I will try dumping the data. This is running on 5 different systems, and each will have used different breakpoints in the past.
I cannot reproduce the symptom at this time. I did the eval("DEBUG_DumpBreakpoints()") in the Scripting Console, but it only showed the default 4, while another system that has two real breakpoints set showed 6 with the two real breakpoints at the expected lines. Having this command will help in the future if it occurs again.
The firmware was running, but would intermittently stop at a specific line in a routine as if it was on a breakpoint.
What is the processor frequency (MCLK) and are wait states enabled?
Due to errata EEM23 have seem some MSP430 FRAM devices stop at the wrong address - see Could CCS apply a work-around for MSP430 FRAM devices errata EEM23 to allow CIO to be used without the target halting in trgmsg.c? and MSP430FR2675: How to enable printf output to console in CCS 10?
It is running at 16MHz and the wait states are enabled. I do edit the files in an external editor and then run CCS to compile and have seen the breakpoints move to different lines. Another option I did not think of at the time of the halt was to add a breakpoint followed by a remove all breakpoints. Remove all is not available when none are showing.
It is running at 16MHz and the wait states are enabled
I wonder if your issue is related to the behavior Walter mentions in his post below:
Good news, the phantom breakpoint reared its head again. Using the eval ("DEBUG_DumpBreakpoints()") did not show any extra breakpoints. From an email hint from TI, the location of the breakpoints is in ……\workspace_v11\.metadata\.plugins\org.eclipse.core.resources\.projects\Hollywood\.markers.snap . Viewing this binary file in an editor, the breakpoint is visible in ASCII . To clear this file the steps are:
Delete the project from CCS
Close CCS
Start CCS
Import the project.
The workspace file was then empty of miscellaneous data.
**Attention** This is a public forum