Scalable Controller Area Network (S12MSCANV3)
MC9S12G Family Reference Manual Rev.1.27 
NXP Semiconductors 617
18.4.5.5 MSCAN Sleep Mode
The CPU can request the MSCAN to enter this low power mode by asserting the SLPRQ bit in the 
CANCTL0 register. The time when the MSCAN enters sleep mode depends on a fixed synchronization 
delay and its current activity:
• If there are one or more message buffers scheduled for transmission (TXEx = 0), the MSCAN will 
continue to transmit until all transmit message buffers are empty (TXEx = 1, transmitted 
successfully or aborted) and then goes into sleep mode.
•If the MSCAN is receiving, it continues to receive and goes into sleep mode as soon as the CAN 
bus next becomes idle.
• If the MSCAN is neither transmitting nor receiving, it immediately goes into sleep mode.
Figure 18-46. Sleep Request / Acknowledge Cycle
NOTE
The application software must avoid setting up a transmission (by clearing 
one or more TXEx flag(s)) and immediately request sleep mode (by setting 
SLPRQ). Whether the MSCAN starts transmitting or goes into sleep mode 
directly depends on the exact sequence of operations.
If sleep mode is active, the SLPRQ and SLPAK bits are set (Figure 18-46). The application software must 
use SLPAK as a handshake indication for the request (SLPRQ) to go into sleep mode.
When in sleep mode (SLPRQ = 1 and SLPAK = 1), the MSCAN stops its internal clocks. However, clocks 
that allow register accesses from the CPU side continue to run. 
If the MSCAN is in bus-off state, it stops counting the 128 occurrences of 11 consecutive recessive bits 
due to the stopped clocks. TXCAN remains in a recessive state. If RXF = 1, the message can be read and 
RXF can be cleared. Shifting a new message into the foreground buffer of the receiver FIFO (RxFG) does 
not take place while in sleep mode. 
It is possible to access the transmit buffers and to clear the associated TXE flags. No message abort takes 
place while in sleep mode. 
SYNC
SYNC
Bus Clock Domain
CAN Clock Domain
MSCAN
in Sleep Mode
CPU
Sleep Request
SLPRQ
Flag
SLPAK
Flag
SLPRQ
sync.
SLPAK
sync.
SLPRQ
SLPAK