xyzjacky 发表于 2020-4-14 14:20

STM32低功耗的引脚电平

各位朋友,请问,有人做过STM32的低功耗的项目不?
STM32低功耗模式下,引脚电平是怎样的呢?
我现在有一个引脚需要在STOP模式时,保持低电平,这个能做到吗?
请问,有官网资料不?

xyzjacky 发表于 2020-5-19 11:20

我自己来回复我自己吧,争取把这个帖子做成一个STM32低功耗的引脚专帖。

xyzjacky 发表于 2020-5-19 11:24

本帖最后由 xyzjacky 于 2020-5-19 11:25 编辑

实现功耗优化的GPIO软件指南
1.将未使用的GPIO输入配置为模拟输入GPIO始终有一个输入通道,可以是数字或模拟通道。
如果不需要读取GPIO数据,则优先配置为模拟输入。这节省了输入施密特触发器的消耗。

在STM32CubeMX配置中都有这么一个选项:将不用引脚配置为模拟状态。


注意下图中提示的IO引脚可容忍的电压。

xyzjacky 发表于 2020-5-19 11:36

另外一篇帖子,帖子名称《STM32 低功耗 调试心得》,出处:https://www.cnblogs.com/suozhang/p/10043742.html
以下为引脚电平的内容:

MCU在进入STOP模式的时候,GPIO的状态都是保持在进入低功耗模式之前的状态,在最小系统中,MCU的GPIO都是悬空的,所以设置为何种状态都不会影响到功耗。但当连接到外设后,外设的电平状态和所连接的GPIO不一致的时候,就会产生电流。也就是所谓的漏电流!

解决办法:将GPIO的对应GPIO都设置为输出高电平的状态(与GPIO接的模块引脚电平匹配),之后再进入到STOP模式,此时的电流就减少到了符合数据手册的范畴。

小结:首先需要阅读外设IC的手册,确定好对应引脚的状态,做到心中有数。然后在控制MCU低功耗状态之前,设置好MCU的IO口的上下拉模式及输入输出状态,要保证一丝儿电流都不要被它消耗掉。

按照这个网友的说法,应该是为了保证低功耗待机时,功耗最小,尽量做到GPIO没有漏电流,可以把一些连接了外设的GPIO设置成输出高电平,然后再进入STOP模式(STOP模式似乎是用得最多的低功耗模式)。
那么照这样理解:GPIO设置了再进入低功耗模式,GPIO是会保持进入前的状态的。

xyzjacky 发表于 2020-5-19 11:39

xyzjacky 发表于 2020-5-19 11:36
另外一篇帖子,帖子名称《STM32 低功耗 调试心得》,出处:https://www.cnblogs.com/suozhang/p/10043742.h ...

《STM32 低功耗 调试心得》,出处:https://www.cnblogs.com/suozhang/p/10043742.html
这篇原文还讲了其他一些关于低功耗的内容,讲得很好。建议收藏。
页: [1]
查看完整版本: STM32低功耗的引脚电平