【经验】芯科科技EFR32BG22系列蓝牙SOC低功耗优化的相关配置

2021-09-27 世强
蓝牙SOC,EFR32BG22EFR32BG22,EFR32BG22,Silicon Labs 蓝牙SOC,EFR32BG22EFR32BG22,EFR32BG22,Silicon Labs 蓝牙SOC,EFR32BG22EFR32BG22,EFR32BG22,Silicon Labs 蓝牙SOC,EFR32BG22EFR32BG22,EFR32BG22,Silicon Labs

本文主要介绍SILICON LABS(芯科科技)EFR32BG22系列蓝牙SOC目前所有的低功耗优化的相关配置,实现目标: VDD=3V,VSCALE0=0.9V,温度25℃,EM2模式下深度休眠为1.4μA。

需求:

Studio V5

Gecko SDK Suite v3.2.2

Bluetooth 3.2.2

新建工程,请参考:【经验】基于Simplicity Studio5创建EFR32BG22蓝牙SoC工程        


1.使能2.4G PA

  在sl_bluetooth_config.h中的SL_BT_CONFIG_DEFAULT修改:

    .pa.pa_mode = 2,                           //PA选择2P4_LP                 

    .pa.config_enable = 1,                    //使能


2.设置广播间隔1秒(根据需求)

      // Set advertising interval to 100ms.

      sc = sl_bt_advertiser_set_timing(

        advertising_set_handle,

        1600, // min. adv. interval (milliseconds * 1.6)

        1600, // max. adv. interval (milliseconds * 1.6)

            0,   // adv. duration

        0);  // max. num. adv. Events


3.设置发射功率为0dbm

         sl_bt_system_set_tx_power(0,0,0,0);


4.可选–设置为单信道广播

       在app.c里面设置

      sl_bt_advertiser_set_channel_map(advertising_set_handle,1)


5.使能DCDC(低功耗的硬件设计建议增加DCDC)

 进入配置之后使能->保存。

确认为0,


6.SSv5默认调试功能在EM2模式下是打开 debug的,会增加一些功耗。

可以关闭,如下:

7.如果使用开发板测试,关闭外部Flash,如果不是,disable所以未使用的GPIO

void powerDownSpiFlash(void)

{

  FlashStatus status;

  MX25_init();

  MX25_RSTEN();

  MX25_RST(&status);

  MX25_DP();

  MX25_deinit();

}

在main.c里调用。


8.设置VSCALE0

      EMU_EM23Init_TypeDef vsInit = EMU_EM23INIT_DEFAULT;

     vsInit.vScaleEM23Voltage = emuVScaleEM23_LowPower;

      EMU_EM23Init(&vsInit);


9.使用外部低频振荡器

CMU_LFXOInit_TypeDef lfxoInit = CMU_LFXOINIT_DEFAULT;

CMU_LFXOInit(&lfxoInit);

CMU_OscillatorEnable(cmuOsc_LFRCO, false, false);

CMU_OscillatorEnable(cmuOsc_LFXO, true, true);

CMU_ClockSelectSet(cmuClock_LFXO, cmuSelect_LFXO);


10.以上9条优化针对蓝牙协议栈运行,以下这条优化是针对EFR32BG22EFR32BG22作为低功耗MCU使用,可以选择关闭部分的RAM,并启用外部RTC来唤醒。在此模式下,休眠电流极限为1.05uA。

RAM可以被分为24 KB和8 KB的bank,分别从地址0x20000000和0x20006000开始,如下仅保留8KB的RAM:

  /* Disable Instruction Cache */

  CMU_ClockEnable(cmuClock_ICACHE, true);

  ICACHE0->CTRL |= 0x01;

 

  /* Disable Radio RAM memories (FRC and SEQ)*/

  CMU_ClockEnable(cmuClock_SYSCFG, true);

  SYSCFG->RADIORAMRETNCTRL = 0x103UL;

// 0x103UL : power down both FRCRAM and SEQRAM                                                          

// 0x100UL : power down only FRCRAM

                                                       

// 0x003UL : power down only SEQRAM

                                                       

// 0x000UL : power down none

 

附加RTCC初始化:

/**************************************************************************//**

 *   Setup RTCC with selected clock source

 *   Select clock source, valid values are cmuSelect_LFRCO, cmuSelect_LFXO,

 *   and cmuSelect_ULFRCO.

 *****************************************************************************/

#define RTCC_CLOCK       cmuSelect_ULFRCO

void setupRtcc(CMU_Select_TypeDef rtccClock)

{

  RTCC_Init_TypeDef rtccInit = RTCC_INIT_DEFAULT;

  RTCC_CCChConf_TypeDef rtccInitCompareChannel = RTCC_CH_INIT_COMPARE_DEFAULT;

 

  if (rtccClock == cmuSelect_LFXO)

  {

    // Initialize LFXO with specific parameters

    CMU_LFXOInit_TypeDef lfxoInit = CMU_LFXOINIT_DEFAULT;

    CMU_LFXOInit(&lfxoInit);

  }

 

  // Setting RTCC clock source

  CMU_ClockSelectSet(cmuClock_RTCCCLK, rtccClock);

  // Enable RTCC bus clock

  CMU_ClockEnable(cmuClock_RTCC, true);

 

  // Initialize CC1 to toggle PRS output on compare match

  //rtccInitCompareChannel.compMatchOutAction = rtccCompMatchOutActionToggle;

  RTCC_ChannelInit(1, &rtccInitCompareChannel);

 

  // Setting the CC1 compare value of the RTCC

  if (rtccClock == cmuSelect_ULFRCO)

  {

    RTCC_ChannelCCVSet(1, (1000 * 20) - 1);

  }

  else

  {

    RTCC_ChannelCCVSet(1, (32768 * 5) - 1);

  }

 

  // Initialize the RTCC

  rtccInit.cntWrapOnCCV1 = true;        // Clear counter on CC1 compare match

  rtccInit.presc = rtccCntPresc_1;      // Prescaler 1

  RTCC_Init(&rtccInit);

 

  // Enabling Interrupt from RTCC CC1

  RTCC_IntEnable(RTCC_IEN_CC1);

  NVIC_ClearPendingIRQ(RTCC_IRQn);

  NVIC_EnableIRQ(RTCC_IRQn);

}


授权代理商:世强先进(深圳)科技股份有限公司
技术资料,数据手册,3D模型库,原理图,PCB封装文件,选型指南来源平台:世强硬创平台www.sekorm.com
现货商城,价格查询,交期查询,订货,现货采购,在线购买,样品申请渠道:世强硬创平台电子商城www.sekorm.com/supply/
概念,方案,设计,选型,BOM优化,FAE技术支持,样品,加工定制,测试,量产供应服务提供:世强硬创平台www.sekorm.com
集成电路,电子元件,电子材料,电气自动化,电机,仪器全品类供应:世强硬创平台www.sekorm.com
  • +1 赞 0
  • 收藏
  • 评论 0

本文由蜡笔小芯提供,版权归世强硬创平台所有,非经授权,任何媒体、网站或个人不得转载,授权转载时须注明“来源:世强硬创平台”。

平台合作

评论

   |   

提交评论

全部评论(0

暂无评论

相关推荐

【经验】芯科科技EFR32BG22系列蓝牙SOC修改自定义广播包的思路与具体实例

在蓝牙的实际应用中,往往需要自定义的蓝牙广播包来适应不同的应用环境,本文主要介绍基于SILICON LABS的EFR32BG22蓝牙SOC实现自定义广播数据包的方法。

2023-03-16 -  设计经验 代理服务 技术支持 采购服务

【经验】STUDIO V5中蓝牙SoC EFR32BG22添加串口LOG打印的方法

在调试Silicon Labs蓝牙SoC EFR32BG22时,一般需要添加LOG打印信息,通过串口的方式来判断代码运行是否正常。由于使用RTT功能在打印信息时无法再次在线调试和代码下载,所以直接采用串口的方式更加便捷。

2021-06-30 -  设计经验 代理服务 技术支持 采购服务

【经验】Silicon Labs蓝牙SoC在开启了串口后,如何降低功耗?

在调试Silicon Labs的蓝牙SoC时,我们需要打开串口日志输出以方便调试,但是在添加了Log和IO Stream:USART组件后,可以看到日志可以输出了,但是随之EM2休眠功耗却降不下去了,这是由于添加了串口后,默认串口在EM2下是开启的,导致EM2下功耗会比较高,本文将以EFR32BG27为例,指导如何在添加了串口后降低串口功耗。

2023-09-05 -  设计经验 代理服务 技术支持 采购服务

【经验】EFR32BG系列蓝牙SoC之低功耗测试操作指导

很多的蓝牙设备都是电池供电的,因此对蓝牙SoC功耗水平测试与评估就非常有必要。Silicon Labs公司提供的蓝牙评估板底板,都带有电流功耗测试功能,搭配Simplicity studio v4开发平台的energy profile功耗测试上位机,非常容易测试出EFR32BG系列蓝牙SoC的功耗水平。我们详细介绍功耗测试需要的软件和硬件以及测试操作。本文就将具体进行说明。

2020-02-20 -  设计经验 代理服务 技术支持 采购服务

【经验】EFR32BG22系列蓝牙SOC电池电压与VDD供电电压检测ADC的方法

EFR32BG22作为低功耗蓝牙SOC方案,经常应用于电池供电的方案中,一般采用内部的ADC作为采集通道,内部的输入源作为输入接口,来测试VDD供电电压。本文将讲解电池电压与VDD供电电压检测ADC的方法。

2020-11-28 -  设计经验 代理服务 技术支持 采购服务

手机稳定器上需要一颗射频性能好的蓝牙SoC,要求功耗越低越好,请帮忙推荐

芯科科技的低功耗蓝牙SoC芯片EFR32BG22C112应该可以满足你的要求,评估资料:https://www.sekorm.com/doc/2682286.html

2023-06-07 -  技术问答 代理服务 技术支持 采购服务

【经验】Silicon Labs的蓝牙SoC EFR32BG22如何进行在线的OTA升级?

Silicon Labs的蓝牙SOC EFR32BG目前已经能够支持到蓝牙5.2,工艺升级后的EFR32BG22的功耗能够达到接收4.1mA,0dbm发射功耗3.6mA,休眠功耗低至1.4uA,如此低的功耗,能够大幅延长蓝牙设备的电池续航时间。本文介绍蓝牙SoC EFR32BG22如何进行在线的OTA升级。

2020-06-07 -  设计经验 代理服务 技术支持 采购服务

【应用】EFR32BG22蓝牙SoC用做CGM连续血糖仪主控,单芯片集成MCU和蓝牙5.2

CGM连续血糖仪为了用户体验更好,要做到小而轻,续航时间长,可以通过手机蓝牙连接获取血糖测量数据。Silicon Labs的蓝牙SoC EFR32BG22在单芯片中集成了MCU和蓝牙5.2,可以作为CGM的主控芯片并实现蓝牙数据收发,有丰富的外设。

2021-07-20 -  应用方案 代理服务 技术支持 采购服务

在开发一款带蓝牙的智能跳绳,有没有合适的蓝牙SoC推荐,性能与NRF52832相当,能满足国外的认证要求。

Silicon labs推荐的EFR32BG22C112应该可以满足您的需求,目前在智能跳绳上也有成功应用案例,详细参考资料:https://www.sekorm.com/doc/2682286.html

2023-06-05 -  技术问答 代理服务 技术支持 采购服务

【经验】蓝牙SoC芯片EFR32BG22如何实现蓝牙串口透传功能?

在使用Silicon Labs的蓝牙SoC芯片EFR32BG22做蓝牙模块时,一般需要实现串口透传功能,但BLE不支持SPP功能,要实现这个功能只能用户手动增加相关的服务。本文介绍在EFR32BG22上实现蓝牙串口透传功能(SPP)的方法 。

2020-12-31 -  设计经验 代理服务 技术支持 采购服务

【经验】蓝牙SoC EFR32BG22的高精度ADC配置步骤与注意事项

Silicon Labs的EFR32BG22系列蓝牙SoC内部集成高精度ADC功能,采用内部1.21V作为Vref,ADC真实有效位数可达13.5bit,使用外部1.25V基准源作为Vref,精度可达14.3bit。本文介绍ADC配置相关步骤以及注意项目。

2020-11-04 -  设计经验 代理服务 技术支持 采购服务

【经验】蓝牙SoC EFR32BG22增加Button功能并发送Notify数据包的方法

本文以Silicon Labs蓝牙SoC EFR32BG22的Thunderboard模块为例,介绍如何使用Simplicity Studio v5软件在蓝牙soc_empty工程中添加Button功能,并向手机发送Notify数据包的方法。

2021-03-14 -  设计经验 代理服务 技术支持 采购服务

【经验】蓝牙SoC EFR32BG22芯片如何设置蓝牙广播时间与扫描时间?

Silicon Labs的蓝牙SoC EFR32BG22芯片具有较低的工作电流,在软件设计时还可以通过延长广播间隔时间来降低系统的功耗,但在实际使用中会遇到广播时间设置的较长时主机无法扫描到设备的情况,下面就介绍如何合理的设置蓝牙的广播时间。

2020-12-31 -  设计经验 代理服务 技术支持 采购服务

【经验】芯科蓝牙SoC EFR32BG22如何将Bootloader去掉以节省flash空间?

使用SILICON LABS的EFR32BG22蓝牙SoC进行开发时,对于一些无须OTA升级的应用,我们可以把bootloader去掉以获取更大的编程应用空间,本文将指导如何把bootloader去掉。

2023-03-27 -  设计经验 代理服务 技术支持 采购服务
展开更多

电子商城

查看更多

品牌:SILICON LABS

品类:Wireless Gecko SoC

价格:¥8.1764

现货: 97,329

品牌:SILICON LABS

品类:开发工具

价格:¥331.7858

现货: 1

品牌:SILICON LABS

品类:Bluetooth SoCs

价格:

现货: 0

品牌:SILICON LABS

品类:Bluetooth SoCs

价格:

现货: 0

品牌:SILICON LABS

品类:Bluetooth SoCs

价格:

现货: 0

品牌:SILICON LABS

品类:Bluetooth SoCs

价格:

现货: 0

品牌:SILICON LABS

品类:Bluetooth SoCs

价格:

现货: 0

品牌:SILICON LABS

品类:Bluetooth SoCs

价格:

现货: 0

品牌:SILICON LABS

品类:Bluetooth SoCs

价格:

现货: 0

品牌:SILICON LABS

品类:Bluetooth SoCs

价格:

现货: 0

现货市场

查看更多

品牌:SILICON LABS

品类:Switch Hall Effect Magnetic Position Sensor

价格:¥2.2924

现货:126,000

品牌:SILICON LABS

品类:Light Sensor

价格:¥20.3400

现货:28,003

品牌:SILICON LABS

品类:8位MCU

价格:¥4.9000

现货:12,000

品牌:SILICON LABS

品类:Mixed-Signal MCU

价格:¥10.1700

现货:10,000

品牌:SILICON LABS

品类:8 BIT MCU

价格:¥3.7900

现货:3,451

品牌:SILICON LABS

品类:EFR32MG21A020F512IM32-B

价格:¥14.5550

现货:1,874

品牌:SILICON LABS

品类:Wireless SoC

价格:¥15.1400

现货:1,455

品牌:SILICON LABS

品类:Mixed-Signal MCU

价格:¥11.1200

现货:1,201

品牌:SILICON LABS

品类:8位MCU

价格:¥56.0000

现货:550

品牌:SILICON LABS

品类:8 BIT MCU

价格:¥16.8500

现货:550

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

服务

查看更多

高频/平板/电流互感变压器定制

可定制变压器的常规尺寸从EE4.4到ETD49不等,温度范围:-40℃~150℃。自动化产品的起订数量:20KPCS,其它定制产品无起订量要求。

提交需求>

内置FPC天线定制

可定制内置FPC天线的频率尺寸等参数,频率范围315MHz、433MHz、470MHz、868MHz、915MHz,2.4GHz、5.8GHz、2G(GSM)、3G、4G、5G、WIFI、蓝牙、LoRa、NB-IoT多频段可选。

最小起订量: 1000 提交需求>

查看更多

授权代理品牌:接插件及结构件

查看更多

授权代理品牌:部件、组件及配件

查看更多

授权代理品牌:电源及模块

查看更多

授权代理品牌:电子材料

查看更多

授权代理品牌:仪器仪表及测试配组件

查看更多

授权代理品牌:电工工具及材料

查看更多

授权代理品牌:机械电子元件

查看更多

授权代理品牌:加工与定制

世强和原厂的技术专家将在一个工作日内解答,帮助您快速完成研发及采购。
我要提问

954668/400-830-1766(工作日 9:00-18:00)

service@sekorm.com

研发客服
商务客服
服务热线

联系我们

954668/400-830-1766(工作日 9:00-18:00)

service@sekorm.com

投诉与建议

E-mail:claim@sekorm.com

商务合作

E-mail:contact@sekorm.com

收藏
收藏当前页面