Sleep Mode Operation

The CAN can be configured to operate in any sleep mode. To be able to run in standby, register MRCFG.RUNSTDBY must be written to ‘1’.

To prevent data corruption, it is recommended to allow the CAN to complete all pending transactions before setting the system on standby. This is performed by setting the Clock Stop Request register CCCR.CSR = ‘1’. Once all transactions are completed, the CAN will automatically set the Clock Stop Acknowledge register CCCR.CSA = ‘1’. The CAN has reverted back to its initial state and is now safe for the system to go to standby.

When the system wakes up, the CAN cannot be reprogrammed unless the Clock Stop Request register is cleared (CCCR.CSR = ‘0’). When the Clock Stop Acknowledge register CCCR.CSA returns a ‘0’, the CAN is ready to be programmed.