搜索
12
返回列表 发新帖
楼主: zhengxk-344971

[已解决] STM32L051单片机ADC如何彻底关闭?

[复制链接]

该用户从未签到

3

主题

61

帖子

2

蝴蝶豆

中级会员

最后登录
2020-8-19
 楼主| 发表于 2019-12-25 10:50:27 | 显示全部楼层
有没有ST技术支持人员的联系方式呢?
回复 支持 反对

使用道具 举报

该用户从未签到

1

主题

33

帖子

0

蝴蝶豆

高级会员

最后登录
2021-4-23
发表于 2019-12-25 14:12:58 | 显示全部楼层
zhengxk-344971 发表于 2019-12-24 14:04
一样效果,没有用。

行吧,你在看看吧,我就是这样用的,功耗在5uA左右
回复 支持 反对

使用道具 举报

该用户从未签到

3

主题

61

帖子

2

蝴蝶豆

中级会员

最后登录
2020-8-19
 楼主| 发表于 2019-12-30 09:03:19 | 显示全部楼层
ljtzsd 发表于 2019-12-25 14:12
行吧,你在看看吧,我就是这样用的,功耗在5uA左右

谢谢支持!请问你用的是哪款CPU呢?我又用L431试了一下,初始化ADC和不初始化ADC几乎没什么差别。
回复 支持 反对

使用道具 举报

该用户从未签到

1

主题

33

帖子

0

蝴蝶豆

高级会员

最后登录
2021-4-23
发表于 2019-12-31 12:53:33 | 显示全部楼层
zhengxk-344971 发表于 2019-12-30 09:03
谢谢支持!请问你用的是哪款CPU呢?我又用L431试了一下,初始化ADC和不初始化ADC几乎没什么差别。 ...

STM32L051C8T6
回复 支持 反对

使用道具 举报

该用户从未签到

3

主题

1306

帖子

929

蝴蝶豆

版主

最后登录
2021-3-31
发表于 2020-1-3 11:21:02 | 显示全部楼层
可以参考例程,不用的IO口配置成模拟输入,并且关闭相应IO口的总时钟
(__HAL_RCC_GPIOA_CLK_DISABLE();)。
当然有需要设置的除外,没有关闭会带来一定耗电的上升。

评分

参与人数 1蝴蝶豆 +2 收起 理由
STMCU + 2

查看全部评分

回复 支持 反对

使用道具 举报

该用户从未签到

3

主题

61

帖子

2

蝴蝶豆

中级会员

最后登录
2020-8-19
 楼主| 发表于 2020-8-14 15:59:16 | 显示全部楼层
问题终于解决,在此说明原因,以感谢给予帮助的同学们!



之前软件在开启ADC初始化后,电流由5.5uA上升至20uA,经查看手册发现reference开启后电流大约为13.525uA,怀疑是reference没关导致。


将初始化代码中关于开启reference部分代码注释掉,
  /** Configure for the selected ADC regular channel to be converted.
  */
//  sConfig.Channel = ADC_CHANNEL_VREFINT;
//  if (HAL_ADC_ConfigChannel(&hadc, &sConfig) != HAL_OK)
//  {
//    Error_Handler();
//  }

此时,系统电流变为6uA左右,因此确定是由于开启了VREFINT导致。因此需要在关闭ADC的同时也要关闭reference


经过检查代码以及调试发现,执行函数
HAL_ADC_DeInit(&hadc);时会将ADC和VREFINT全部关闭,但是程序功耗并不降低。


又经过一段时间的调试和仔细阅读说明书,发现,PWR 电源控制寄存器(PWR_CR)中的ULP位会控制VREFINT在低功耗模式下的打开状态,


在进入低功耗模式前,必须将ULP置位,HAL_PWREx_EnableUltraLowPower();此时功耗下降至正常水平。至此折磨我很长一段时间的问题终于解决。


虽然问题解决,但仍然有一个疑问:

如果ADC不初始化,或者ADC初始化中不将VREFINT通道纳入转换通道,功耗不会增加,此时ULP位状态不影响。也就是说只要没有初始化设置采集内部参考通道,设置为低功耗模式下打开VREFINT也是无效的。但是只要初始化设置一次后,不管后面将ADC所有寄存器清零(HAL_ADC_DeInit),设置为不采集VREFINT,此时如果ULP0,则进入低功耗时VREFINT就会打开,不知是何原因?









回复 支持 反对

使用道具 举报

该用户从未签到

2

主题

78

帖子

2

蝴蝶豆

高级会员

最后登录
2021-11-22
发表于 2020-8-17 09:59:35 | 显示全部楼层
zhengxk-344971 发表于 2020-8-14 15:59
问题终于解决,在此说明原因,以感谢给与帮助的同学们!

感谢楼主分享。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /3 下一条

Archiver|手机版|小黑屋|论坛-意法半导体STM32/STM8技术社区

GMT+8, 2024-4-30 00:27 , Processed in 0.167812 second(s), 33 queries .

Powered by Discuz! X3.4

Copyright © 2001-2024, Tencent Cloud.

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