dwm_fw_update_start
此调用仅适用于以太网网关. 它会启动固件更新. 它应该在调用 dwm_fw_update_xfer 之前开始调用. 如果请求被接受,则返回命令状态: “ok”,然后是第一个数据请求. 数据请求应始终由 dwm_fw_update_xfer 处理. 如果被拒绝,更新将不会启动。
固件更新被拒绝的原因:
不允许 - 给出了无效的硬件版本,或者模块未处于引导加载器模式(引导加载器模式总是在复位后短时间内进入:模块在引导加载器模式下停留的时间可以通过 dwm_boot_cfg_set 进行配置)。
内部错误
忙 - 固件更新已在进行中。
输入
hw_version: 32 位整数 (硬件版本)
fw_version: 32 位整数 (固件版本)
fw_checksum: 32 位整数 (要上传的固件的 crc32)
fw_size: 32 位整数 (固件大小)
输出
offset: 32 位整数 (dwm_fw_update_xfer 需要写入的数据的偏移量)
size: 32 位整数(dwm_fw_update_xfer 需要写入的数据大小)
SPI/UART 示例
TLV 请求  | 
|||||
|---|---|---|---|---|---|
类型  | 
长度  | 
硬件版本  | 
固件版本  | 
固件校验和  | 
大小  | 
0x3E  | 
0x10  | 
0x2A 0x00 0xCA 0xDE  | 
0x01 0x00 0x01 0x01  | 
0xea 0xF5 0x67 0x6D  | 
0xC4 0x26 0x00 0x00  | 
类型 0x3E(62 dec)表示命令 dwm_fw_update_start
TLV 响应  | 
||||||
|---|---|---|---|---|---|---|
类型  | 
长度  | 
价值  | 
类型  | 
长度  | 
价值  | 
|
0x40  | 
0x01  | 
0x00  | 
0x7E  | 
0x08  | 
偏移  | 
大小  | 
0x00 0x00 0x00 0x00  | 
0x00 0x10 0x00 0x00  | 
|||||
类型0x40 表示 状态代码
类型0x7E (126)表示数据请求