【BLE】STM32WB55低功耗实测(十)

1. 官方的理论数据

2. 使用官方工程验证

  1. 官方工程的路径是

\stm32cubewb-v1-20-0\STM32Cube_FW_WB_V1.20.0\Projects\P-NUCLEO-WB55.Nucleo\Applications\BLE\BLE_p2pServer

  1. 编译后无错误
  2. 注意BLE参数配置
  • 广播间隔
c 复制代码
#define CFG_FAST_CONN_ADV_INTERVAL_MIN    (0x80)      /**< 80ms */
#define CFG_FAST_CONN_ADV_INTERVAL_MAX    (0xa0)      /**< 100ms */
#define CFG_LP_CONN_ADV_INTERVAL_MIN      (0x640)     /**< 1s */
#define CFG_LP_CONN_ADV_INTERVAL_MAX      (0xfa0)     /**< 2.5s */

static void Adv_Request(APP_BLE_ConnStatus_t NewStatus)
{
  tBleStatus ret = BLE_STATUS_INVALID_PARAMS;
  uint16_t Min_Inter, Max_Inter;

  //此处强制修改为 低速广播
  NewStatus = APP_BLE_LP_ADV;
    
  if (NewStatus == APP_BLE_FAST_ADV)
  {
    Min_Inter = AdvIntervalMin;
    Max_Inter = AdvIntervalMax;
  }
  else
  {
    Min_Inter = CFG_LP_CONN_ADV_INTERVAL_MIN;
    Max_Inter = CFG_LP_CONN_ADV_INTERVAL_MAX;
  }
  • 使用SMPS
c 复制代码
/**
 * SMPS supply
 * SMPS not used when Set to 0
 * SMPS used when Set to 1
 */
#define CFG_USE_SMPS    1
  • 配置低功耗模式打开
c 复制代码
/******************************************************************************
 * Low Power
 ******************************************************************************/
/**
 *  When set to 1, the low power mode is enable
 *  When set to 0, the device stays in RUN mode
 */
#define CFG_LPM_SUPPORTED    1
  • 调试配置 全部关闭
c 复制代码
/******************************************************************************
 * Debug
 ******************************************************************************/
/**
 * When set, this resets some hw resources to put the device in the same state as at power up.
 * It resets only register that may prevent the FW to run properly.
 *
 * This shall be set to 0 in a final product
 *
 */
#define CFG_HW_RESET_BY_FW         0

/**
 * keep debugger enabled while in any low power mode when set to 1
 * should be set to 0 in production
 */
#define CFG_DEBUGGER_SUPPORTED    0

/**
 * When set to 1, the traces are enabled in the BLE services
 */
#define CFG_DEBUG_BLE_TRACE     0

/**
 * Enable or Disable traces in application
 */
#define CFG_DEBUG_APP_TRACE     0

3. 测试数据

  • 可以看到3.3V供电,平均功耗为 13uA左右

  • 广播的间隔实测 1.7秒左右

  • 在低功耗期间-停止模式-测试功耗为 2.6uA,与理论数据相近

  • 使用调度器自带的软件定时器,创建一个2秒周期的软件定时器,可以看到芯片在STOP2 模式下会被周期唤醒

  • 此时唤醒源为:广播+定时器

相关推荐
时光の尘16 小时前
【凌鸥LKS32】基础篇(二)·Timer定时器实现LED闪烁
单片机·mcu·物联网·iot·timer·lks07
小渔村的拉线工1 天前
1.HPM6E80 解析芯片整体工作原理和存储架构
单片机·嵌入式硬件·mcu·架构·hpm6e80
光子物联单片机2 天前
STM32传感器模块编程实践(二十一)DIY语音控制小车套件模型
c语言·stm32·单片机·嵌入式硬件·mcu
jianqiang.xue2 天前
系统服务层设计:沉淀通用能力,让业务层只专注业务
stm32·单片机·嵌入式硬件·mcu·物联网·esp32
156082072192 天前
飞腾D2000接入外部时钟HYM8563芯片调试
驱动开发·嵌入式硬件·mcu
亿道电子Emdoor4 天前
【Arm】MSP和PSP的区别简介
c语言·arm开发·单片机·mcu
国产HT1621B4 天前
YL1650 LED驱动芯片详解:从原理到实战应用(附51单片机驱动代码)
stm32·单片机·嵌入式硬件·mcu·fpga开发·lcd驱动
李永奉4 天前
中科蓝讯SDK开发-开启串口Debug打印调试教程
单片机·嵌入式硬件·mcu·物联网·电脑
sramdram5 天前
基于MCU微控制器的冰箱压缩机系统解决方案
单片机·嵌入式硬件·mcu·mcu微控制器
电子科技圈8 天前
第二代无线平台历久弥新,赋能物联网创新迭代
人工智能·嵌入式硬件·mcu·物联网·设计模式·硬件架构·iot