固件更新

V6 开发板包含两颗 MCU。每颗芯片管理两路 CAN/CAN FD 和两路 RS485,因此两颗芯片都需要分别烧录。

选择正确的发布包

先确认开发板 MCU 平台,再选择对应目录;不同平台的固件不能混用。

平台

发布目录

最新文件

STM32G473

firmware/g473/release/

spine_v6_v66_release

G0A

firmware/g0a/release/

spine_v6_v68_release

正常出厂和现场升级应使用所选发布目录内的 *_release.bin,不要使用不匹配的 SDK 构建产物。

重要提醒

不要执行全片擦除。 开发板 Flash 高地址可能保存设备身份、授权信息、通信配置和批量任务。全片擦除会删除这些数据,普通固件镜像无法自动恢复。

G473 固件从 0x08000000 下载;使用“下载并校验”或“Program & Verify”即可。若无明确备份和恢复方案,请勿选择全片擦除。

使用 STM32CubeProgrammer 更新

准备 ST-LINK、STM32CubeProgrammer、稳定的 5 V 控制电源,以及选定的 release 固件,然后按以下步骤操作:

  1. 给开发板接入稳定的 5 V 控制电源。

  2. 将 ST-LINK 接到第一颗 MCU 的 SWD 接口。

  3. 在 STM32CubeProgrammer 中选择 ST-LINK 并连接。

  4. 选择选定版本目录中的 *_release.bin,下载地址填写 0x08000000

  5. 直接执行下载并校验,不要先做全片擦除。

  6. 断开 ST-LINK,连接第二颗 MCU 的 SWD 接口,重复步骤 3~5。

  7. 重新上电。

更新后检查

分别打开两颗 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

SHORT,每次 23 字节

SPI 主控需要 CAN FD 时,发送:

AT+SPIMODE=LONG