拓展CAN
在STM32里
StdID - 表示标准ID
ExtID - 表示拓展ID
需要通过 IDE的标志位的值来选择是标准ID或者拓展ID
StdID和ExtID 只有一个有效
这篇博客写的很清楚
STM32-CAN通信 - LOXO - 博客园 (cnblogs.com)
这篇讨论中楼主给出了一种经过判断后发送拓展ID或者标准ID的代码(11楼)
stm32 can如何发送扩展帧,扩展ID如何发送,现在是对不上 - STM32/STM8单片机论坛 - ST MCU意法半导体官方技术支持论坛 - 21ic电子技术开发论坛
在Linux里可能没有IDE这样的标识符,而是使用ID的某一位作为标识,区分标准ID和拓展ID
ExtID可以在ID里携带数据 - 协议可以自己规定
对于一个CAN系统,不同设备上的配置,标志位等等可能都不一样
需要结合相应平台的CAN驱动协议去理解
对于发送数据的大端模式或者小端模式 - 也应该进行判断测试
或者在驱动协议里有明确说明发送的数据是大端模式或者小端模式
对于标准ID和拓展ID - 所发送的字节数不一样,每个字节相应的位对应的意思也不一样
不同驱动协议所对应的标志位或者字节含义也可能不一样