"WCH蓝牙空中升级(BLE OTA)1"
本文主要介绍WCH公司针对其BLE系列芯片提供的蓝牙空中升级(BLE OTA)方案,包括三种不同的DFU(Device Firmware Update)方式:方式一、方式二和方式三,分别对应无线升级和有线升级。这些方法允许用户通过无线或有线途径对设备固件进行升级,以实现功能更新、错误修复等目的。
1. **DFU与OTA概述**
- DFU是设备固件升级技术,而OTA是其中一种通过无线方式进行升级的方式,也称为FOTA(Firmware Over The Air)。WCH BLE系列芯片支持无线(方式一、方式二)和有线(方式三)的DFU升级。
- DFU有两种模式:后台式(background)和非后台式。后台式如方式一,允许在升级过程中应用程序正常运行,升级完成后自动切换到新固件。非后台式如方式二,升级期间应用程序无法使用,需通过BootLoader/IAP模式下载并覆盖旧固件。
2. **WCHBLESDKDFU工作原理**
- **方式一DFU(无线升级)**:适用于闪存资源充足的场合,可同时升级APP和LIB。上电时先运行IAP程序,再跳转至APP执行。APP在运行过程中可以接收完整的OTA备份升级文件,软复位后,IAP将备份区的升级文件拷贝到APP区域,最后跳转至新固件执行。这种方式需要额外的LIB编译空间(约90K)。
- **方式二DFU(无线升级)**:非后台式升级,升级过程中APP功能不可用。设备需从应用模式跳入BootLoader/IAP模式,直接覆盖旧固件。此方式仅适用于升级APP部分,不涉及LIB。
- **方式三DFU(有线升级)**:通常通过UART或USB接口进行,具体操作和流程未在摘要中详述。
3. **升级流程**
- 在方式一中,升级流程涉及到读取dataflash的OTA_DATAFLASH_ADD位置的值,更新标志位,并根据程序实例(如EVT\EXAM\BLE\BackupUpgrade_OTA)执行升级步骤。
- 在方式二中,升级过程中整个APP功能暂停,升级结束后直接运行新固件。
4. **应用场景**
- WCH的BLE OTA解决方案适用于物联网设备、智能家居、可穿戴设备等需要远程固件更新的场景,便于产品维护和功能扩展。
5. **注意事项**
- 方式一需要较大的闪存资源,因为它要求固件和备份同时存在。
- 非后台式升级可能影响用户体验,因为设备在升级期间不可用。
以上就是WCH蓝牙空中升级(BLE OTA)的基本概念、工作原理以及不同方式的特性。对于开发基于WCH BLE芯片的无线设备来说,理解这些升级方式至关重要,能够有效地管理和维护设备固件。