I’m working on an MCU by using the IAR IDE. I’m trying to analyze a hard fault:
Hard Fault
R0 : 00032581 R1 : fffffff1
R2 : 00000000 R3 : 2003f800
R4 : 00000000 R5 : 2003efd8
R6 : 00000000 R7 : 2003f800
R8 : 00000000 R9 : 000009c6
R10: 0000023c R11: 00450f13
R12: 00000002 R13: 200003c8
R14: 00032581 R15: 00200000
000251da 6900001e
2003f800 00025433 00000000 20001668
2003d800 2001a3ec 00000000 0002223b
20056e08 000132f8 2001a3ec 0004a043
00000000 00000000 00000000 0000002a
000132f8 2001a3ec 00000000 ffffffed
e000ef34 c0000004 0000000f 200586a4
00000000 00024737 0002463c 49000000
00000000 00023d93 00000000 2002e4c8
20058804 00028cbd 00000000 00002897
fffffff0 ffffffff ffffffff ffffffff
ffffffff ffffffff ffffffff 00000000
00000000 00003a63 00000000 ffffffff
I searched the generated memory map and found the R14 is associated with a function. How can I figure out the cause of the hard fault and fix it?