我不明白为什么这个例子用0x1FFFFFFFF从mcp_can库&&中编码接收到的can Id。什么样的位会丢失?因为这条指令可能会丢失3个MSB位。
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);发布于 2016-11-19 05:06:47
因为2.0b是29位,所以不会丢失任何东西
https://stackoverflow.com/questions/40685698
复制相似问题