AnsweredAssumed Answered

How can I handle '!!! xxxerror'(reboot) and find reason?

Question asked by Xuanpu Gu on Jul 31, 2019
Latest reply on Aug 20, 2019 by Xuanpu Gu

We meet three unexpected error and reboot. They are  (1)!!! bus error, (2)!!! Alignment error, (3)Unclaimed Interrupt

And our environment is introduced in


1.!!! Bus error

Our Coord connect with host via Uart1, and pass Zigbee Packet between host and child. The largest number of wireless packet can up to 30 packets per second.  Sometimes, average 12hour, Coord meet Bus error and reboot. 

I dump the content of Stack, and use addr2line. I find the top of Stack is point to some Func(Always the 2nd address value). Can I confirm the question occured when running these Func?

I guess it mat be caused by RF conflict with Uart.  How can I confirm? Or other possible reason?


2.!!! Alignment error

It is appeared under the same circumstance with the above question. But this problem we meet about 2 day per occuring. How can I find reason of this problem?

Stack content of this question shows the function being SDK Func, not application Func. Can I thin this problem caused by SDK?


3.Unclaimed Interrupt

When I init chip, I don't init other peripheral except we using. When this problem appears, How can I confirm which peripheral is interrupted?

I guess I can register every peripheral ISR in PIC_SwVectTable. When some peripheral  interrupted, I can find which peripheral. Does it work?