【经验】低功耗蓝牙SoC EFR32BG22系列如何从软硬件两方面实现低功耗设计?

2021-03-16 世强
低功耗蓝牙SoC,EFR32BG22,Silicon Labs 低功耗蓝牙SoC,EFR32BG22,Silicon Labs 低功耗蓝牙SoC,EFR32BG22,Silicon Labs 低功耗蓝牙SoC,EFR32BG22,Silicon Labs

EFR32BG22SILICON LABS公司主打的低功耗蓝牙SoC系列,以优异的性能和低廉的价格一度称霸市场。但是对于新手工程师来说,如何控制好功耗,以延长电池类产品的寿命,有很多需要关注的地方。本文将从硬件和代码底层两方面分析SoC低功耗实现的关键点。

 

首先,我们先来看一下SOC外部电路设计,为了获得更低的功耗有两点需要注意:

1,使用内部DC-DC可以使功耗降低

下图是同样在使用外部38.4MHz并在内部Flash执行代码的情况下,不使用内部DC-DC和使用内部DC-DC的电流消耗的区别。

(1)不使用内部DC-DC↓

(2)使用DC-DC↓


2,低速时钟源的选取也会影响功耗

下图是在使用外部32.768kHz晶振和使用内部LFRCO (使用BLE时候要把LFRCO置于Precision mode)的电流消耗区别。

 

使用外部32.768kHz↓

使用内部LFRCO↓


接下来简述一下EFR32BG22支持5种电源模式EM0~EM4,其中EM1~EM4是省电模式。

可以看到,上图是EM0~EM4各种模式下所支持的设备,以颜色区分。可见不同省电模式下所能使用的外设还是有很大区别的:例如,EFR32BG22是低功耗蓝牙SOC,蓝牙堆栈运行时始终需要RAM和RTCC。RAM保留应用程序数据,而RTCC确保在打开通信窗口且必须接收/发送数据包时唤醒设备。RAM需要EM3或更高版本才能工作,而RTCC需要EM0 / EM1 / EM2才能通过LFCLK工作。这意味着 ,没有关闭蓝牙功能的特殊要求,则最多可以将SOC置于EM2模式,以维持蓝牙的功能。

 

另外,当蓝牙功能打开时需要注意:

1,在处理器上运行和/或无线电正在接收/发送时,需要EM0模式。

2,如果没有运行的任务和非无线电通信需要的模式,但一些外设需要EM1模式(例如USART)。

3,在其他情况下,设备是可以进入EM2模式。

 

接下来我们从代码角度分析一下如何控制SOC低功耗

蓝牙协议栈本身经过了针对低功耗优化的设计,如果启用了深度睡眠,SOC会在 EM0模式 和 EM2模式之间切换;如果禁用深度睡眠,则SOC会在EM0模式 和 EM1模式之间切换 。

 

要在使用蓝牙协议栈的C工程中启用深度睡眠,需要将gecko_configuration结构中的.config_flags成员定义为SLEEP_FLAGS_DEEP_SLEEP_ENABLE 

另外,基于蓝牙堆栈的应用程序的默认代码模板如下所示:

while(1)

{

    evt = gecko_wait_event();

 

    switch(BGLIB_MSG_ID(evt->header))

    {

          //handling of different stack events

    }

}

上述代码中,函数gecko_wait_event()调用会自动将SOC置于EM1 / EM2模式,并设置定时器以在需要时将其唤醒。仅当引发堆栈事件(例如,连接建立事件)时,该函数才返回。此后,应用程序可以处理事件并执行其他任务。

 

但是,有时候即使没有蓝牙事件,应用程序也需要运行,例如定期轮询某些外围设备的状态。这就需要唤醒设备重新产生协议栈事件使gecko_wait_event()返回。这可以通过两种方式实现:

1,使用gecko_cmd_hardware_set_soft_timer()在堆栈中设置软件计时器 。计时器到期时唤醒设备,生成堆栈事件(evt_hardware_soft_timer),然后从gecko_wait_event()返回。

2,设置中断,并使用gecko_external_signal(signal)从中断处理程序触发外部堆栈事件 。强制堆栈引发一个新事件(evt_system_external_event)。并从gecko_wait_event()返回。

 

值得注意的是睡眠模式是初始化协议栈的时候就定义好的,因此运行过程中是不能够更改的,但是有些时候还是需要暂时使SOC不要进入睡眠模式的。例如,使用USART首发数据时,必须禁用深度睡眠才能使USART控制器正常工作并能够接收消息。通过使用睡眠驱动函数SLEEP_SleepBlockBegin(sleepEM2)可以暂时禁用EM2模式 。要重新启用EM2模式,可以使用 SLEEP_SleepBlockEnd(sleepEM2)。当EM2模式被禁用时,协议栈将临时在EM0和EM1之间切换。

这里需要注意,如上图,睡眠驱动函数底层是通过计数器方式实现的,因此上SLEEP_SleepBlockBegin()/ SLEEP_SleepBlockEnd()的调用必须成对调用。否则会出现进不了或退不出睡眠的故障现象。这里需要工程师在编写程序的时候严格注意。

 

蓝牙协议栈在EM3模式下不起作用。但是,如果没有蓝牙连接处于活动状态,并且一段时间内不需要广告或扫描,则可以暂时将SOC置于EM3模式以节省能量。EM3模式在协议栈默认情况下时是不支持的,但是可以通过调用SLEEP_SleepBlockEnd(sleepEM3)来实现 。协议栈中对SLEEP_Sleep()的下一次调用将使SOC进入EM3模式,需要SOC从EM3模式退出可以使用中断将之唤醒。在中断处理程序中调用 SLEEP_SleepBlockBegin(sleepEM3)以使堆栈再次正常工作。


但是请注意,虽然EM2模式与EM1模式相比电流消耗降低了许多,但在EM3模式下,电流消耗仅比EM2模式降低了十分之一μA。因此除非必要,作者不建议为了这一点点功耗而开启EM3模式,这会大幅提高代码流程的复杂度。

 

最后我们再来说一下EM4模式,在这种模式下,几乎所有设备都被关闭,电流消耗仅为几百纳安。但是,要将设备从此状态唤醒,需要所有外设的重置,包括时钟源的恢复。并且没有RAM数据被保留,这无异于重启!所以如果笔者建议如果SOC的电源可以被控制,则可以直接关闭SOC电源,来达到省电的目的,没有进入EM4模式的必要。

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

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

评论

   |   

提交评论

全部评论(0

暂无评论

相关推荐

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

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

设计经验    发布时间 : 2020-11-28

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

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

设计经验    发布时间 : 2020-02-20

【经验】Silicon Labs 蓝牙SOC EFR32BG22的Jlink接口连接问题解析

EFR32BG22是Silicon Labs公司推出的低功耗、低成本蓝牙SOC。EFR32BG22采用Cortex-M33内核,使用Jlink进行仿真调试、程序下载。出现错误提示,并且多次连接后可以正常连接,本文介绍其错误原因及其解决办法。

设计经验    发布时间 : 2021-10-19

选对了针对医疗和可穿戴设备的小型蓝牙芯片,设计毫不费力!

芯科科技一直为医疗设备和可穿戴设备制造商提供小型、专为应用而优化的蓝牙解决方案。以下展示了芯科科技提供的八款小型蓝牙芯片以及快速比较表,可以帮助您为应用程序选择最佳蓝牙解决方案!

应用方案    发布时间 : 2024-02-04

Silicon Labs联手Unikie拓展边缘物联网应用,强化蓝牙定位解决方案性能

Silicon Labs(芯科科技)与物联网设计伙伴Unikie近期针对边缘智能(Edge AI)和物联网结合的应用强化合作。Unikie拥有近600名嵌入式系统工程专家,可帮助汽车、医疗保健、工业和智能建筑领域的设备OEM充分利用芯科科技的物联网无线连接、低功耗蓝牙(Bluetooth LE)和应用于边缘智能的人工智能和机器学习(AI/ML)解决方案。

厂牌及品类    发布时间 : 2024-09-04

洞悉标准化蓝牙ESL应用潜力,芯科科技全系列低功耗、高性能蓝牙SoC和模块现已支持最新蓝牙5.4版本

随着蓝牙标准的推陈出新,Silicon Labs(亦称“芯科科技”)也持续升级蓝牙解决方案,全系列低功耗、高性能蓝牙SoC和模块现已支持最新蓝牙5.4版本,以满足开发人员的需求。

厂牌及品类    发布时间 : 2023-08-10

基于芯科科技BG2x SoC的蓝牙信道探测和能量收集参考设计演示 – 尽在芯科科技/深圳物联网展

Silicon Labs(亦称“芯科科技”)在8月28至30日举办的“2024年深圳物联网展(IOTE Shenzhen)”展出现下最火的蓝牙信道探测(Channel Sounding)和能量收集(Energy Harvesting)参考设计,从而推动更多物联网创新应用。芯科科技的现场全面展示其BG2x低功耗蓝牙SoC和模块系列在蓝牙信道探测和能量收集技术方面的最新进展。

厂牌及品类    发布时间 : 2024-09-03

完美结合无线连接、人工智能和安全性的智能家居解决方案

智能家居应用正在快速发展,其中推动智能设备的发展关键因素在于易于使用,而实现这一目标的最佳方法,便是让设备通过人工智能和机器学习技术进行自我思考。本文将为您介绍人工智能将如何强化智能家居设备的功能,以及由芯科科技(Silicon Labs)所推出的解决方案,将如何增强智能家居设备的功能性与安全性。

应用方案    发布时间 : 2024-06-23

【经验】Silicon Labs低功耗蓝牙SoC EFR32BG22如何通过GPIO唤醒UART通信

SiliconLabs的低功耗蓝牙SoC EFR32BG22系列芯片以极低的功耗和相对低廉的价格,达到了性价比的极致。目前大家开发EFR32BG22,大部分都会使其工作在休眠状态,一般会先用一个GPIO唤醒EFR32BG22,通过一定的条件使EFR32BG22停止休眠,再去串口通信,通信完成后,再进入休眠这样的流程。本文介绍下如何使用Silicon Labs的Bluetooth SDK实现该功能。

设计经验    发布时间 : 2020-07-03

【应用】亚米级、发射电流仅3.5mA@0dBm的蓝牙AOA室内定位系统方案

本方案采用Silicon Labs的低功耗蓝牙SoC芯片EFR32BG22,并搭配EPSON的高精度晶体38.4MHz无源晶体Q22FA1280041500,圣邦微SGMICRO的低噪声LDO SGM2036器件,实现亚米级、可探测方向、电池使用时间长的蓝牙AOA室内定位系统设计。

应用方案    发布时间 : 2020-04-11

BG24蓝牙SoC具备低功耗、小型化等特性,为CoreHW提供蓝牙RTLS的先进解决方案

Silicon Labs(亦称“芯科科技”)的BG24蓝牙SoC具备低功耗、小型化等特性,并支持蓝牙定位技术包括蓝牙到达角(AoA)和蓝牙信道探测(Channel Sounding),为CoreHW公司提供了最先进的实时定位服务(RTLS) 解决方案,以开发出创新的CoreTag和CoreLocator定位应用产品。

应用方案    发布时间 : 2024-06-21

【经验】Silicon Labs蓝牙SoC EFR32BG22调试接口锁定后如何解锁

Silicon Labs公司推出的蓝牙芯片EFR32BG22,支持最新的Bluetooth5.2标准及蓝牙MESH网络功能。具有同类最优的超低传输和接收功率和高性能、低功耗的组合提供业界领先的低功耗特性。使用EFR32BG22时,如果Jlink接口被锁定,需要在DOC下操作,本文介绍具体操作步骤。

设计经验    发布时间 : 2021-10-09

【经验】基于无线蓝牙SoC EFR32BG22/EFR32MG22中低功耗串口功能唤醒相关操作步骤

对于Silicon Labs无线蓝牙SoC EFR32BG22/EFR32MG22的低功耗设计,通过需要通过在进入低功耗之后,需要进行唤醒,尤其在进行NCP设计时,可以通过串口指令来实现唤醒。EFR32BG22/EFR32MG22提供低功耗串口设计–EUASRT,支持在EM2模式下进行唤醒并接收数据。

设计经验    发布时间 : 2021-11-21

芯科科技BG2x系列蓝牙SoC引领可穿戴设备创新,打造AI健康生活新纪元

随着人们对个人健康和智能生活的追求不断升温,可穿戴设备市场呈现出蓬勃发展的态势。在这个充满机遇与挑战的领域,Silicon Labs(亦称“芯科科技”)凭借其深厚的技术积累和敏锐的市场洞察,成为了行业的佼佼者。近日,芯科科技的家居和生活业务部可穿戴和生活业务经理Pranay Dixit参与了EEPW电子产品世界的访谈,就可穿戴设备市场的现状、公司战略以及技术创新等方面进行了深入探讨。

应用方案    发布时间 : 2024-04-30

展开更多

电子商城

查看更多

只看有货

品牌:SILICON LABS

品类:Wireless Gecko SoC

价格:¥8.1764

现货: 111,379

品牌:芯海

品类:蓝牙芯片

价格:¥3.3334

现货: 77,830

品牌:芯海

品类:低功耗蓝牙SOC芯片

价格:¥3.5334

现货: 7,470

品牌:芯海

品类:低功耗蓝牙SOC芯片

价格:¥6.1334

现货: 5,951

品牌:芯海

品类:低功耗蓝牙SOC芯片

价格:¥6.4706

现货: 5,151

品牌:芯海

品类:蓝牙芯片

价格:¥4.6667

现货: 990

品牌:桃芯科技

品类:Bluetooth Low Energy SoC

价格:¥4.7643

现货: 200

品牌:芯海

品类:低功耗蓝牙SOC芯片

价格:¥2.8236

现货: 100

品牌:桃芯科技

品类:Bluetooth Low Energy SoC

价格:¥4.9286

现货: 74

品牌:芯海

品类:蓝牙芯片

价格:¥300.0000

现货: 2

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

现货市场

查看更多

品牌:SILICON LABS

品类:Switch Hall Effect Magnetic Position Sensor

价格:¥2.2924

现货:150,000

品牌:SILICON LABS

品类:Light Sensor

价格:¥20.3400

现货:28,003

品牌:SILICON LABS

品类:Position Sensor

价格:¥3.0897

现货:12,568

品牌:SILICON LABS

品类:8位MCU

价格:¥4.9000

现货:12,000

品牌:SILICON LABS

品类:Mixed-Signal MCU

价格:¥10.1700

现货:10,000

品牌:SILICON LABS

品类:Gecko MCU

价格:¥15.6000

现货:5,353

品牌:SILICON LABS

品类:8 BIT MCU

价格:¥3.7900

现货:3,451

品牌:SILICON LABS

品类:Wireless SoC

价格:¥15.1400

现货:1,455

品牌:SILICON LABS

品类:Mixed-Signal MCU

价格:¥11.1200

现货:1,201

品牌:SILICON LABS

品类:8 BIT MCU

价格:¥16.8500

现货:550

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

服务

查看更多

蓝牙射频及通信协议测试

根据用户的蓝牙模块,使用Bluetooth 蓝牙测试装置MT8852B,测试蓝牙1.0至5.1,包括传输速率、功率、频率、调制和接收机灵敏度,生成测试报告。支持到场/视频直播测试,资深专家全程指导。

实验室地址: 深圳 提交需求>

低功耗测试

提供全面表征产品器件耗电特征及功耗波形、快速瞬态效应、电源优化、表征和仿真测试服务,使用直流电源分析仪测量精度达50µV,8nA,波形发生器带宽100kHz,输出功率300W,示波器200kHz,512 kpts

实验室地址: 深圳/苏州 提交需求>

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

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

收藏
收藏当前页面