5

I have firmware running on LPC1754, 59 and 68 + FreeRTOS + CMSIS.

I'd like to be able to put the microcontroller in the lowest power mode possible, but:

  1. "sleep" is not enough.
  2. Once the microcontroller is in "deep sleep", "power down" or "deep power down", I can't wake it anymore by pressing a button (EINT3).

As far as I read in the "LPC17xx User manual" (pg 58, 59), I should be able to wake up from EINT3 up to "power down" mode.

What I am missing? Is the interrupt being generated while in low power? How to tell? Should I do any specific stuff to be able to generate it?

  • Just to simplify, I am running from the internal RC, so the PLL errata is not a concern.

EDIT:

  • I am, in fact, using "GPIO Interrupts" for a couple of pins in P2, that, in turn, is shared with EINT3. The EINT3 pin itself (P2.13) was not being used. See the comment below.
artless noise
  • 21,212
  • 6
  • 68
  • 105
j4x
  • 3,595
  • 3
  • 33
  • 64
  • I assume you tested that the interrupt does work when you are not in 'deep sleep' mode? Perhaps there are configuration registers needed to keep interrupt functionality in that mode? Or only certain pins that can function as wakeup interrupts? I'll be attempting something similar on an low-end ST ARM part next week... carefully read the datasheet before selecting to be there were pins I could use to wake it up from its lowest power mode. – Chris Stratton Jun 01 '11 at 21:11
  • Yes, the interrupts work perfectly well before entering low power. Interrupts continue working after simple "sleep", but not "deep sleep", "power down" or "deep power down". Datasheet says that except for "deep power down", if EINT3 interrupt is enabled, the uC must wake up from it. – j4x Jun 01 '11 at 21:34
  • Is the EINT3 enabled in the NVIC? PINSEL4 Bit 27:26 set to `01`? – Turbo J Jun 01 '11 at 22:42
  • I was using EINT3 to catch interrupts from P2.1 to P2.5 and P2.10. @Turbo J post gave a clue to include another button in P2.13. Surprisingly after deep sleeping I can wake my uC by pressing P2.13 but other buttons will hang it. What part of the manual am I missing? – j4x Jun 01 '11 at 23:35
  • 1
    Try pouring a bucket of water on it. – Mateen Ulhaq Jun 05 '11 at 04:02

1 Answers1

3

From UM10360 - User manual, Rev. 2 — 19 August 2010 page 758:

Remark: If the processor detects a connection to a debugger it disables the WIC.

So it won't wake up!!!

What a shame...

j4x
  • 3,595
  • 3
  • 33
  • 64