串口升级*
本文是 GX8002 的固件升级指导手册,我们提供了 Linux 跟 Windows 两种环境的升级工具。
1. Linux 环境下的升级*
1.1 升级工具*
在目录./tools/bootx/
中的可执行文件bootx就是串口升级时需要用到的工具。
1.2 升级指令说明*
$ sudo ./bootx -m grus -c "download 0x0 ../../output/mcu_nor.bin;reboot;" -d /dev/ttyUSB0
-
指令说明
- 1.以上提供的指令是在
bootx
目录下执行的 - 2.指令的格式
sudo ./bootx -m grus -c "download 0x0 <固件的路径>;reboot;" -d <串口设备>
- 3.
reboot
是升级完成后重启设备指令 - 4.查询串口号指令
ls /dev/ttyUSB*
提醒
一般我们推荐直接敲命令进行升级,推荐使用升级脚本进行升级
- 1.以上提供的指令是在
1.3 升级脚本[推荐]*
一般正常编译的固件可以通过脚本来升级,在 bootx/ 目录下有 flash_nor.sh 的脚本,可以直接执行该脚本进行升级,在后面加上设备对应的串口号,就可以进行升级,该脚本默认升级的固件是编译生成到 output 目录下的 mcu_nor.bin。
$ ./flash_nor.sh 0 # 0 表示串口号:/dev/ttyUSB0;这里根据实际串口号来填
1.4 调节升级速度*
以上指令可以加-r 来调节波特率,如需要调节推荐 500000
和 576000
,采样率过高可能有些电脑不支持
$ ./flash_nor.sh 0 -r 576000
1.5 升级成功*
执行以上脚本需要给设备重新上电,进入升级,打印以下log则代表升级成功
Found serial: /dev/ttyUSB1
downloading [1/2] :
[==========][100%]
downloading [2/2] :
[==========][100%]
Excute cmd : download 0x0 /home/robotos/lvp/lvp_tws/output/mcu_nor.bin
downloading [1/1]
[==========][100%]
done
Excute cmd : reboot
done