I have a design which uses the CAN controllers in a PSoC 4200L. The datasheet for the component says that when the Bus-off restart option is set to Manual, if the bus is turned off, the user/code must restart the CAN. What exactly needs to be done to restart the CAN component?
I am testing restarting the CAN by enabling Message Transmitted, Message Received, and Bus Off interrupts, then shorting the CAN low and high wires, then sending a message. I get a bus off interrupt, then try to restart the CAN using the CAN_Enable() API function (CAN_Init() and CAN_StartEx() were called during initialization). After the bus off interrupt stops firing (after 3-4 calls to CAN_Enable()), I un-short the low and high wires and try to send another message, but I don't see any messages on the bus using a logic analyzer. Is there something more I need to do other than call CAN_Enable() to restart the CAN?