WCH蓝牙空中升级(BLE OTA)1
需积分: 0 90 浏览量
更新于2022-08-04
1
收藏 366KB PDF 举报
### WCH蓝牙空中升级(BLE OTA)关键技术解析
#### 一、概述
WCH BLE系列芯片支持多种固件升级方式,其中包括空中无线升级(OTA)和有线升级两种主要方式。OTA(Over The Air)是一种远程无线固件升级技术,通过这种方式可以在不接触设备的情况下完成固件更新,极大地提高了维护效率并减少了成本。
#### 二、WCH BLE SDK DFU工作原理详解
##### 2.1 方式一 DFU 说明(无线升级)
**备份升级方式**适用于Flash资源充足的场景。该方式的优点是可以同时升级APP和LIB部分,但缺点是需要较大的Flash空间支持。具体来说:
- **工作流程**:设备上电后优先运行IAP程序,之后跳转至APP执行用户程序。APP文件独立且完整,可通过无线接收完整的OTA备份升级文件。接收完成后,通过软复位进入IAP程序阶段,IAP将OTA升级文件从备份区复制到APP应用程序区,并最终跳转回升级后的APP运行新的固件。
- **固件编译**:升级固件通常带有LIB编译(LIB约90K)。
- **示例**:EVT\EXAM\BLE\BackupUpgrade_OTA 提供了具体的升级示例。在此示例中,首先读取dataflash OTA_DATAFLASH_ADD位置的值,并更新当前的flag标志为APP。接着,在Peripheral.c文件中,通过几个关键升级函数完成对接收的OTA包的处理,包括编程、擦除、校验和结束指令等步骤。
- **函数调用**:在函数注册Peripheral_OTA_IAPProfileCBs中包含OTA_IAPWriteData()函数,用于处理接收的数据。Rec_OTA_IAP_DataDeal()函数进一步处理这些数据,直至升级完成。
- **工具与文件**:方式一DFU包含三个文件:JumpIAP、APP和IAP。其中:
- JumpIAP:跳转至IAP的代码。
- APP:用户功能代码,实现产品功能和升级功能。
- IAP:编程升级APP的代码。
- **烧录说明**:选择JumpIAP、APP和IAP三个文件,使用ISP工具将其合并为一个BIN文件后进行下载。
##### 2.2 方式二 DFU 说明(无线升级)
**升级方式二**适用于Flash资源相对有限的情况,其特点是采用APP+IAP+LIB的方式进行固件升级。
- **工作流程**:升级过程中,系统需从应用模式切换至BootLoader/IAP模式,由BootLoader/IAP负责新固件的下载工作。在整个升级过程中,应用程序的功能无法使用。
- **示例**:EVT\EXAM\BLE\OnlyUpdateApp_XXX 提供了相关的示例代码。这些示例展示了如何在不中断应用程序运行的前提下完成固件的无线升级。
- **功能特性**:相较于方式一,方式二更适用于资源受限的场景,但其升级过程更为复杂,需要在升级期间暂停应用程序的功能。
#### 三、总结
WCH BLE系列芯片支持多种固件升级方式,包括通过无线(OTA)或有线方式进行升级。其中,方式一DFU采用备份升级的方式,适用于Flash资源充足的场景,能够同时升级APP和LIB部分;而方式二DFU则更适合于资源受限的场景,尽管升级过程较为复杂。开发者可以根据自身需求和资源情况选择合适的升级方式,以确保产品的稳定性和可维护性。
爱吃番茄great
- 粉丝: 27
- 资源: 296
最新资源
- C#+wpf界面源码框架,总结运动控制路径算法而写,控件源码+模板源码,分享给想入行的朋友们,引你快速入行,大神略过,可用于激光切割,雕刻机,分板机,点胶机,插件机等,本模板主要考虑到各运动控制硬件不
- 四轮独立驱动电动汽车,四轮侧偏刚度估计,四电机模型,carsim输出真实值,ckf估计侧偏刚度,由s函数编写
- 光储直流微电网simulink仿真模型 双向变器 ,独立光伏系统能量管理,最大功率点跟踪mppt 在传统的独立光伏发电系统中,蓄电池直接与直流母线相连接,其充放电电流不能得到有效的控制,当负载突变时
- simplorer与Maxwell电机联合仿真,包含搭建好的Simplorer电机场路耦合主电路与控制算法(矢量控制SVPWM),包含电路与算法搭建的详细教 仿真文件可复制,可将教程中的电机模型成自己
- 51单片机和ADC0808数字电压表,包括程序源码和protues仿真,pcb等,程序源码注释详细,适合单片机开发人员和新手
- 剪板伺服送料机,程序,三菱,昆仑通态,送料机程序,PLC多段数据不同,可任意调节A段B段c段长度,并定长切断 程序能存储5段工件数据,使用调出非常方便 PLC程序有台达和三菱FX ,触摸屏程序有昆
- 基于等效油耗极小值算法(ecms)的并联式混合动力汽车能量管理策略一份 1.基于simulink建立车辆及控制系统模型 2.车辆为车 3.同时对于功率流分配和使用档位进行优化 4.使用二分法获得最优等
- FPGA多通道同步AD采集 AD7606 8通道16位高精度同步采集系统开发,采样率200KSPS,采集数据支持DDR3缓存、串口发送、USB2.0上传、千兆以太网上传等 支持基于FPGA的数字信
- 微电网两阶段鲁棒优化经济调度程序 关键词:微网优化调度 两阶段鲁棒 CCG算法 经济调度 参考文档:《微电网两阶段鲁棒优化经济调度方法》 仿真平台:MATLAB YALMIP+CPLEX 主要内容:构
- 基于粒子群算法的电动汽车充电站最优选址和定容 关键词:选址定容 电动汽车 充电站位置 参考文档:《电动汽车充电站的最优选址和定容》参考选址定容模型部分; 仿真平台:MATLAB 主要内容:代
- 西门子Smart200PLC一拖二热站自控系统程序,2个循环泵,2个补水泵,循环泵与补水泵采用一用一备,按设置时间自动切,硬件:西门子200smart sr30 PLC+昆仑通泰触摸屏, 程序有完整注
- 基于时间序列预测的组合模型,CNN-LSTM-Attention、CNN-GRU-Attention的深度学习神经网络的多特征用电负荷预测 关于模型算法预测值和真实值对比效果如下图所示,同时利用R2
- 电力系统静态稳定性仿真Matlab编程 simulink仿真 1.用Matlab编程,把转子运动方程(摇摆方程)在运行点处线性化,采用小信号分析法,对线性化之后状态方程的系数矩阵求解特征值,根轨迹,通
- 霍尔foc 性能超过方波 霍尔估算代码调理很清晰 正反转、迅速启动 软件和教程资料
- TMS320F28335主控+EtherCAT伺服方案
- MPC模型预测控制 通过降压变器对比了MPC和PI控制的性能 动态响应非常快,且无过冲电压 ~