GSUSB 设备协议栈
本文档描述 XRUSB 的 GSUSB(Linux gs_usb) 设备类实现:LibXR::USB::GsUsbClass<CanChNum>。
该设备类面向 Linux/SocketCAN 生态的 USB-to-CAN 使用方式,采用 Vendor Interface + Bulk IN/OUT 的传输模型,实现 gs_usb 协议常用控制面与数据面。
支持能力:
- 经典 CAN(Classic CAN):最大 8 字节数据
- CAN FD(可选):最大 64 字节数据区,DLC 映射遵循 FD 表
- TX echo:回送
echo_id,用于主机侧 TX buffer 跟踪 - 可选硬件时间戳:
timestamp_us(4 字节)追加在 wire frame 末尾 - 多通道:通道数由模板参数
CanChNum编译期固定