更新时间:2024-07-30 03:03:29下载pdf
本文介绍如何进行 MCU 升级。何时进行 MCU 升级,由您在涂鸦开发者平台的产品页面配置相关升级选项触发。模组仅作为支持 MCU 升级的数据传输通道,不对数据内容做任何解析。
目前,涂鸦的 MCU 升级支持以下三种升级方式的配置:
MCU 升级流程如下:
NB-IoT 模组发送完所有的升级包,重新发送 01 命令字(查询产品信息)。
MCU 需要在一分钟回复产品信息中的 MCU 软件版本号(升级后的版本号)。版本号需要和在涂鸦开发者平台配置升级的版本号保持一致。
详细升级流程如下所示:

用于传输升级包大小、文件 CRC32 通知。
模组发送
| 字段 | 字节数 | 说明 |
|---|---|---|
| 帧头 | 2 | 0x55aa |
| 版本 | 1 | 0x00 |
| 命令字 | 1 | 0x0C |
| 数据包长度 | 2 | 0x0008 |
| 数据 | 8 |
|
| 校验和 | 1 | 从帧头开始按字节求和,得出的结果对 256 求余 |
示例
55 AA 00 0C 00 08 000013CF C20A5FBB DB
MCU 返回
返回断点地址,可以支持从断点位置下载。
| 字段 | 字节数 | 说明 |
|---|---|---|
| 帧头 | 2 | 0x55aa |
| 版本 | 1 | 0x00 |
| 命令字 | 1 | 0x0C |
| 数据长度 | 2 | 0x0001/0x0005 |
| 数据 | 5 |
0x0001 时,不传断点地址的话,默认从 0 地址开始完整下载文件。这是为了兼容之前 0x0001 长度协议。 |
| 校验和 | 1 | 从帧头开始按字节求和,得出的结果对 256 求余 |
示例
55 AA 00 0C 00 01 00 0C // 64 字节
55 AA 00 0C 00 01 01 0D // 128 字节
55 AA 00 0C 00 01 02 0E // 256 字节
55 AA 00 0C 00 05 02 00000800 1A // 从 2048 字节断点地址开始下载
模组发送信息
| 字段 | 字节数 | 说明 |
|---|---|---|
| 帧头 | 2 | 0x55aa |
| 版本 | 1 | 0x00 |
| 命令字 | 1 | 0x0D |
| 数据长度 | 2 | 0x0044(包偏移 + 数据长度) |
| 数据 | 4 |
|
| 校验和 | 1 | 从帧头开始按字节求和,得出的结果对 256 求余 |
示例
升级文件大小 530 字节,最后一包也要回复。
第一包,包偏移 0x00000000,数据包长度 256 字节
55 AA 00 0D 01 04 00000000 xxx...xxx XX
第二包,包偏移 0x00000100,数据包大小 256 字节
55 AA 00 0D 01 04 00000100 xxx...xxx XX
倒数第 2 包,包偏移 0x00000200,数据包大小 18 字节
55 AA 00 0D 01 04 00000200 xxx...xxx XX
最后一包,包偏移 0x00000212,数据包大小 0 字节
55 AA 00 0D 00 04 00000212 XX
MCU 返回信息
| 字段 | 字节数 | 说明 |
|---|---|---|
| 帧头 | 2 | 0x55aa |
| 版本 | 1 | 0x00 |
| 命令字 | 1 | 0x0D |
| 数据长度 | 2 | 0x0000/0x0001 |
| 数据 | 1 | Data[0]:
|
| 校验和 | 1 | 从帧头开始按字节求和,得出的结果对 256 求余 |
示例
升级文件大小为 530 字节,最后一包也要回复。
模组最后一包,包偏移 0x00000212,数据包大小 0 zi:
55 AA 00 0D 00 04 00000212 XX
MCU 回复:
10s 不回复 // 默认 MCU 校验文件 CRC32 成功
55 AA 00 0D 00 00 0C // MCU 校验文件 CRC32 成功
55 AA 00 0D 00 01 00 0D // MCU 校验文件 CRC32 成功
55 AA 00 0D 00 01 01 0E // MCU 校验文件 CRC32 失败
只要是文件下载,就能查询百分比,包括 Schema 文件、NB-IoT 升级文件、MCU 升级文件、MCU 通用文件下载。任何一个文件都有下载百分比。
MCU 发送信息
| 字段 | 字节数 | 说明 |
|---|---|---|
| 帧头 | 2 | 0x55aa |
| 版本 | 1 | 0x00 |
| 命令字 | 1 | 0xc3 |
| 数据长度 | 2 | 0x0000 |
| 数据 | 0 | 0 |
| 校验和 | 1 | 从帧头开始按字节求和,得出的结果对 256 求余 |
MCU 发送示例
55 aa 00 c3 00 00 c2
模组返回信息
| 字段 | 字节数 | 说明 |
|---|---|---|
| 帧头 | 2 | 0x55aa |
| 版本 | 1 | 0x00 |
| 命令字 | 1 | 0xC3 |
| 数据长度 | 2 | 0x0002 |
| 数据 | 2 | 下载状态与百分比 |
| BYTE[0] | 1 |
|
| BYTE[1] | 1 | 下载百分比(0-100) |
| 校验和 | 1 | 从帧头开始按字节求和,得出的结果对 256 求余 |
示例
55 aa 00 c3 00 01 01 18 dc
该内容对您有帮助吗?
是意见反馈该内容对您有帮助吗?
是意见反馈