2011-06-01 49 views
5

我的固件在LPC1754,59和68 + FreeRTOS + CMSIS上运行。LPC1700不会从深度睡眠中醒来

我希望能够把微控制器中的最低功耗模式可能,但:

  1. “睡眠”是不够的。一旦微控制器处于“深度睡眠”,“断电”或“深度断电”状态,按下按钮(EINT3)就无法再唤醒它。

就我在“LPC17xx User manual”(第58,59页)中读到的,我应该能够从EINT3中唤醒直到“关机”模式。

我缺少什么?低功耗时产生中断吗?如何判断?我应该做任何特定的东西,能够产生它?

  • 只是为了简化,我从内部RC运行,所以PLL勘误并不是一个问题。

编辑:

  • 我,其实,使用 “GPIO中断” 的一对夫妇在P2引脚,这反过来,与EINT3共享。 EINT3引脚本身(P2.13)未被使用。请参阅下面的评论。
+0

我假设你测试的中断不工作的时候你是不是在“深度睡眠”模式?也许有配置寄存器需要在该模式下保持中断功能?或者只有一些可以用作唤醒中断的引脚?我将在下周尝试类似于低端ST ARM部件的类似内容......请仔细阅读数据表,然后再选择可用于将引脚从最低功耗模式唤醒的引脚。 – 2011-06-01 21:11:22

+0

是的,中断在进入低功耗之前工作得很好。中断在简单的“睡眠”后继续工作,但不是“深度睡眠”,“关机”或“深度关机”。数据表说除了“深度掉电”之外,如果EINT3中断被使能,uC必须从中唤醒。 – j4x 2011-06-01 21:34:19

+0

是否在NVIC中启用了EINT3? PINSEL4位27:26设置为“01”? – 2011-06-01 22:42:54

回答

3

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

备注:如果处理器检测到 连接到它会禁用WIC调试器。

所以它不会醒来!

太可惜了......

+0

不错。你还留着什么头发? – 2011-06-14 14:59:58

+0

我在汽车引擎盖上砸了我的头后发现了一些;) – j4x 2011-06-14 18:18:12