1、设置F2812低功耗模式为standby模式,采用外部Xint13作为唤醒源;
2、芯片在半小时内能够正常休眠、唤醒,时间一长就无法唤醒(Xint13引脚持续输入1kHz方波),但可用仿真器唤醒(唤醒后可继续工作一段时间);
3、同时使能XINT1、XINT13两个唤醒源,故障仍然一样;
4、如果不使用休眠,芯片可以长时间正常工作。
void sleep_init(void)//休眠设置
{
EALLOW;
SysCtrlRegs.LPMCR1.bit.XNMI=1;//选择待机唤醒源:Xint13
SysCtrlRegs.LPMCR0.bit.LPM=0x1;//选择standby模式
EDIS;
}
void sleep(void)//休眠
{
asm(" IDLE");
} |