首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

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

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

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



static voidled_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();

}
解决办法:

返回列表