【经验】EFR32BG13系列在SOC模式下使用内部flash进行固件升级的方法

2020-12-06 世强
低功耗蓝牙SoC,EFR32BG13P632F512GM48,EFR32BG13,Silicon Labs 低功耗蓝牙SoC,EFR32BG13P632F512GM48,EFR32BG13,Silicon Labs 低功耗蓝牙SoC,EFR32BG13P632F512GM48,EFR32BG13,Silicon Labs 低功耗蓝牙SoC,EFR32BG13P632F512GM48,EFR32BG13,Silicon Labs

本文根据笔者自身使用SILICON LABS低功耗蓝牙SoC EFR32BG13P632F512GM48进行开发的经历,从函数调用及部分代码分析的角度,总结出EFR32BG13系列在SOC模式下使用内部flash进行固件升级的方法。以使有这方面功能开发需求的工程师们可以有设计参考依据。


首先,介绍一下SOC模式下固件升级拷贝的流程。如下图所示:

1,升级的镜像GBL文件需要由当前运行的应用程序将之存储在预先指定的位置上并进行文件完整性校验。

2,校验后通知并跳转至main bootloader,main bootloader将之前搬运的GBL文件经过简单解压,提取出真正的有效部分将之覆盖拷贝到原有的应用程序位置。

3,转跳新的应用程序并运行。

至此一次完整的升级过程宣告完成。


原理介绍完之后,接下来介绍实际操作流程。想要在SOC模式下使用bootloader进行固件升级,首要做的就是将bootloader相应功能的源码添加到工程里面。因为Simplicity Studio创建的工程,默认是不包含这部分源码的。

以笔者开发环境为例,bootloader相应功能的源码的路径为C:\SiliconLabs\SimplicityStudio\v4_2\developer\sdks\gecko_sdk_suite\v2.7\platform\bootloader\api

将api目录的代码拷贝到工程中:

将目录下的源码添加进工程中,并alt+enter打开当前工程的属性设置,在GNU ARM C Compiler的Includes下添加刚刚我们复制源码文件的路径:

至此,bootloader的功能源码已经移植完成,接下来我们要在我们的应用程序工程中实现升级过程。

函数基本执行流程如下图:

上图步骤分析如下:

1,通过调用bootloader_init()初始化Gecko bootloader的运行环境。

2,通过调用bootloader_eraseStorageSlot()擦除内部Flash下载区域。

3,接收GBL文件数据,可以通过BLE接收,也可以通过UART接收,应用程序通过调用bootloader_writeStorage()将接收到的字节写入内部flash指定的下载区域地址上。

这里需要说明的是gbl文件的创建不随工程编译进行,是在工程目录下运行create_bl_files.bat的结果。有关生成的gbl文件的说明,请参阅SiliconLabs管网相关资料。

4,应用程序可以通过调用bootloader_verifyImage()来验证接收到的GBL文件的完整性。

这里有一点值得注意的是,进入这个函数,会定义一个384个字节临时大数组,这可能引起栈数据的溢出,工程师需要格外小心。

5,重新启动之前,请调用bootloader_setImageToBootload()以指定存储新GBL镜像的solt ID

6,通过调用bootloader_rebootAndInstall()指示Gecko bootloader重新启动并执行更新过程

7,重新启动后,系统会将CPU的执行权交给bootloader完成固件的搬运更新。

 

值得注意的是,以上步骤中涉及的函数底层的执行,并不是在本工程中实现的,而是由编译时指定的bootloader相应的绝对地址转跳实现的,因此,函数的正确执行的前提是我们已经正确定制并烧录了我们做需要的Bootloader镜像。


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

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

相关研发服务和供应服务

评论

   |   

提交评论

全部评论(0

暂无评论

相关推荐

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

EFR32BG22是Silicon Labs公司主打的低功耗蓝牙SoC系列,对于新手工程师来说,如何控制好功耗,以延长电池类产品的寿命,有很多需要关注的地方。本文将从硬件和代码底层两方面分析SoC低功耗实现的关键点。

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

【经验】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联手Unikie拓展边缘物联网应用,强化蓝牙定位解决方案性能

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

2024-09-04 -  原厂动态 代理服务 技术支持 采购服务

测量SiWx917 Wi-Fi SoC的功耗和吞吐量

描述- 本文介绍了SiWx917 Wi-Fi 6 + 低功耗蓝牙SoC的功耗和吞吐量特性。文章详细阐述了SiWx917的功耗优化设计,包括低功耗模式、动态电压/频率缩放和智能电源管理等,并通过实际测试数据展示了其超低功耗性能。此外,文章还介绍了SiWx917在Wi-Fi摄像头设计中的应用优势,包括低功耗、长电池寿命和易于开发等特点。

型号- SIWX917

2024/8/7  - SILICON LABS  - 技术文档 代理服务 技术支持 采购服务

【IC】SiWx917M为Wi-Fi物联网设备提供大内存、小尺寸和低功耗三者兼具的良方

微小的物联网设备尺寸和有限的硬件资源往往难以满足日益增长的内存需求。本文将介绍物联网设备实际需要多少内存,以及SiWx917M Wi-Fi 6 SoC如何响应物联网开发人员对更多内存的需求。

2024-11-08 -  产品 代理服务 技术支持 采购服务

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

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

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

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

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

2023-08-10 -  原厂动态 代理服务 技术支持 采购服务

SiWx917 Wi-Fi 6蓝牙低功耗无线SoC,助力智能手表功耗和安全性能提升

SiWx917是Silicon Labs推出的一款支持Wi-Fi 6、蓝牙LE 5.4 和低功耗特性的无线SoC(系统级芯片),专为物联网(IoT)和可穿戴设备设计。这款芯片不仅拥有强大的计算能力和先进的无线连接功能,还具有低功耗和小尺寸的优势,为智能手表市场带来了全新的技术突破。

2024-10-23 -  应用方案 代理服务 技术支持 采购服务

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

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

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

【经验】低功耗蓝牙SoC芯片EFR32BG系列的UART串口通信参考代码与解析

EFR32BG是Silicon Labs公司的高性能低功耗蓝牙SoC芯片。支持蓝牙5.0、5.1协议和蓝牙Mesh协议,发射电流3.5mA@0dbm,接收电流仅有2.6mA。广泛用于智能门锁,蓝牙门禁系统,照明系统,智能家居;在开发EFR32BG蓝牙SoC的代码过程中,经常需要用到uart通信,本文详细介绍如何找到参考代码以及代码解析。

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

Silicon Labs的SiWx917低功耗无线SoC,其低功耗WiFi保活的功能,显著降低智能门锁的能耗

SiWx917是Silicon Labs推出的一款支持Wi-Fi 6和蓝牙LE双模连接的低功耗无线SoC。它集成了先进的无线技术、强大的处理能力和高效的能耗管理,非常适合智能门锁对稳定性、低功耗和数据安全有着严格要求的设备。特别是SiWx917的低功耗WiFi保活的功能,在低功耗睡眠模式下,依然可以保持WiFi网络处于连接状态。

2024-10-18 -  应用方案 代理服务 技术支持 采购服务

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

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

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

芯科SiWx917低功耗WiFi 6+BLE SoC用于IPC网络摄像机,支持低功耗WiFi保活功能

一些电池供电的IPC在实际应用中,往往面临功耗高、网络连接慢以及处理能力有限等挑战。SiWx917 SoC,Silicon Labs超低功耗Wi-Fi 6和蓝牙 BLE 5.4无线SoC芯片,非常适合应用。

2024-10-17 -  应用方案 代理服务 技术支持 采购服务

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

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

2024-09-03 -  原厂动态 代理服务 技术支持 采购服务
展开更多

电子商城

查看更多

品牌:SILICON LABS

品类:BLE SoC

价格:¥22.9487

现货: 5,000

品牌:芯海

品类:蓝牙芯片

价格:¥3.3334

现货: 77,827

品牌:芯海

品类:低功耗蓝牙SOC芯片

价格:¥6.1334

现货: 5,951

品牌:芯海

品类:低功耗蓝牙SOC芯片

价格:¥6.4706

现货: 5,151

品牌:芯海

品类:蓝牙芯片

价格:¥4.6667

现货: 990

品牌:芯海

品类:低功耗蓝牙SOC芯片

价格:¥3.5334

现货: 240

品牌:桃芯科技

品类:低功耗蓝牙5.3 SOC

价格:¥4.7643

现货: 120

品牌:芯海

品类:低功耗蓝牙SOC芯片

价格:¥2.8236

现货: 100

品牌:桃芯科技

品类:低功耗蓝牙5.3 SOC

价格:¥4.9286

现货: 64

品牌:OnMicro

品类:蓝牙SoC

价格:¥4.0700

现货: 50

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

现货市场

查看更多

品牌: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

品类:Wireless SoC

价格:¥15.1400

现货:1,455

品牌:SILICON LABS

品类:Mixed-Signal MCU

价格:¥11.1200

现货:1,201

品牌:SILICON LABS

品类:8 BIT MCU

价格:¥16.8500

现货:550

品牌:SILICON LABS

品类:8位MCU

价格:¥56.0000

现货:550

品牌:SILICON LABS

品类:8位MCU

价格:¥5.1900

现货:396

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

服务

查看更多

蓝牙射频及通信协议测试

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

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

大电流低功耗电感定制

可定制电感最大电流100A,尺寸最小7 x 7 x 3.0mm到最大35 x 34 x 15.5 mm,工作频率100KHZ ~ 2MHZ,感值范围:0.15 ~ 100uh;支持大功率电感,扁平线电感,大电流电感,高频电感,汽车电感器,车规电感,一体成型电感等定制。

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

查看更多

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

查看更多

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

查看更多

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

查看更多

授权代理品牌:电子材料

查看更多

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

查看更多

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

查看更多

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

查看更多

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

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

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

收藏
收藏当前页面