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

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

3天内不再提示

使用STM32WB设计BLE应用时影响功耗的内容

STM32单片机 来源:STM32 作者:STM32WB 2021-06-22 17:47 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

功耗是物联网应用当中非常关键的因素,在开发的早期都会对功耗进行评估和测试。那么,如何使用ST提供的工具对动态功耗进行测量呢?针对BLE应用应当如何进行低功耗的设计呢?本篇跟大家一起聊聊该话题。

测量工具

在本文中使用CubeMonitor-Power + Power Shield的组合工具对STM32Nucleo开发板的动态功耗进行测量。

CubeMonitor-Power是ST提供的上位机软件,主要帮助用户动态的测量功耗。用户可以设定采样频率,采样时间,输入电压等。其界面如下:

X-NUCLEO-LPM01A是ST提供的一块功耗测量的评估板,它可以配合CubeMonitor-Power上位机软件,对目标板的动态功耗进行测量,方便开发者对功耗进行评估。

其特性如下:可编程电压源范围:1.8v~3.3v

静态测量:

电流范围:1nA~200mA

动态测量:

电流范围:100nA~50mA

100KHz带宽,3.2Msps采样率

功耗测量范围:180nW~165mW

X-NUCLEO-LPM01A与STM32WB Nucleo板的连接如下所示,完成连接后就可以通过上位机控制和测量Nucleo的功耗了。

不同低功耗模式的区别主要如下:

低功耗模式唤醒源唤醒后系统时钟时钟影响

Sleep中断/事件与进入前一样CPU时钟关闭,对其他时钟或模拟时钟源无影响

LPRUN清除LPR位与进入前一样无

LPSLEEP中断/事件与进入前一样CPU时钟关闭,对其他时钟或模拟时钟源无影响

Stop0/Stop1/Stop2任意EXTI,特定外设事件

STOPWUCK=1,HSI16STOPWUCK=0,MSI

所有时钟关闭,除了LSI和LSE

StandbyWKUP引脚,RTC事件,LSECSS,NRST引脚复位,IWDG重置HSI16

ShutdownWKUP引脚,RTC事件, NRST引脚复位MSI 4MHz所有时钟关闭,除了LSE

STM32WB支持的低功耗模式非常多,首先需要根据应用情况选择一个适合的低功耗模式,能保持BLE连接的低功耗模式主要有Sleep和STOP,

SMPS

LDO是一种线性电源,它的优势在于结构简单,电流纹波比较低,但电源效率偏低。

SMPS是一种开关电源,它的优势在于电源效率高,损耗小,但由于频率较高会对周围设备造成一定的干扰,需要注意。

通过修改Nucleo板子上的SB31可以控制LDO还是SMPS供电:SB31打开:SMPS打开SB31关闭:SMPS关闭软件侧,打开SMPS,修改app_conf.h代码如下:

#define CFG_USE_SMPS 1

关闭SMPS,使用LDO,修改app_conf.h代码:#define CFG_USE_SMPS 0

从以上图片可以看出,使用SMPS无论是平均电流还是低功耗状态下的电流都要更小,所以应当尽可能使用SMPS。

广播参数

使用BLE_HeartRate Demo不需要做任何修改就可以测试不同的广播参数,该demo默认会先进行一段时间快速广播,然后再进入慢速广播。

广播间隔不同,平均功耗不同。

左侧图片的广播间隔为80ms~100ms,平均电流为282.914 uA。右侧图片的广播间隔为1s~2.5s,平均电流为16.443 uA。

可以看出广播间隔的长短对功耗影响很大,所以在设计BLE应用的时候,应当考虑适当降低广播间隔。

为了保证尽快被对方设备发现,可以如ST 心率Demo中的做法类似,首先先进入一段时间的快速广播,然后使用慢速广播,这样既可以保证开机时被发现的速度,又可以降低平均功耗。

连接参数

测试修改连接参数,可以使用ST提供的P2P Demo。注意:只有主机才能修改连接参数。

通过Button SW2按键,切换并测试不同的连接参数,代码修改如下图:打开Button SW2的中断:

4242969e-cffc-11eb-9e57-12bb97331649.jpg

关闭trace后,可以使能低功耗:

连接dongle后,按下Button后,切换不同的连接参数:

由于BLE在没有数据传输时,也会发送空包,所以降低连接间隔,可以降低平均功耗。

如图所示,左边是使用125ms连接间隔测试的结果,右边是使用1250ms连接间隔的测试结果,左边比右边的平均电流要高近 140uA。所以在应用中可以根据具体的应用使用合适的连接间隔来降低平均功耗。

总结

本文介绍了使用STM32WB设计BLE应用时,影响功耗的各方面的内容。低功耗设计的好坏,直接关系到产品的使用时长,往往是优秀产品的必备要素,需要认真掌握。

责任编辑:haq

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

    关注

    2305

    文章

    11124

    浏览量

    371274
  • BLE
    BLE
    +关注

    关注

    13

    文章

    747

    浏览量

    66027

原文标题:工程师笔记 | STM32WB BLE应用低功耗设计

文章出处:【微信号:STM32_STM8_MCU,微信公众号:STM32单片机】欢迎添加关注!文章转载请注明出处。

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

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    【WiFi+蓝牙】智能门锁、智能插座:用Ai-WB2系列,价格更低,性能更强

    的模组 ●Wi-Fi 与 BLE 二合一   Ai-WB2 支持 Wi-Fi 802.11 b/g/n(2.4GHz)与 BLE 5.0,能同时满足 联网与蓝牙配网/低功耗交互需求 ,
    的头像 发表于 11-19 16:05 212次阅读
    【WiFi+蓝牙】智能门锁、智能插座:用Ai-<b class='flag-5'>WB</b>2系列,价格更低,性能更强

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

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

    STM32WB连接扩展板技术解析:从硬件架构到开发实践

    STMicroelectronics B-WB1M-WPAN1连接扩展板设有板载STM32WB1MMCH6。STMicro B-WB1M-WPAN1连接扩展板提供母头-母头STMOD+
    的头像 发表于 10-23 09:40 383次阅读
    <b class='flag-5'>STM32WB</b>连接扩展板技术解析:从硬件架构到开发实践

    STM32WB09xE蓝牙低功耗MCU技术解析

    STMicroelectronics STM32WB09 BLUETOOTH® 低功耗5.4 32位MCU嵌入最先进的2.4GHz射频无线电外设,优化用于实现超低功耗和出色的无线电性能,可实现
    的头像 发表于 10-20 09:29 342次阅读
    <b class='flag-5'>STM32WB</b>09xE蓝牙低<b class='flag-5'>功耗</b>MCU技术解析

    STM32WB09KE评估板技术解析与应用指南

    STMicroelectronics NUCLEO-WB09KE STM32WB09评估板是一款蓝牙® 低功耗无线和超低功耗板,内置功能强大、超低
    的头像 发表于 10-17 18:07 629次阅读
    <b class='flag-5'>STM32WB</b>09KE评估板技术解析与应用指南

    STM32WB07CC开发板技术解析与应用指南

    STMicroelectronics NUCLEO-WB07CC STM32 Nucleo-64射频开发板采用基于Arm® Cortex®M0+内核的STM32WB07CC微控制器
    的头像 发表于 10-17 17:11 788次阅读
    <b class='flag-5'>STM32WB</b>07CC开发板技术解析与应用指南

    功耗蓝牙BLE透传模块HM-BT4531的技术规格与应用指南

    内容概要:HM-BT4531是一款基于高性能、超低功耗蓝牙5.1芯片CMT4531的低功耗蓝牙(BLE)透传模块。它采用32位ARM® Cortex®-M0内核,最高频率64MHz,集
    发表于 06-12 17:13 1次下载

    STM32WB5MMG模块能否支持Thread转WIFI?

    请帮忙推荐一款可以WIFI转Sub-G/Zibber协议的芯片,希望做了无线认证。非常感谢。 1.STM32WB5MMG模块能否支持Thread转WIFI; 2.Nucleo-WBA55RG(主控
    发表于 04-24 06:12

    STM32WB5MMG模块能否支持Thread转WIFI?

    请帮忙推荐一款可以WIFI转Sub-G/Zibber协议的芯片,希望做了无线认证。非常感谢。 1.STM32WB5MMG模块能否支持Thread转WIFI; 2.Nucleo-WBA55RG(主控
    发表于 04-22 08:22

    STM32WB09KEV6TR生成的代码需要改哪些地方才能实现开启BLE

    想问一下我利用STM32WB09KEV6TR生成的代码还需要改哪些地方才能实现开启BLE,并且发现GATT服务,麻烦大佬指点一下,我需要看哪些文档~
    发表于 03-13 06:58

    用两块nucleo-wb05kz分别运行BLE_SerialCom_Peripheral 和BLE_SerialCom_central的蓝牙通讯示例,出现死机的情况怎么解决?

    用两块nucleo-wb05kz板子,分别运行BLE_SerialCom_Peripheral 和BLE_SerialCom_central 的蓝牙通讯示例时,出现了开发板死机的情况,有没有遇到类似问题的啊
    发表于 03-07 08:16

    低价不贵!安信可WiFi+BLE模组Ai-WB2系列

    安信可Ai-WB2系列模组集成Wi-Fi&BLE于一体,搭载BL602芯片作为核心处理器,支持Wi-Fi 802.11b/g/n协议和BLE 5.0协议。 Ai-WB2系列以单Wi-F
    的头像 发表于 03-06 08:49 817次阅读
    低价不贵!安信可WiFi+<b class='flag-5'>BLE</b>模组Ai-<b class='flag-5'>WB</b>2系列

    STM32WB55RG开发(5)----监测STM32WB连接状态

    ,监测和管理连接状态显得尤为关键。确保可靠连接不仅对于数据的实时传输至关重要,而且在面对低功耗需求、设备管理和故障诊断时,都有着不可或缺的作用。 本文将深入探讨STM32WB的连接状态监测机制。首先
    的头像 发表于 12-16 16:22 2339次阅读
    <b class='flag-5'>STM32WB</b>55RG开发(5)----监测<b class='flag-5'>STM32WB</b>连接状态

    STM32WB55RG开发(3)----生成 BLE 程序连接手机APP

    本项目旨在利用 STM32WB55 微控制器的蓝牙低功耗BLE)功能,实现与手机 APP 的无线连接。通过配置时钟源、启动关键模块(如 RCC、RTC、RF、IPCC 和 HSEM),以及启用蓝牙功能,用户可以创建一个稳定的
    的头像 发表于 12-16 16:06 2723次阅读
    <b class='flag-5'>STM32WB</b>55RG开发(3)----生成 <b class='flag-5'>BLE</b> 程序连接手机APP

    STM32WB55RG开发(1)----开发板测试

    STM32WB55 & SENSOR是一款基于STM32WB55系列微控制器的评估套件。该套件采用先进的无线通信技术,支持Bluetooth® 5.3规范、IEEE
    的头像 发表于 12-16 15:39 2845次阅读
    <b class='flag-5'>STM32WB</b>55RG开发(1)----开发板测试