AnsweredAssumed Answered

Unpredicted wake up after sleep MC9S12ZVLRMV1

Question asked by Enrico Sanino on Oct 5, 2016
Latest reply on Oct 7, 2016 by Enrico Sanino

Hi,
I am using this MagniV for a LIN application, in which shall go in standby (stop mode) when no traffic is present for few seconds.

In this condition, the MCU wakes up when a wakeup LIN condition is present on the bus (issuing a dominant bit for more than 150us).

 

Currently, most of the times which tries to go in stop mode when the LIN bus is idle, it wakes up again even if the bus is kept idle, then goes again in stop (after verifying that the bus is idle, but this is just my logic implemented after the wake up) and then goes in stop mode (because, of course, the bus was already in idle). Then, the stop mode is kept always correctly.

 

The sleep sequence is made with the folowing data, after there is no data for more than 2 seconds:
    SCI0ACR1_RXEDGIE = 1;
    SCI0CR2_RWU = 0x01;
    asm ANDCC #0x7F; 
    asm STOP;        

Alternatively, I tried by adding

SCI0ASR1_RXEDGIF = 1;

before or after the SCI0ACR1_RXEDGIE = 1

but is hasn't changed anything.

 

I am ssuming that it is an issue due to the RXEDGE because when the MCU wakeup unexpectedly, it jumps in the RX edge interrupt. This does not happens always, for that reason I suppose it could be something like IRQ latched and unserviced.

Is there anything that I need to stop on the SCI module to avoid this?

Thanks,
Enrico

Outcomes