while (1)
{
GPIO_ResetBits(GPIOC,GPIO_Pin_4); //GPRSÄ£¿éÉϵç
delay_ms(1000);
GPIO_ResetBits(GPIOB,GPIO_Pin_9); //Ä£¿é¿ª»ú
delay_ms(200);
GPIO_SetBits(GPIOB,GPIO_Pin_9);
delay_ms(1000);
GPIO_ResetBits(GPIOB,GPIO_Pin_9);
delay_ms(200); //Ä£¿é¿ª»ú
for(temp=0;temp<5;temp++)
{
GPIO_ResetBits(GPIOC,GPIO_Pin_10);
delay_ms(100);
GPIO_SetBits(GPIOC,GPIO_Pin_10);
delay_ms(100);
}
Uart2SendStr("AT\r");
Uart1SendStr("AT\r");
Uart3SendStr("AT\r");
delay_ms(200);
iddtmp = ADC_GetConversionValue(ADC1);
GPIO_SetBits(GPIOC,GPIO_Pin_4|GPIO_Pin_8|GPIO_Pin_9|GPIO_Pin_10|GPIO_Pin_11);//¹Ø±ÕËùÓÐÍⲿÆ÷¼þµçÔ´
USART_Cmd(USART1,DISABLE);
USART_Cmd(USART2,DISABLE);
USART_Cmd(USART3,DISABLE);
while(ADC_GetFlagStatus(ADC1, ADC_FLAG_ADONS) == RESET); //??ADC1???
ADC_Cmd(ADC1, DISABLE);
RTC_ITConfig(RTC_IT_WUT, DISABLE);
SLEEP_IO_int();
RCC_APB1PeriphClockCmd(RCC_APB1Periph_PWR,ENABLE);
PWR_FastWakeUpCmd(ENABLE);
PWR_UltraLowPowerCmd(ENABLE);
PWR_EnterSTOPMode(PWR_Regulator_LowPower, PWR_STOPEntry_WFI);
}
这个主程序里面的循环。问题是进入低功耗之后,始终是130uA左右,裸板,只有一颗芯片。请高人指点 |