1、CAN总线的可靠性体现它的优越的仲裁机制上。CAN采用的是CSMA/CD(带有冲突检测的CSMA)。这种仲裁机制中规定:当一个节点要发送数据时,首先监听信道;如果信道空闲就发送数据,并继续监听;如果在数据发送过程中监听到了冲突,则立刻停止数据发送,等待一段随机的时间后,重新开始尝试发送数据。并且在CAN总线把通过设置节点地址来区分各个节点发送数据的优先级别,在发生总线冲突时优先级高的节点能够获得使用总线的权利。最高优先级的节点在任何时刻都可以向外发送数据,况且数据不会补同时发送数据其它节点破坏。而最低优先级的节点任何时刻都要等待其它节点发送完毕后才可以发送数据。
正是由于有了总线监听和发生冲突时不破坏数据的优点才保证了CAN总线的可靠性。
2、至于节点什么时候重发,可能要看一些更专业的书籍才知道,因为很多讲述CAN协议的书都只说了要等待一段随机的时间,这一段随机的时间就竟是什么范围不得而知。