STM32不能进STOP低功耗模式,帮看下,已上传工程文件

2020-01-04 18:58发布

调试低功耗的时候发现一个奇怪的问题,如图所示,调用三个 子函数任意一个就无法进入STOP低功耗模式。
单片机型号STM32F103RE,为了排除干扰,已经清空所有初始化程序,通过仿真器查看有没有进入低功耗模式。
调用子函数已经贴在后面图片上上了。附件的工程文件里也有。
大家帮看看,多谢!
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
6条回答
bolizhicheng204
1楼-- · 2020-01-04 21:01
初步发现,好像systick的中断函数把STOP模式唤醒了,进一步测试看看
bolizhicheng204
2楼-- · 2020-01-05 01:52
我去,竟然没有人用到过同样的功能~~~~
canspider
3楼-- · 2020-01-05 06:14
 精彩回答 2  元偷偷看……
xuboluan
4楼-- · 2020-01-05 11:29
//复位所有IO口
//等待WK_UP按键松开(在有RTC中断时,必须等WK_UP松开再进入待机)
//使能PWR时钟
//复位备份区域
//后备区域访问使能
//STM32F4,当开启了RTC相关中断后,必须先关闭RTC中断,再清中断标志位,然后重新设置
//RTC中断,再进入待机模式才可以正常唤醒,否则会有问题.
//关闭RTC写保护
  //关闭RTC相关中断,
   //清除RTC相关中断标志位
   //使能RTC写保护
   //清除Wake_UP标志
   HAL_SuspendTick();
   //设置WKUP用于唤醒
    //进入待机模式
楼主参考下我写的进入stop模式前进行的操作, 看看有没有帮助
bolizhicheng204
5楼-- · 2020-01-05 13:45
canspider 发表于 2019-7-9 09:33
谁吃饱了没事看你的工程
自己把问题简化了再发出来

前面文字和图片已经表达很明白了
bolizhicheng204
6楼-- · 2020-01-05 14:41
xuboluan 发表于 2019-7-9 09:42
//复位所有IO口
//等待WK_UP按键松开(在有RTC中断时,必须等WK_UP松开再进入待机)
//使能PWR时钟

谢谢!这样比较保险一点

一周热门 更多>