I’m running a program and all the time I have the same problem… A message saying
vector_fffc () at gcrt0.S40
gcrt0.S: NO such file or directory
If I run the program step by step it apparently works: it has first a timer interruption and there there’s a loop waiting till a sd16 interruption. When this happens, it lights some leds and goes to LPM0 waiting for another timer interruption. It’s then when this message appears and it doesn’t work anymore…
Any idea of how to solve this??? Anything that I should know about LPM0??
This got to be a problem generated by the tool you are using, not the F2013 chip itself. The chip knows nothing about “gcrt0.s40”.
Vector at 0xFFFC is used for NMIIFG, OFIFG, or ACCVIFG. A runaway program may trigger this. But it is very unlikely.
LPM0 simply stops the CPU. If the GIE and the timer IE are both enabled, the timer IFG can wake up the CPU. Normally when the isr ends with reti and the CPU stops again. Only if the isr clears the CPUOFF bit of the copy of SR on top of the stack, the CPU can run after reti. The tool you are using may have a problem simulating this. Thus single stepping may appear to work whereas free running does not. In other words, you may have a bug in waking up from LPM0 and your tool hide it when you do single stepping. When you do free running, your tool try to access “gcrt0.S40” and failed itself. Have you tried IAR? It has a 4KB limit, but F2013 has only 2KB Flash. Not really a limit.
Afer a long fight with this i guess the problem is in the debugger… It seems to be storing some breakpoints, so it won’t run properly unless i reset the hw once in a while (almost in every simulation). Then it works!
I don’t really know if that’s the cleanest solution but I just don’t want to spend more time thinking of it…
Thanks for the help and the comments!!
Alex
(by the way, my technical english is terrible, so sorry in advanced…)