命令行刷机教程

# 命令行刷机指南 ## 一、刷机介绍: luatos可使用命令行进行刷机,如不使用luatools刷机也可自己使用命令行或单独封装刷机软件。air105/esp32-c3使用soc_download.exe来进行刷机。 介绍之前我们先来了解一下soc文件构成: .soc文件为合宙luatos-soc系统使用的固件格式,我们可以用7z等解压缩软件对其进行解压,可发现固件构成如下: .bin文件(固件二进制文件) .exe文件(刷机程序,air105/esp32-c3为soc_download.exe) info.json(刷机参数信息) ## 二、命令行刷机参数介绍: Air105需要目前一共需要输入14个参数: 1、类型,字符串,air105须填写`air105_download` 2、串口号,10进制,1~255 3、通用bl下载时的波特率,10进制 4、下载bin文件路径,带引号的字符串 5、下载bootloader的文件名称,带引号的字符串 6、bootloader写入地址,16进制,不带0x 7、下载APP的文件名称,带引号的字符串 8、APP写入地址,16进制,不带0x 9、下载脚本的文件名称,带引号的字符串 10、脚本写入地址,16进制,不带0x 11、RTS复位的电平,10进制,0或者1 12、只下载脚本的标志,10进制,0或者1,1表示只下载脚本 13、文件系统地址 14、文件系统需要擦除的长度,如果不擦,写0 举个例子 `soc_download.exe air105_download 83 3000000 "E:\air105\core\hex\air105\debug" bootloader.bin 01001000 app.bin 01010000 script.bin 01300000 0 0 01380000 0` **各参数可在info.json中查看** ## 三、控制台中打印的信息需要关注以下字段 **download error:xxx 下载出错及原因** download stage xxx:yyy 下载XXX(bl,app.bin, script.bin)的 yyy阶段,注意yyy是数字,bl阶段根据不同芯片有不同的解释,app.bin和script.bin有通用的解释,如下 **air105的bl** 0:尝试通过RTS复位芯片,及同步芯片串口 1:同步串口成功,开始连接串口 2:连接串口成功,发送bootloader信息 3:开始擦除相关flash 4:开始写入bl数据 5:完成 **通用bl下载协议:** 0:开始同步 1:发送bin信息 2:发送bin数据 3:等待验证固件信息 **download percent:xxx 当前下载的进度** 全部下载完成后提示download OK