English
Language : 

MC9S12KG128_10 Datasheet, PDF (327/606 Pages) Freescale Semiconductor, Inc – HCS12 Microcontrollers
Chapter 9 Freescale’s Scalable Controller Area Network (S12MSCANV2)
“MSCAN Receiver Flag Register (CANRFLG)” and Section 9.3.2.6, “MSCAN Receiver Interrupt
Enable Register (CANRIER)”).
9.4.7.6 Interrupt Acknowledge
Interrupts are directly associated with one or more status flags in either the Section 9.3.2.5, “MSCAN
Receiver Flag Register (CANRFLG)” or the Section 9.3.2.7, “MSCAN Transmitter Flag Register
(CANTFLG).” Interrupts are pending as long as one of the corresponding flags is set. The flags in
CANRFLG and CANTFLG must be reset within the interrupt handler to handshake the interrupt. The flags
are reset by writing a 1 to the corresponding bit position. A flag cannot be cleared if the respective
condition prevails.
NOTE
It must be guaranteed that the CPU clears only the bit causing the current
interrupt. For this reason, bit manipulation instructions (BSET) must not be
used to clear interrupt flags. These instructions may cause accidental
clearing of interrupt flags which are set after entering the current interrupt
service routine.
9.4.7.7 Recovery from Stop or Wait
The MSCAN can recover from stop or wait via the wake-up interrupt. This interrupt can only occur if the
MSCAN was in sleep mode (SLPRQ = 1 and SLPAK = 1) before entering power down mode, the wake-up
option is enabled (WUPE = 1), and the wake-up interrupt is enabled (WUPIE = 1).
9.5 Initialization/Application Information
9.5.1 MSCAN initialization
The procedure to initially start up the MSCAN module out of reset is as follows:
1. Assert CANE
2. Write to the configuration registers in initialization mode
3. Clear INITRQ to leave initialization mode and enter normal mode
If the configuration of registers which are writable in initialization mode needs to be changed only when
the MSCAN module is in normal mode:
1. Bring the module into sleep mode by setting SLPRQ and awaiting SLPAK to assert after the CAN
bus becomes idle.
2. Enter initialization mode: assert INITRQ and await INITAK
3. Write to the configuration registers in initialization mode
4. Clear INITRQ to leave initialization mode and continue in normal mode
MC9S12KG128 Data Sheet, Rev. 1.16
Freescale Semiconductor
327