低功耗使用stop模式: 1、所有IO口配置成模拟输入即可,不需要每个IO口单独配置上拉输入下拉输入
GPIO_InitTypeDef GPIO_InitStructure;
GPIO_DeInit(GPIOA);
GPIO_DeInit(GPIOB);
GPIO_DeInit(GPIOC);
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA | RCC_APB2Periph_GPIOB | RCC_APB2Periph_GPIOC , ENABLE);
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_All;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_2MHz;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AIN;
GPIO_Init(GPIOA, &GPIO_InitStructure);
GPIO_Init(GPIOB, &GPIO_InitStructure);
GPIO_Init(GPIOC, &GPIO_InitStructure);
2、如果ADC开了,一定要关闭,ADC独立供电,耗电300mA左右。 在Stop模式下,其它外设可以不用关闭,因为Stop模式下其它外设时钟会被关闭。 ADC_Cmd(ADC1, DISABLE);
|