STM8 AWU超低功耗模式

每次唤醒AWU 中断标志一定要清除

__interrupt void AWU_IRQHandler(void)
{
   AWU->CSR = AWU->CSR;                        /* 清除更新中断标志位 */  
}
void Enter_Halt()
{
  CLK_DeInit();
  AWU_DeInit();
  AWU_Cmd(ENABLE);
  CLK_SlowActiveHaltWakeUpCmd(ENABLE);//进入超低功耗模式
  AWU_Init(AWU_TIMEBASE_2S);
  asm("halt");
}

执行asm("halt")后CPU停机,停机之前要把所有耗电的功能全部关闭。

唤醒之后将执行asm("halt")之后的语句,而不是从main()开始

posted @ 2016-09-08 16:52  lort  阅读(3194)  评论(0编辑  收藏  举报