function call jumps to runtime startup in crt0.asm
I have created an executable project for MAXQ1850 . It compiles and links properly. Few of the functions are working absolutely fine. But some functions are not getting called and the system gets hanged when they are called. when i ran the debugger, i got to know that it was jumping to runtime_start up in crt0.asm. i am not understanding the problem. kindly help me to proceed further.
-
I imagine the processor is not jumping directly to runtime_start crt0.asm.
But rather something is causing the processor to reset.
What might cause that? Any number of things. In software it could be:
Watchdog-reset
Unhandled interrupt
Exception e.g. division-by-zero, trying to access a non-existent memory-location, trying to execute an illegal op-code, assert()-failure
And the next question is why did it happen? Memory might have been corrupted because you wrote beyond the end of an array, or the stack grew beyond its bounds, or you ran out of heap and malloc() returned 0.
And in hardware, if you're turning-on things that are momentarily drawing too much power you might get a brown-out reset. Is this your own design of board, or a commercial demo-board for your processor? The reason I ask is sometimes amateur boards do not have adequate power-supply-decoupling capacitors, which can lead to malfunction. (I'm amazed that solderless-breadboard circuits work at all!)
I don't know the MAXQ family, so some of the examples of failure might not apply.
Hope this helps,
Danish
Please sign in to leave a comment.
Comments
1 comment