We are using the S6j337CJ cypress microcontroller in our project. In this in some point of time CAN module stopped receiving the data but CAN data transmission happening properly. In this situation the CAN driver is not receiving the data even after reinitialize CAN module. We are clearing the CEL(error count). But still the reception not happening. It starts receiving only after software reset or power reset which is not recommended.
Can any one give suggestion to get back the reception without doing Power reset.
Is there any procedure or register setting to completely reinitialize the CAN module alone.
Writing 1 to CCCR.INIT bit starts the software initialization and it doesn't change configuration register. And resetting CCCR.INIT ('0') finishes the software initialization. For more details, please kindly refer to section 3.1.1. Software Initialization and 5.6. CC Control Register of Chapter 30 in S6J33xx hardware manual platform part.