c++ embedded arm cortex-m3 lpc

c++ - LPC1700 no se despertará del sueño profundo



embedded arm (1)

De UM10360 - Manual de usuario, Rev. 2 - 19 de agosto de 2010 página 758:

Observación : Si el procesador detecta una conexión a un depurador, deshabilita el WIC.

¡Entonces no se despertará!

Qué lástima...

Tengo firmware ejecutándose en LPC1754 , 59 y 68 + FreeRTOS + CMSIS.

Me gustaría poder poner el microcontrolador en el modo de potencia más bajo posible, pero:

  1. "dormir" no es suficiente.
  2. Una vez que el microcontrolador está en "sueño profundo", "apagado" o "apagado profundo", no puedo volver a activarlo presionando un botón (EINT3).

Por lo que he leído en el " Manual de usuario de LPC17xx " (p. 58, 59), debería poder despertarme desde el EINT3 hasta el modo de "apagado".

Lo que me estoy perdiendo? ¿Se está generando la interrupción en baja potencia? ¿Como decir? ¿Debería hacer algo específico para poder generarlo?

  • Solo para simplificar, me estoy ejecutando desde el RC interno, por lo que la errata PLL no es una preocupación.

EDITAR:

  • De hecho, estoy usando "Interrupciones GPIO" para un par de pines en P2, que, a su vez, se comparte con EINT3. El pin EINT3 mismo (P2.13) no se estaba utilizando. Vea el comentario a continuación.