Datasheet

SAM9263 [DATASHEET]
Atmel-6249N-ATARM-SAM9263-Datasheet_14-Mar-16
644
36.6.5.1 Enabling Low-power Mode
A software application can enable Low-power Mode by setting the LPM bit in the CAN_MR global register. The
CAN controller enters Low-power Mode once all pending transmit messages are sent.
When the CAN controller enters Low-power Mode, the SLEEP signal in the CAN_SR is set. Depending on the
corresponding mask in the CAN_IMR, an interrupt is generated while SLEEP is set.
The SLEEP signal in the CAN_SR is automatically cleared once WAKEUP is set. The WAKEUP signal is
automatically cleared once SLEEP is set.
Reception is disabled while the SLEEP signal is set to one in the CAN_SR. It is important to note that those
messages with higher priority than the last message transmitted can be received between the LPM command and
entry in Low-power Mode.
Once in Low-power Mode, the CAN controller clock can be switched off by programming the chip’s Power
Management Controller (PMC). The CAN controller drains only the static current.
Error counters are disabled while the SLEEP signal is set to one.
Thus, to enter Low-power Mode, the software application must:
Set LPM field in the CAN_MR
Wait for SLEEP signal rising
Now the CAN Controller clock can be disabled. This is done by programming the Power Management Controller
(PMC).
Figure 36-8. Enabling Low-power Mode
SLEEP
(CAN_SR)
MRDY
(CAN_MSR1)
LPM
(CAN_MR)
LPEN= 1
CAN BUS
MRDY
(CAN_MSR3)
Mailbox 1
Mailbox 3
Arbitration lost
WAKEUP
(CAN_SR)
0x0CAN_TIM