AC690AC692-UART串口升级协议
串口升级
一、波特率:460800
二、命令:
| 命令 | 发出端 | 接收端 |
|---|---|---|
| 进入升级 | Wifi(12byte): UART_UPDATA! | Mcu(12byte): RECEIVE_CMD! |
| 读文件命令 | Mcu(12byte): READ+addr+len | Wifi:sum_check(4byte)+data |
| 完成升级 | Mcu(12byte): UPDATA_SUCC! | Wifi(12byte): RECEIVE_CMD! |
| 升级失败 | Mcu(12byte): UPDATA_FAIL! | Wifi(12byte): RECEIVE_CMD! |
解释:
1、 当需要升级时,命令是由主机发送到从机(mcu:AC69):主机发送:UART_UPDATA!共 12byte,从机回应:RECEIVE_CMD!共12byte,进入启动代码进行升级;
2、 当进入升级后,命令是由从机(mcu:AC69)发送到主机:从机发送:READ+文件读取
的地址(4byte)+读取长度(4byte)共12byte,长度len进行4byte对齐,对齐部分数据使
用0(比如需要长度为22byte时候,需要补齐为24byte,最后两byte为0),主机发送:数据区的累加和+数据;通常数据为512byte,但是需要根据读取命令len来适配(因为最后一包数据可能小于512byte),累加和放在数据头,即回复总长度为4+len,数据为小端模式(即累加结果为0x87654321 时候,发送应为0x21436587),累加的数据以 u8形式累加重复,读取一包数据超过5次视为升级失败,退出升级, mcu将重启。
3、 当升级完成后,命令是由从机(mcu:AC69)发送到主机:从机发送:UPDATA_SUCC!共12byte,主机回应:RECEIVE_CMD!共12byte,从机启动,升级完成;当升级失败时,命令是由从机(mcu:AC69)发送到主机:从机发送:UPDATA_FAIL!共12byte,主机回应: RECEIVE_CMD!共12byte,从机启动,