STM32F103跳过停止模式,不能进入停止模式

问题:

STM32F103跳过停止模式,不能进入停止模式stopmode



static void led_thread_entry(void* parameter)

{

   unsigned int count = 0;

   rt_hw_led_init();

 

   while(1)

   {

       rt_hw_led_on(0);

       rt_thread_delay(RT_TICK_PER_SECOND / 2);

       rt_hw_led_off(0);

       rt_thread_delay(RT_TICK_PER_SECOND / 2);

       {

            //失能 SysTick 计数器

    //如果这里不失能 SysTick 计数器,那么会不能进入低功耗模式的

            SysTick->CTRL = 0x00;//关闭定时器

            SysTick->VAL = 0x00;//清空val,清空定时器

       }

       {

            //进入stopmode低功耗模式

            RCC_APB1PeriphClockCmd(RCC_APB1Periph_PWR, ENABLE); //使能 PWR外设时钟

            PWR_WakeUpPinCmd(ENABLE); //使能唤醒管脚功能

            PWR_EnterSTOPMode(PWR_Regulator_ON, PWR_STOPEntry_WFI)//唤醒后时钟变为内置8MHz,需要重新配置RCC,才能正常运行,否则PLL关闭。

       }

   }

}

 

/**

  *@brief  This function handles SysTickHandler.

  *@param  None

  *@retval None

 */

void SysTick_Handler(void)

{

   TimingDelay_Decrement();

}

解决办法:


STM32F103跳过停止模式,不能进入停止模式_第1张图片



你可能感兴趣的:(stm32,编程中遇到的问题)