按照例程进入低功耗模式了,但是电流还有30多毫安,感觉内核还在运行,不知道是哪儿有问题
__asm(" EALLOW");
EALLOW;
if (SysCtrlRegs.PLLSTS.bit.MCLKSTS != 1) // Only enter Idle mode when PLL is not in limp mode.
{
SysCtrlRegs.LPMCR0.bit.LPM = 0x0002; // LPM mode = Idle
}
EDIS;
__asm(" IDLE");
Hank Zhao:
你好,idle模式CPU仍然在运行,你在板子上运行halt和standby的例程,这两个例程CPU是关闭了的。
按照例程进入低功耗模式了,但是电流还有30多毫安,感觉内核还在运行,不知道是哪儿有问题
__asm(" EALLOW");
EALLOW;
if (SysCtrlRegs.PLLSTS.bit.MCLKSTS != 1) // Only enter Idle mode when PLL is not in limp mode.
{
SysCtrlRegs.LPMCR0.bit.LPM = 0x0002; // LPM mode = Idle
}
EDIS;
__asm(" IDLE");
q l:
回复 Hank Zhao:
现在改成HALT模式,电流还有30多毫安,另外问下,现在用看门狗唤醒,要过10唤醒一次该怎么做
按照例程进入低功耗模式了,但是电流还有30多毫安,感觉内核还在运行,不知道是哪儿有问题
__asm(" EALLOW");
EALLOW;
if (SysCtrlRegs.PLLSTS.bit.MCLKSTS != 1) // Only enter Idle mode when PLL is not in limp mode.
{
SysCtrlRegs.LPMCR0.bit.LPM = 0x0002; // LPM mode = Idle
}
EDIS;
__asm(" IDLE");
Hank Zhao:
回复 q l:
你测的是板子的电流还是芯片的电流,如果是整个板子的电流则还包括其它器件的电流消耗。F2802X系列的看门狗不能设置任意的唤醒时间,只能配置几个有限的watchdog时钟。