OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 5339|回复: 7

求助STM32F407停止模式出现问题,求大佬解答

[复制链接]

1

主题

4

帖子

0

精华

新手上路

积分
26
金钱
26
注册时间
2020-10-20
在线时间
10 小时
发表于 2020-11-30 11:18:22 | 显示全部楼层 |阅读模式
我利用STM32CUBEMX的TICKLESS模式,将原有的睡眠模式改为停止模式,停止模式前宏代码为void PreSleepProcessing(uint32_t *ulExpectedIdleTime){
       
  printf("Pre Sleep\n");
   SysTick->CTRL &= ~SysTick_CTRL_ENABLE_Msk;//关闭滴答定时器中断
    (void)ulExpectedIdleTime;
    /*此处可以关闭外设时钟进一步降低功耗*/
  __HAL_GPIO_EXTI_CLEAR_IT(GPIO_PIN_2);
  __HAL_GPIO_EXTI_CLEAR_IT(GPIO_PIN_4);
  __HAL_RCC_GPIOE_CLK_DISABLE();
  __HAL_RCC_GPIOF_CLK_DISABLE();
  __HAL_RCC_GPIOH_CLK_DISABLE();
  __HAL_RCC_GPIOA_CLK_DISABLE();
  __HAL_RCC_USART1_CLK_DISABLE();
       
    *ulExpectedIdleTime = 0;
    HAL_PWR_EnterSTOPMode(PWR_MAINREGULATOR_ON,PWR_STOPENTRY_WFI);
}
关闭了滴答定时器中断也清除了中断标志位。停止后对所有的时钟进行初始化
但是出现第一次停止并唤醒正常,但是在此停止后将立刻唤醒,并且一直如此,有没有大佬帮吗解答一下啊


正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

1

主题

4

帖子

0

精华

新手上路

积分
26
金钱
26
注册时间
2020-10-20
在线时间
10 小时
 楼主| 发表于 2020-11-30 17:42:35 | 显示全部楼层
本帖最后由 15777118924 于 2020-11-30 18:15 编辑

整个项目就开了两个按键做外部中断唤醒KEY2和KEY4,开了一个串口用来调试(没开中断),设置了四个任务,只有osdelay和printf。用的正点原子STM32F407ZG的开发板。出现问题就是进入了空闲,但是在空闲期间很长一段时间出现打印停止(没有成功停止),然后打印唤醒。最后才成功停止,再次用中断唤醒又重复刚刚的打印停止和打印唤醒,过了很久才再次停止,循环往复。
回复 支持 反对

使用道具 举报

1

主题

4

帖子

0

精华

新手上路

积分
26
金钱
26
注册时间
2020-10-20
在线时间
10 小时
 楼主| 发表于 2020-11-30 18:08:53 | 显示全部楼层
给自己顶一下,顶顶顶...............求大佬帮忙呀想了一天了
回复 支持 反对

使用道具 举报

2

主题

592

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1458
金钱
1458
注册时间
2019-7-28
在线时间
137 小时
发表于 2021-12-28 15:28:22 | 显示全部楼层

回帖奖励 +1 金钱

停止模式?
回复 支持 反对

使用道具 举报

13

主题

643

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2432
金钱
2432
注册时间
2019-12-28
在线时间
527 小时
发表于 2021-12-28 15:28:57 | 显示全部楼层

回帖奖励 +1 金钱

帮顶  
回复 支持 反对

使用道具 举报

0

主题

668

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1926
金钱
1926
注册时间
2021-8-13
在线时间
262 小时
发表于 2021-12-28 15:29:11 | 显示全部楼层
帮顶   
回复 支持 反对

使用道具 举报

14

主题

821

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
2070
金钱
2070
注册时间
2021-7-17
在线时间
647 小时
发表于 2021-12-28 18:06:41 | 显示全部楼层

回帖奖励 +1 金钱

帮顶  
回复 支持 反对

使用道具 举报

2

主题

67

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
499
金钱
499
注册时间
2019-8-20
在线时间
154 小时
发表于 2021-12-28 19:28:06 | 显示全部楼层
停止模式Tickless需要一个在停止模式下仍能工作的定时器,例如LPTIM
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-2-26 06:00

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表