硬件接口说明

V6 硬件基于 STM32G473 系列 MCU,核心总线能力由 FDCAN、USART/RS485、USB 复合设备和 SPI Slave 组成。具体引脚以对应硬件版本原理图和 CubeMX 配置为准。

总线资源

功能

说明

FDCAN1

当前 MCU 侧第一路 CAN/CAN FD

FDCAN2

当前 MCU 侧第二路 CAN/CAN FD

RS485-A

当前 MCU 侧第一路 RS485

RS485-B

当前 MCU 侧第二路 RS485

USB gs_usb

Linux SocketCAN 入口,主机侧显示为 canX

USB CDC串口 (CDC ACM)

PC 调试、AT 配置、小米 CyberGear 兼容和第三方 RS485 原始数据透传入口;RS485 透传需通过 AT+RS485RAW=1 临时开启

SPI Slave

主控板固定长度协议入口,支持 SHORT=23 字节和 LONG=73 字节

通道映射

SANPO 集成开发板 V6 固件对应双 MCU 硬件,整板共提供 CAN1~CAN4RS485-1~RS485-4。推荐沿用以下逻辑映射:

入口

控制通道

USB CDC串口 1 或 SPI CS0

CAN1 / CAN2 / RS485-1 / RS485-2

USB CDC串口 2 或 SPI CS1

CAN3 / CAN4 / RS485-3 / RS485-4

上位机协议中的 Channel 保持 0x01~0x04 定义,分别对应板上 4 路 CAN 或 4 路 RS485。

SocketCAN 通道映射

SocketCAN 通过 USB gs_usb 接口访问 FDCAN。单块 SANPO 集成开发板包含两颗 STM32 芯片,每颗芯片提供 2 路 FDCAN:

板上资源

gs_usb 通道

物理接口

STM32 芯片 1

channel 0

CAN1 / FDCAN1

STM32 芯片 1

channel 1

CAN2 / FDCAN2

STM32 芯片 2

channel 0

CAN3 / FDCAN1

STM32 芯片 2

channel 1

CAN4 / FDCAN2

单块 SANPO 集成开发板正常会生成 4 个 SocketCAN 接口。Linux 主机显示的 can0can1can2can3 名称由系统枚举顺序决定,不等同于固定的硬件丝印名称。使用前应先确认 canX 与物理总线的对应关系,再运行上位机控制程序。

常用确认命令:

ip -details link show type can
readlink -f /sys/class/net/can0/device
udevadm info -q property -p "$(readlink -f /sys/class/net/can0/device)"

FDCAN 引脚参考

外设

常见引脚

FDCAN1_RX

PB8

FDCAN1_TX

PB9

FDCAN2_RX

PB12

FDCAN2_TX

PB13

SPI 长度模式

模式

总线长度

报文区长度

CRC

SHORT

23 字节

22 字节

1 字节

LONG

73 字节

72 字节

1 字节

SPI 模式通过 USB CDC串口 AT+ 指令切换。使用串口工具发送时,只输入命令主体,并把发送结束符设置为 CRLF。固件上电默认 SHORT 模式。