can总线为什么比串口快?就是说各种总线速度不一样,是由什么决定的,最关键的地方?

2025-02-24 05:26:06
推荐回答(5个)
回答1:

CAN总线在汽车上目前使用的比较多的有500K和250K的高速CAN、125K和62.5K的低速CAN,最高可做到1M,但这个1M是理论上的,实际上很难实现,在工业上用的速率不太清楚。
一楼的回答个人觉得不妥。
首先,在大多数情况下(总不能拿25K的CAN跟56K的串口进行比较吧),CAN总线笔串口要快。CAN总线的出于安全性方面的额外开销约占总数据的50%左右,即每发8个数据字节,可能会同时产生8~9字节的额外开销。
串口的最高速率为56k,额外开销占30%多,及没传1个数据字节至少需要4个位的额外开销。
所以,单纯论点对点的通讯速率,串口是远不及CAN的。

各种总线的产生的历史背景不一样及所解决的需求不同导致了总线速度的不尽相同,因此总线的速率是由设计需求所决定的,最关键的地方从大的方面来说也是设计需求,从小的方面来说由不同总线的数据链路层决定的。

回答2:

CAN总线在汽车上目前使用的比较多的有500K和250K的高速CAN、125K和62.5K的低速CAN,最高可做到1M,但这个1M是理论上的,实际上很难实现,在工业上用的速率不太清楚。
一楼的回答个人觉得不妥。
首先,在大多数情况下(总不能拿25K的CAN跟56K的串口进行比较吧),CAN总线笔串口要快。CAN总线的出于安全性方面的额外开销约占总数据的50%左右,即每发8个数据字节,可能会同时产生8~9字节的额外开销。
串口的最高速率为56k,额外开销占30%多,及没传1个数据字节至少需要4个位的额外开销。
所以,单纯论点对点的通讯速率,串口是远不及CAN的。

各种总线的产生的历史背景不一样及所解决的需求不同导致了总线速度的不尽相同,因此总线的速率是由设计需求所决定的,最关键的地方从大的方面来说也是设计需求,从小的方面来说由不同总线的数据链路层决定的。

回答3:

关注这个问题好久了,我也不是冲着积分去的,因为我和楼主持有不同的观点。串口通信如果不转成422或485通信距离比较近,但是通讯距离有限,也就半米内吧。通讯波特率最高可以达到
57600bps(比较理想的条件下)。但是CAN总线属于现场总线,主要强调的是数据的可靠性,因此数据冗余比较多,此外CAN总线的由于驱动节点的较多,波特率最高也就做到1M。我的结论是串口比CAN总线快。

回答4:

补充一下楼上:
can与串口最大的区别是can是差分信号,具有较强的抗干扰能力
所以can可以在25k下的速率达到1km的传输距离同时具有高可靠性
普通串口关键是比较老,最大速率只有115200,
其实usb也是串行的数据传输,2.0也就2根数据线达到了480Mb的速率
但这种线的传输距离就比较短了,距离远了以后传输效率会大大降低
所以单纯来比速度老串口也就是因为协议比较落后以前用不了那么快所以。。。

回答5:

是由知识决定的,最关键的地方在于学习,请删除这种垃圾问题。