大家帮我看看STM32F103C8T6停止模式的配置是否正确

2019-03-23 14:37发布

最近搞低功耗,开始用睡眠模式,不太好。
现在在整停止模式。
以前没搞过,所以发帖子询问一下,心里放心。
我程序里这么干的:
初始化:

Stm32_Clock_Init(2);CPU_Init();                     //CPU初始化               
        VAR_Init();                                                //变量初始化
       
        usart1_init(9600);               
        NVIC_Init10();
       
        /* Enable PWR and BKP clock */
  RCC_APB1PeriphClockCmd(RCC_APB1Periph_PWR | RCC_APB1Periph_BKP, ENABLE);
  /* Allow access to BKP Domain */
  PWR_BackupAccessCmd(ENABLE);



进入停机模式:

PWR_EnterSTOPMode(PWR_Regulator_LowPower,PWR_STOPEntry_WFI);


唤醒时,我这么干:

void EXTI3_IRQHandler(void)
{   
    long int i;
       
    if(EXTI_GetITStatus(EXTI_Line3)!=RESET)                                //上升
        {

                Stm32_Clock_Init(2);                    //16MHz

                GPIO_ResetBits(GPIOA,GPIO_Pin_12);                //灯亮

。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
Stm32_Clock_Init(2);                    这个是重新配置时钟。

请问高手,我这么配置是正确的吧?谢谢!


此帖出自小平头技术问答