Service OTA
Service OTA(Over-The-Air)基于 SLE(Star Flash Low Energy)通信提供设备固件升级数据的服务端接收与确认能力。本模块对外提供 OTA 服务器初始化、升级数据确认发送以及接收数据回调注册三类接口。
模块公共头文件
接口清单
| 接口名称 | 功能简述 |
|---|---|
| sle_ota_service_init | 初始化 SLE OTA 服务器 |
| sle_ota_data_ack | 服务器发送 OTA 数据确认 |
| sle_ota_reg_chan_data_report_cbk | 注册服务端接收 OTA 升级数据的回调 |
Functions
sle_ota_service_init
声明头文件
功能说明
- 初始化 SLE OTA 服务器端,建立升级数据传输所需的服务端运行环境。
- 以入参指定的 server_id 标识本次初始化的 OTA 服务实例。
前置条件
- 依赖关系:依赖 sle_ssap_server.h 提供的 SSAP 服务端能力(头文件注释 @par 依赖)。
入参
| 名称 | 参数类型 | 说明 | 约束取值范围 |
|---|---|---|---|
| server_id | uint8_t | SLE OTA 服务器实例标识 | 0 ~ 255 |
返回值
返回类型:errcode_t
| 返回值 | 文字含义 | 触发场景 |
|---|---|---|
| ERRCODE_SUCC:0 | 成功 | 服务器初始化成功 |
| Other | 其他错误码,参考errcode_t | 执行失败 |
sle_ota_data_ack
声明头文件
功能说明
- 服务端向对端发送 OTA 数据确认信息。
- 通过入参指定待发送数据的长度与内容。
前置条件
- 依赖关系:依赖 sle_ssap_server.h 提供的 SSAP 服务端能力(头文件注释 @par 依赖)。
入参
| 名称 | 参数类型 | 说明 | 约束取值范围 |
|---|---|---|---|
| value_len | uint16_t | 待发送数据的字节长度 | 0 ~ 65535 |
| value | uint8_t * | 指向待发送数据缓冲区的指针 | 不为 NULL |
返回值
返回类型:errcode_t
| 返回值 | 文字含义 | 触发场景 |
|---|---|---|
| ERRCODE_SUCC:0 | 成功 | 数据确认发送成功 |
| Other | 其他错误码,参考errcode_t | 执行失败 |
sle_ota_reg_chan_data_report_cbk
声明头文件
功能说明
- 注册服务端接收 OTA 升级数据的回调函数。
- 当服务端接收到 OTA 升级数据时,通过已注册的回调向应用层上报数据。
- 应用层通过本接口设置数据上报回调。
入参
| 名称 | 参数类型 | 说明 | 约束取值范围 |
|---|---|---|---|
| data_report | sle_ota_chan_data_report | 服务端接收 OTA 升级数据的回调函数指针 | 不为 NULL |
Type definitions
sle_ota_chan_data_report
使用说明
服务端接收 OTA 升级数据时触发的回调函数指针类型,由 sle_ota_reg_chan_data_report_cbk 注册;当服务端接收到 OTA 升级数据时,本回调被调用,将接收到的数据及其长度上报给应用层。回调返回值类型为 void,调用方无需处理返回值。
回调说明:
- 调用时机:服务端通过 SLE 通道接收到 OTA 升级数据时由本模块调用。
- 参数
data_ptr:指向接收到的 OTA 升级数据的指针,数据内容只读。 - 参数
data_len:接收到的 OTA 升级数据的字节长度。 - 返回值处理:回调返回类型为 void,无返回值。
typedef_errcode_t
使用说明
本模块返回类型为 errcode_t 的对外接口的返回值类型。