固件更新
V6 开发板包含两颗 MCU。每颗芯片管理两路 CAN/CAN FD 和两路 RS485,因此两颗芯片都需要分别烧录。
选择正确的发布包
先确认开发板 MCU 平台,再选择对应目录;不同平台的固件不能混用。
平台 |
发布目录 |
最新文件 |
|---|---|---|
STM32G473 |
|
|
G0A |
|
|
正常出厂和现场升级应使用所选发布目录内的 *_release.bin,不要使用不匹配的 SDK 构建产物。
重要提醒
不要执行全片擦除。 开发板 Flash 高地址可能保存设备身份、授权信息、通信配置和批量任务。全片擦除会删除这些数据,普通固件镜像无法自动恢复。
G473 固件从 0x08000000 下载;使用“下载并校验”或“Program & Verify”即可。若无明确备份和恢复方案,请勿选择全片擦除。
使用 STM32CubeProgrammer 更新
准备 ST-LINK、STM32CubeProgrammer、稳定的 5 V 控制电源,以及选定的 release 固件,然后按以下步骤操作:
给开发板接入稳定的 5 V 控制电源。
将 ST-LINK 接到第一颗 MCU 的 SWD 接口。
在 STM32CubeProgrammer 中选择
ST-LINK并连接。选择选定版本目录中的
*_release.bin,下载地址填写0x08000000。直接执行下载并校验,不要先做全片擦除。
断开 ST-LINK,连接第二颗 MCU 的 SWD 接口,重复步骤 3~5。
重新上电。
更新后检查
分别打开两颗 MCU 对应的 USB 串口,发送:
AT+VER
行尾选择 CRLF。返回值应与刚刚烧录的固件版本一致,例如 G473 V66 返回:
V66
随后可查询通信参数:
AT+SETFDCAN?
AT+SETRS485?
AT+SPIMODE?
AT+RS485RAWCH?
AT+BATAUTO?
升级通常保留原通信配置,因此返回值可能与出厂默认值不同。如果确实要恢复通信默认值,可发送 AT+CFGERASE;执行前请确认它适用于当前固件。
出厂通信默认值
项目 |
默认值 |
|---|---|
经典 CAN / CAN FD 仲裁段 |
1 Mbit/s |
CAN FD 数据段 |
5 Mbit/s,BRS 开启 |
RS485 |
4 Mbit/s、1 个停止位、无校验、8 数据位 |
SPI |
|
SPI 主控需要 CAN FD 时,发送:
AT+SPIMODE=LONG