Hi Dialog ,
我们正在向s production , and have enabled PRODUCTION_DEBUG_OUTPUT to know if any hardfault occurs . On a hardfault I am getting the following dump on Uart channel:
<\n>--- HF STATUS<\r><\n>r0 =0x200097dc<\r><\n>r1 =0x20004988<\r><\n>r2 =0xffffffff<\r><\n>r3 =0x31534f50<\r><\n>r12=0x0000001c<\r><\n>lr =0x2000472b<\r><\n>pc =0x35343332<\r><\n>psr=0x80000019<\r><\n><\n>--- NMI STATUS<\r><\n>r0 =0x00000008<\r><\n>r1 =0x50003300<\r><\n>r2 =0x00000000<\r><\n>r3 =0x00000000<\r><\n>r12=0x0000001c<\r><\n>lr =0x00028143<\r><\n>pc =0x2000065a<\r><\n>psr=0x21000003<\r><\n><\0><9><2>
Is there a user manual to interpret this data and figure out the type of hardfault occured?
Thanks,
Regards,
Dhiraj
Device:
Hi dhirajp15,
There is no indication that will notify you about the type of the hardfault that occurs, hardfaults occur due to NULL pointer invocation, access an unaligned address, etc. You can only check the PC counter in the hardfault ISR and check the line in your source code that caused the ARM to go in hardfault. There is a tutorial in the Tutorial section in the documents Tab, check the Training 8:Debugging methods_v1.0.
Thanks MT_dialog