APM32F0XX/STM32F0XX停机模式功耗测试

 打开Geehy-APM32F030x4x6x8手册看功耗描述。

APM32F0XX/STM32F0XX停机模式功耗测试_第1张图片

下面进行代码配置,8M主频,进入停机模式。

 STOP mode

void Enter_Low_Power_Mode(void)
{
    __HAL_RCC_PWR_CLK_ENABLE();   
    HAL_PWR_EnterSTOPMode(PWR_LOWPOWERREGULATOR_ON, PWR_STOPENTRY_WFI); 
    SystemClock_Config();
}

低功耗IO引脚配置

void Low_Power_IO_INIT(void)
{
	GPIO_InitTypeDef GPIO_InitStruct = {0};
	__HAL_RCC_GPIOA_CLK_ENABLE();
	__HAL_RCC_GPIOB_CLK_ENABLE();
	__HAL_RCC_GPIOC_CLK_ENABLE();
	__HAL_RCC_GPIOD_CLK_ENABLE();
	__HAL_RCC_GPIOF_CLK_ENABLE();

	GPIO_InitStruct.Pin = GPIO_PIN_All;
	GPIO_InitStruct.Mode = GPIO_MODE_ANALOG;
	GPIO_InitStruct.Pull = GPIO_NOPULL;
	GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW;
	HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
	HAL_GPIO_Init(GPIOB, &GPIO_InitStruct);
	HAL_GPIO_Init(GPIOC, &GPIO_InitStruct);
	HAL_GPIO_Init(GPIOD, &GPIO_InitStruct);
	HAL_GPIO_Init(GPIOF, &GPIO_InitStruct);
}

主函数

int main(void)
{
	SystemClock_Config();
	HAL_Delay(3000);
	Low_Power_IO_INIT();
	Enter_Low_Power_Mode();
	while (1)
	{

	}
  /* USER CODE END 3 */
}

实测电流12.7uA 

APM32F0XX/STM32F0XX停机模式功耗测试_第2张图片

你可能感兴趣的:(ST单片机开发,stm32,嵌入式硬件,单片机)