So, if my CAN controller goes into a bus-off recovery sequence, INIT will be asserted, and I have to clear it to resume CAN bus operation, which it will do after 129 occurrences of "bus idle".
Is there anything else that has to be done? Such as the other procedures that are done during the first initialisation, like setting the timing values, initialising the message objects etc. or will it use the previous values?
Topic: CAN fault recovery
Date: 09-14-2020 01:43 AM
Did it solve your problem?
Click here to view the reply and mark one as an Accepted Solution.
This helps others find helpful answers in the community too!
Does it look like I got an answer? Really?
Hello ianbenton
Thank you for your interest in NXP Semiconductor products and the opportunity to serve you. My name is Omar and I will gladly help you with this.
Can you provide me the part number you are working with?
I'm awaiting your reply.
Best regards,
Omar
It's an LPC1517, though I thought the CAN modules were identical in all the LPC micros.
Hello ianbenton
You don't need to set any other configuration for the bus-off recovery. The steps are listed in the device user manual under chapter 27.6.1.1.
Clear the INIT bit, to start the bus-off recovery then use while to wait the bus off recovery is finished, Check STAT[LEC], if it is 0x5 and STAT[BOFF] =1, just wait.
Let me know if this is helpful, if you have more questions do not hesitate to ask me.
Best regards,
Omar
Thanks.
I was just checking to make sure that all the object definitions are retained, and I don't have to set them all up again.