Controller area network (bxCAN) UM0306
286/519
14.4.3 SLEEP mode (low power)
To reduce power consumption, bxCAN has a low-power mode called SLEEP mode. This
mode is entered on software request by setting the SLEEP bit in the CAN_MCR register. In
this mode, the bxCAN clock is stopped, however software can still access the bxCAN
mailboxes.
If software requests entry to initialization mode by setting the INRQ bit while bxCAN is in
SLEEP mode, it must also clear the SLEEP bit.
bxCAN can be woken up (exit SLEEP mode) either by software clearing the SLEEP bit or on
detection of CAN bus activity.
On CAN bus activity detection, hardware automatically performs the wake-up sequence by
clearing the SLEEP bit if the AWUM bit in the CAN_MCR register is set. If the AWUM bit is
cleared, software has to clear the SLEEP bit when a wake-up interrupt occurs, in order to
exit from SLEEP mode.
Note: If the wake-up interrupt is enabled (WKUIE bit set in CAN_IER register) a wake-up interrupt
will be generated on detection of CAN bus activity, even if the bxCAN automatically performs
the wake-up sequence.
After the SLEEP bit has been cleared, SLEEP mode is exited once bxCAN has
synchronized with the CAN bus, refer to Figure 120: bxCAN operating modes. The SLEEP
mode is exited once the SLAK bit has been cleared by hardware.
14.4.4 Test mode
Test mode can be selected by the SILM and LBKM bits in the CAN_BTR register. These bits
must be configured while bxCAN is in Initialization mode. Once test mode has been
selected, the INRQ bit in the CAN_MCR register must be reset to enter Normal mode.
14.4.5 Silent mode
The bxCAN can be put in Silent mode by setting the SILM bit in the CAN_BTR register.
In Silent mode, the bxCAN is able to receive valid data frames and valid remote frames, but
it sends only recessive bits on the CAN bus and it cannot start a transmission. If the bxCAN
has to send a dominant bit (ACK bit, overload flag, active error flag), the bit is rerouted
internally so that the CAN Core monitors this dominant bit, although the CAN bus may
remain in recessive state. Silent mode can be used to analyze the traffic on a CAN bus
without affecting it by the transmission of dominant bits (Acknowledge Bits, Error Frames).
Figure 121. bxCAN in silent mode
bxCAN
CANTX CANRX
Tx Rx
=1