【问题标题】:Bit stuffing in CAN busCAN 总线中的位填充
【发布时间】:2015-10-31 01:17:54
【问题描述】:

接收节点(CAN 总线)如何知道位填充不是数据的实际位部分?

检查下面的这个例子。两者都是有效的流,但它们的内容不同:

有效 - 比特填充流(我的填充为零以粗体显示)

11111010101

有效 - 不是比特填充流

11111010101

【问题讨论】:

    标签: can-bus bitstuffing


    【解决方案1】:

    你误解了填充的概念。

    因为数据流中塞满了附加位。 发送方和接收方通过规则知道,在五个 0 或五个 1 之后,下一位将是一个交替填充位,并且没有数据。

    在五个相等的位之后填充

    111110010101

    无馅:

    11111010101

    因此,总线上具有交替位的消息会更短,因为不需要额外的填充位。

    之所以需要填充,是因为 CAN 是异步总线,它需要每 5 位的下降沿或上升沿用于不同 CAN 控制器之间的时钟重新同步。

    例如,如果填充将在三位之后开始,您可以在具有更高容差的不同控制器上使用振荡器。但这会增加填充开销,反之亦然。 所以五位是一种权衡。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-12-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多