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.

TM4C129ENCPDT: program stuck in FaultISR(void)

Part Number: TM4C129ENCPDT

Hello,

I am using TIVA TM4C129ENCPDT development board and try to interface TFT display with it using grlib.

My program stuck at FaultISR(void) . I have  gone through "Diagnosing Software Faults in Stellaris® Microcontrollers " datasheet but can't find solution.

Below is the register values when execution jumps to  FaultISR(void) .

MSP      0x1FFFFFE0       MSP Register [Core]

NVIC_FAULT_STAT       0x00009200      Configurable Fault Status [Memory Mapped]

NVIC_MM_ADDR           0x1FFFFFF0     Memory Management Fault Address [Memory Mapped]

NVIC_FAULT_ADDR      0x1FFFFFF0      Bus Fault Address [Memory Mapped]

xPSR                              0x21000003        Stores the status of interrupt enables and critical processor status signals [Core]

  • Might those "Register Values" by themselves - absent the code which caused the, "FaultISR" - yield an, "unobtainable" diagnosis?

  • The fault address (0x1FFFFFFF) makes me suspect that you had a stack overflow. The RAM starts at 0x20000000 and often the stack is located as the first thing in the RAM. The stack grows toward lower addresses as it is used. That way you get a memory fault when the stack overflows the allocated space instead of corrupting some RAM variable. Try increasing your stack size.

  • And if that solves the problem, may I suggest brute force? Crank up the stack of a TM4C129 to 4096 (unless you really need that memory for something else)! Otherwise, you will run into a weird fault again sooner or later, and will waste a lot of time again to figure it out (these error behaviors are never that consistent...)
    Bruno
  • Hello,

    Thanks for your reply,

    Above changes solve the problem.