This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Why or how does SysTick interrupt wakeup the processor?

Hello all,


I am confusing by SysTick interrupt behavior.

Even if SysTick clock was processor clock, the processor woke up from Sleep or DeepSleep mode by SysTick interrupt.

My understanding is that the processor clock will stop during WFI execution (i.e. Sleep or DeepSleep).

I think that SysTick cannot count during WFI execution.

Could anyone teach me why SysTick can work during Sleep or DeepSleep mode?

Joseph Yiu answered for my post Clock gating of Cortex-M Deeep Sleep mode that NVIC and SysTick will be clocked in Sleep mode.

However he answered that all clocks will stop in DeepSleep mode.

I confirmed that SysTick did not stop during DeepSleep mode by the experiment of FRDM-KL25Z board which equips Cortex-M0+.

SysTick timer was operational even in DeepSleep mode on FRDM-KL25Z board.

Is SysTick timer exclusive (i.e. no clock gating)?

Thank you and best regards,

Yasuhiko Koumoto.

Parents
  • Hello,

    I have found descriptions as "This (the deep sleep mode) has the side effect of stopping the SysTick timer" in "Cortex-M0+ Devices Generic User Guide ARM Information Center".

    Also I have found descriptions as "It (the SysTick) WILL NOT wake up the system from Stop modes" in Freescale Technology Forum 2014 material.

    In the FTF material also "If debugger attached it (SysTick) will continue to run" is described.

    From these facts, the SysTick behavior which remains operation in the DeepSleep (or Stop) mode would be FRDM board specific phenomenon.

    I would like to check the possibility that FRDM board is in the debug mode.

    Any comments are welcome for my guess.

    Best regards,

    Yasuhiko Koumoto.

Reply
  • Hello,

    I have found descriptions as "This (the deep sleep mode) has the side effect of stopping the SysTick timer" in "Cortex-M0+ Devices Generic User Guide ARM Information Center".

    Also I have found descriptions as "It (the SysTick) WILL NOT wake up the system from Stop modes" in Freescale Technology Forum 2014 material.

    In the FTF material also "If debugger attached it (SysTick) will continue to run" is described.

    From these facts, the SysTick behavior which remains operation in the DeepSleep (or Stop) mode would be FRDM board specific phenomenon.

    I would like to check the possibility that FRDM board is in the debug mode.

    Any comments are welcome for my guess.

    Best regards,

    Yasuhiko Koumoto.

Children