Hi all,
I'm stuck with a problem! please help me. We are using freescale mc9s12 microcontroller for our automotive unit. Our ECU is consuming more power owing to sleep problem. Our only interrupt to the ECU is CAN.
I have studied the documents related to MSCAN thoroughly.i followed these steps for MSCAN sleep and wake up
1.set the slp request bit in the canctlo register
2. wait for acknowledgement from the canctl1 register( wake up enable) (MSCAN will go to sleep mode)
3. set the wupe bit canrier register and the wake up bit in canctlo register
4.clear the ccr register (s and i bit)
5. enter the stop mode
But the problem is, whenever i set the slprq bit, slpak is acknowledged. MSCAN enters sleep mode immediately and gets in to intitalization mode.
I cant able to proceed further owing to this problem. Why it gets into initilization mode?? when i put the sleep request bit??...... please help me out.... I'm running out of time.
WUPE bit is writeable only in initialization mode. You need to set it up when initializing CAN, not when you want to enter sleep mode.