我已经阅读了所有 ISO 文档,但无法弄清楚在哪些情况下我们需要在 ISO-TP 中进行扩展寻址,尽管我已经看到来自 BMW CAN 流量的数据包,其中 UDS 使用扩展寻址。
如果所有节点都通过CAN ID进行过滤,为什么ISO-TP协议需要指定目标地址?节点是否有可能也会过滤由 ISO-TP 目标地址打包的内容?
有任何想法吗?
我已经阅读了所有 ISO 文档,但无法弄清楚在哪些情况下我们需要在 ISO-TP 中进行扩展寻址,尽管我已经看到来自 BMW CAN 流量的数据包,其中 UDS 使用扩展寻址。
如果所有节点都通过CAN ID进行过滤,为什么ISO-TP协议需要指定目标地址?节点是否有可能也会过滤由 ISO-TP 目标地址打包的内容?
有任何想法吗?
ISO 15765-2 (ISO-TP) 是 CAN 上的传输协议,因此它需要使用自己的地址用于特定目的。当 ISO 15765-2 需要引用单个节点时,它使用 CAN 地址作为 ISO-TP 地址。当它必须通过网关发送信息时,它使用扩展地址,用一个 CAN Payload Byte 来指定网关地址(只剩下 7 个字节用于数据)。
ISO-TP 协议允许传输超过 CAN 帧的 8 字节最大有效载荷的消息。ISO-TP 将较长的消息分割成多个帧,添加元数据,允许解释单个帧并由接收者重新组合成一个完整的消息包。每个消息包最多可以携带 4095 字节的有效负载。