硬汉嵌入式论坛

 找回密码
 立即注册
查看: 3410|回复: 11
收起左侧

[TIMER] 我按照你们H7的例程,怎么进不了STM32的低功耗模式,一直是进去马上出来

[复制链接]

7

主题

30

回帖

51

积分

初级会员

积分
51
发表于 2019-11-6 15:15:58 | 显示全部楼层 |阅读模式
本帖最后由 ZHANGHAO 于 2019-11-6 15:17 编辑

帮忙看看怎么回事,谢谢了,根本就进不去
5555555.png
4444444.png
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107031
QQ
发表于 2019-11-6 15:21:47 | 显示全部楼层
帮你测试了下,V7原始例子没问题
QQ截图20191106152308.jpg



回复

使用道具 举报

7

主题

30

回帖

51

积分

初级会员

积分
51
 楼主| 发表于 2019-11-6 15:26:31 | 显示全部楼层
eric2013 发表于 2019-11-6 15:21
帮你测试了下,V7原始例子没问题

我用的是STM32l476,hlptim1.Instance = LPTIM1;
  hlptim1.Init.Clock.Source = LPTIM_CLOCKSOURCE_APBCLOCK_LPOSC;
  hlptim1.Init.Clock.Prescaler = LPTIM_PRESCALER_DIV1;
  hlptim1.Init.Trigger.Source = LPTIM_TRIGSOURCE_SOFTWARE;
  hlptim1.Init.OutputPolarity = LPTIM_OUTPUTPOLARITY_HIGH;
  hlptim1.Init.UpdateMode = LPTIM_UPDATE_IMMEDIATE;
  hlptim1.Init.CounterSource = LPTIM_COUNTERSOURCE_INTERNAL;
  hlptim1.Init.Input1Source = LPTIM_INPUT1SOURCE_GPIO;
  hlptim1.Init.Input2Source = LPTIM_INPUT2SOURCE_GPIO;

这个是我定时器的配置,不知道为什么进不去,马上就出来
回复

使用道具 举报

7

主题

30

回帖

51

积分

初级会员

积分
51
 楼主| 发表于 2019-11-6 15:28:44 | 显示全部楼层
eric2013 发表于 2019-11-6 15:21
帮你测试了下,V7原始例子没问题

我用的STM32L476,
hlptim1.Instance = LPTIM1;
  hlptim1.Init.Clock.Source = LPTIM_CLOCKSOURCE_APBCLOCK_LPOSC;
  hlptim1.Init.Clock.Prescaler = LPTIM_PRESCALER_DIV1;
  hlptim1.Init.Trigger.Source = LPTIM_TRIGSOURCE_SOFTWARE;
  hlptim1.Init.OutputPolarity = LPTIM_OUTPUTPOLARITY_HIGH;
  hlptim1.Init.UpdateMode = LPTIM_UPDATE_IMMEDIATE;
  hlptim1.Init.CounterSource = LPTIM_COUNTERSOURCE_INTERNAL;
  hlptim1.Init.Input1Source = LPTIM_INPUT1SOURCE_GPIO;
  hlptim1.Init.Input2Source = LPTIM_INPUT2SOURCE_GPIO;

这个是我的低功耗定时器的配置,有什么问题吗,就是进不去,进去马上出来
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107031
QQ
发表于 2019-11-6 15:30:00 | 显示全部楼层
ZHANGHAO 发表于 2019-11-6 15:28
我用的STM32L476,
hlptim1.Instance = LPTIM1;
  hlptim1.Init.Clock.Source = LPTIM_CLOCKSOURCE_APB ...

L4不行,L4是M4内核的,你得把滴答定时器中断关闭了才可以。
回复

使用道具 举报

7

主题

30

回帖

51

积分

初级会员

积分
51
 楼主| 发表于 2019-11-6 15:31:16 | 显示全部楼层
eric2013 发表于 2019-11-6 15:30
L4不行,L4是M4内核的,你得把滴答定时器中断关闭了才可以。

谢谢,我试试
回复

使用道具 举报

7

主题

30

回帖

51

积分

初级会员

积分
51
 楼主| 发表于 2019-11-6 15:36:56 | 显示全部楼层
本帖最后由 ZHANGHAO 于 2019-11-6 15:56 编辑
eric2013 发表于 2019-11-6 15:30
L4不行,L4是M4内核的,你得把滴答定时器中断关闭了才可以。

                                                                             
回复

使用道具 举报

7

主题

30

回帖

51

积分

初级会员

积分
51
 楼主| 发表于 2019-11-6 15:52:33 | 显示全部楼层
我把滴答定时器器关了,出不来了,低功耗定时器能唤醒吗,HAL_LPTIM_TimeOut_Start_IT(&hlptim1,0, 32767) ,没起作用吗
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107031
QQ
发表于 2019-11-6 15:54:52 | 显示全部楼层
ZHANGHAO 发表于 2019-11-6 15:36
滴答定时器怎么关了,没关过

SysTick->CTRL &= ~SysTick_CTRL_ENABLE_Msk;  /* 关闭滴答定时器 */  
SysTick->CTRL |= SysTick_CTRL_ENABLE_Msk; /* 使能滴答定时器 */  
回复

使用道具 举报

7

主题

30

回帖

51

积分

初级会员

积分
51
 楼主| 发表于 2019-11-6 16:09:58 | 显示全部楼层
eric2013 发表于 2019-11-6 15:54
SysTick->CTRL &= ~SysTick_CTRL_ENABLE_Msk;  /* 关闭滴答定时器 */  
SysTick->CTRL |= SysTick_CTRL_ ...

进去怎么唤不醒呢,下面这个函数不起作用怎么回事,if (HAL_LPTIM_TimeOut_Start_IT(&hlptim1, 0, 32767) != HAL_OK),
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
107031
QQ
发表于 2019-11-6 16:11:18 | 显示全部楼层
ZHANGHAO 发表于 2019-11-6 16:09
进去怎么唤不醒呢,下面这个函数不起作用怎么回事,if (HAL_LPTIM_TimeOut_Start_IT(&hlptim1, 0, 32767) ...

其它问题靠你自己研究了,我没有用过L4。

H7的话,这里的代码是没问题的。

此贴就交流这么多吧
回复

使用道具 举报

7

主题

30

回帖

51

积分

初级会员

积分
51
 楼主| 发表于 2019-11-6 16:15:12 | 显示全部楼层
eric2013 发表于 2019-11-6 16:11
其它问题靠你自己研究了,我没有用过L4。

H7的话,这里的代码是没问题的。

非常感谢,下面我自己看看吧
回复

使用道具 举报

9

主题

112

回帖

144

积分

初级会员

积分
144
发表于 2019-11-6 16:35:07 | 显示全部楼层
L4设置停机模式时要先允许lptim在停机模式启用,RCC里有相关寄存器
回复

使用道具 举报

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

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-5-14 19:33 , Processed in 0.358907 second(s), 28 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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