0
我不明白为什么这个示例代码来自mcp_can库& &的接收到的可以使用0x1FFFFFFF的Id。什么样的比特会丢失?因为这条指令会丢失3个MSB位。Canbus 2.0b标识符
if((rxId & 0x80000000) == 0x80000000) // Determine if ID is standard (11 bits) or extended (29 bits)
sprintf(msgString, "Extended ID: 0x%.8lX DLC: %1d Data:", (rxId & 0x1FFFFFFF), len);
else
sprintf(msgString, "Standard ID: 0x%.3lX DLC: %1d Data:", rxId, len);
根据注释和状态,至少有一点'32'似乎包含某种形式的头信息。然而'0x1FFFFFFF'会给你注释中提到的29位。 –