0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何配置STM32低功耗时的引脚

黄工的嵌入式技术圈 来源:黄工的嵌入式技术圈 2020-03-03 13:57 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

今天回答一位读者问的关于STM32低功耗问题。

1写在前面

有低功耗产品设计经验的朋友都应该知道,一个产品的功耗不光是硬件功耗的事,其实软件也是影响整个产品功耗的一个关键因素。

我之前也开发过几款使用电池供电的产品,调试起来,那叫一个痛苦,软件和硬件各种因素都要考虑。

当你确信软件没问题了,可能硬件某个地方又存在漏电流,这其中的“痛苦”我也不再这里描述了。

下面给出STM32低功耗时,其引脚的相关配置。

2

实现功耗优化的GPIO软件指南

1.将未使用的GPIO输入配置为模拟输入

GPIO始终有一个输入通道,可以是数字或模拟通道。

如果不需要读取GPIO数据,则优先配置为模拟输入。这节省了输入施密特触发器的消耗。

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

2.调节GPIO速度

上升时间,下降时间和最大频率可使用GPIOx_OSPEEDR配置寄存器进行配置。

这种调整对EMI(电磁干扰)和SSO(同时开关输出)有影响,因为开关电流峰值较高。因此必须平衡GPIO性能与噪声。

每个GPIO信号的上升时间和下降时间必须适应与相关信号频率和电路板容性负载兼容的最小值。

3.不使用时禁用GPIO寄存器时钟

如果某个GPIO组不需要长时间使用,请使用HAL_RCC_GPIOx_CLK_DISABLE()函数禁用其时钟。

4.进入低功耗模式时配置GPIO

进入低功耗模式时,所有引脚信号必须连接到VDD或接地。

如果GPIO连接到外部接收器(外部元件输入),则必须使用PP或PU/PD强制GPIO信号值。

当GPIO连接到驱动器(外部元件输出或总线)时,驱动器必须提供有效电平( VDD或接地)。如果未定义驱动器电平,则必须使用PU/PD强制GPIO上的信号。

出于实际原因,当GPIO是运行模式下的输入(模拟或数字)时,在低功耗模式下使用输入PU/PD可能更容易;当GPIO是运行模式下的输出时,则使用输出PP。这可以避免在进入或退出停止模式时管理更改。

5.退出关机模式

退出关机模式时, GPIO会在上电复位时重新配置为默认值。

在将它们重新编程为正确值之前,这会需要额外的系统消耗。

如果这是应用程序的问题,则必须使用待机模式替代关机模式。

(仅限STM32L4系列和STM32L4+系列)

(以上内容来自应用笔记:AN4899)

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • STM32
    +关注

    关注

    2313

    文章

    11195

    浏览量

    374656
  • 引脚
    +关注

    关注

    16

    文章

    2120

    浏览量

    56023
  • GPIO
    +关注

    关注

    16

    文章

    1333

    浏览量

    56456
  • VDD
    VDD
    +关注

    关注

    1

    文章

    319

    浏览量

    37432
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    探索STM32L072xx:超低功耗32位MCU的卓越之选

    探索STM32L072xx:超低功耗32位MCU的卓越之选 在当今的电子设备设计中,低功耗、高性能的微控制器(MCU)是众多工程师追求的目标。STM32L072xx系列MCU凭借其出色
    的头像 发表于 04-18 09:05 145次阅读

    探索STM32L072xx:超低功耗32位MCU的卓越之选

    探索STM32L072xx:超低功耗32位MCU的卓越之选 在当今电子设备追求低功耗、高性能的时代,STM32L072xx系列微控制器凭借其出色的特性脱颖而出。作为一名资深电子工程师,
    的头像 发表于 04-18 09:05 128次阅读

    ADCLK846:低抖动低功耗时钟扇出缓冲器的卓越之选

    ADCLK846:低抖动低功耗时钟扇出缓冲器的卓越之选 在电子工程师的日常设计工作中,时钟信号的处理至关重要,它直接影响着整个系统的性能和稳定性。今天,我们就来深入探讨一款高性能的时钟扇出缓冲器
    的头像 发表于 03-22 15:35 643次阅读

    9FGV0441:PCIe Gen 1 - 4应用的低功耗时钟发生器

    9FGV0441:PCIe Gen 1 - 4应用的低功耗时钟发生器 在当今的电子设备中,时钟发生器是确保系统稳定运行的关键组件之一。特别是在PCIe Gen 1 - 4应用中,对时钟发生器的性能
    的头像 发表于 03-19 16:00 360次阅读

    STM32L151xC与STM32L152xC:超低功耗MCU的卓越之选

    STM32L151xC与STM32L152xC:超低功耗MCU的卓越之选 在当今的电子设计领域,超低功耗微控制器(MCU)的需求日益增长,尤其是在对
    的头像 发表于 03-11 16:30 285次阅读

    LAT1594_基于事件唤醒低功耗之介绍

    客户反馈在 STM32U575 上使用 standby 模式时,无法使用 WKUP 管脚唤醒,检查客户配置后,发现是唤醒管脚配置错误导致,修改为正确配置后能正常唤醒 CPU。Corte
    发表于 03-11 10:48 0次下载

    STM32L062x8:超低功耗32位MCU的卓越之选

    STM32L062x8:超低功耗32位MCU的卓越之选 在当今的电子设计领域,低功耗、高性能的微控制器(MCU)是众多应用的核心需求。STMicroelectronics推出的STM32
    的头像 发表于 03-02 15:20 298次阅读

    STM32L072xx系列微控制器:低功耗设计的优选之选

    STM32L072xx系列微控制器:低功耗设计的优选之选 在当今的电子设备设计中,低功耗、高性能的微控制器是众多工程师追求的目标。STMicroelectronics推出的STM32L
    的头像 发表于 02-28 11:35 723次阅读

    9FGV0441:PCIe Gen 1 - 4 应用的低功耗时钟发生器

    9FGV0441:PCIe Gen 1 - 4 应用的低功耗时钟发生器 在当今的电子设备中,时钟发生器是确保系统稳定运行的关键组件之一。对于 PCIe Gen 1 - 4 应用,我们需要一款能够满足
    的头像 发表于 02-27 17:15 823次阅读

    CDCE6214:超低功耗时钟发生器的卓越之选

    CDCE6214:超低功耗时钟发生器的卓越之选 在电子设计领域,时钟发生器是确保系统稳定运行的关键组件之一。今天,我们要深入探讨一款性能出色的超低功耗时钟发生器——CDCE6214。它具有众多优秀
    的头像 发表于 02-08 09:35 357次阅读

    单片机低功耗的处理

    也不会打开。 4、有连接外设的IO口根据实际情况配置引脚。不是所有引脚拉低都能降低功耗的,需要根据情况来定,这一点比较复杂,我讲一些最常见的情况吧。比如有连接LED灯,把灯关掉才是
    发表于 01-21 08:25

    MAX35103:低功耗时间数字转换器的卓越之选

    MAX35103:低功耗时间数字转换器的卓越之选 在电子设计领域,对于高精度、低功耗的时间数字转换器的需求日益增长。尤其是在超声波热量表和流量计市场,这类设备需要精确测量时间和流量,同时还要尽可能降低功耗
    的头像 发表于 01-14 14:50 258次阅读

    STM32WB1MMC蓝牙低功耗模块技术解析与应用设计

    STMicroelectronics STM32WB1MMC蓝牙® 低功耗模块是一款超低功耗、小尺寸、经过认证的2.4 GHz无线模块。它支持低功耗蓝牙5.3。它基于
    的头像 发表于 10-25 16:20 1761次阅读
    <b class='flag-5'>STM32</b>WB1MMC蓝牙<b class='flag-5'>低功耗</b>模块技术解析与应用设计

    ‌CDCE6214 超低功耗时钟发生器技术文档总结

    该CDCE6214是一款四通道、超低功耗、中等抖动时钟发生器,可生成五个独立的时钟输出,可在各种模式的驱动器之间进行选择。输入源可以是单端或差分输入时钟源,也可以是晶体。该CDCE6214具有
    的头像 发表于 09-12 10:03 922次阅读
    ‌CDCE6214 超<b class='flag-5'>低功耗时</b>钟发生器技术文档总结

    pm组件进入低功耗不能唤醒是怎么回事?

    我手里的芯片是stm32l412CBT6,使用ENV配置pm组件,调整idle堆栈大小,配置FINSH对应的串口是uart2,通过命令pm_release,可以是板子进入低功耗,稳压
    发表于 09-12 06:04