从此
📄文章 #️⃣专题 🌐酷站 👨‍💻技术 📺 📱

🏠 » 📄文章 » 内容

 欢迎来访!

USB、CAN均为差分信号传数据 为何CAN(Controller Area Network)传输距离比USB协议(Universal Serial Bus)长很多?

🕗2024-10-01👁️0

USB与CAN区别、对比

USB传输速度

  USB(Universal Serial Bus)是一种常用的外部总线协议,用于在计算机和外部设备之间传输数据。USB有不同的版本,每个版本都拥有不同的传输速度。最新的USB 3.2版本的传输速度可达20 Gbps,而最早的USB 1.0版本的传输速度仅为1.5 Mbps。

  USB的优势

  USB协议的传输速度非常快,可以在短时间内传输大量的数据。此外,USB支持多种设备,可以在桌面电脑、笔记本电脑、智能手机等设备之间共享数据。此外,USB还支持许多不同的设备,包括存储设备、外部显示器、键盘、鼠标等。

  USB的劣势

  USB协议的传输速度虽然很快,但是它的传输距离有限,最多只能传输5米的距离。此外,USB协议也不能支持多种设备之间的同步传输。

CAN传输速度

  CAN(Controller Area Network)是一种低延迟、低成本的总线协议,主要用于汽车应用。CAN协议的传输速度最高可达1 Mbps,但是它的传输距离可以达到40米。

  CAN的优势

  CAN协议的传输速度虽然不如USB快,但它的传输距离更长,可以达到40米。此外,CAN协议还具有低延迟、低成本和高可靠性的优势,因此在汽车应用中非常受欢迎。

  CAN的劣势

  CAN协议的传输速度较慢,最高只能达到1 Mbps,而USB 3.2版本的传输速度可达20 Gbps。此外,CAN协议也只支持汽车应用,不能用于其他应用场景。


问题

​ USB和CAN都是用两条线作为差分线以差分信号进行数据传输。总所周知,差分信号有着很强的抗干扰能力。那为什么USB的一般传输距离是5米,最大是10米(USB2.0低速模式下)。而CAN的一般传输距离为几百米甚至是1KM以上。

区别

  • 供电:
    • USB不仅可以传输数据,主设备还可以向从设备提供5V的电源。
    • CAN只能传输数据
  • 传输速率:
    • USB2.0的传输速率最高可达480Mbps,USB3.0的传输速率更是能到5Gbps。
    • CAN协议的传输速率相对而言较低,取决于CAN配置的波特率,一般的传输速率在1Mbps
  • 拓扑结构:
    • USB采用星型拓扑结构(一主多从模式)
    • CAN采用总线模式,并通过终端电阻减少反射,从而保证信号能在更长的距离
  • 协议设计(GPT补充,我也认同)
    • USB:在建立连接之后,就直接传输数据,没有报文规范和冗余校验机制,也没有重发机制
    • CAN:往总线中发送信号,其中CAN报文有15位的CRC校验码,可以更好的检测在数据传输中发生干扰导致的数据失真,并且根据重发机制进行重发。

答案

  1. 传输速率:CAN的传输速率相对更低,更低的传输速率代表了 电平信号的持续时间更长 ,能够有效的增强数据的可靠性。
  2. 拓扑结构:CAN在总线的两端分别接入了一个120Ω的终端电阻,这个终端电阻能够减少信号的反射,提高信号的完整性
  3. 协议设计:CAN有着很好的错误检测机制和重发机制(CRC校验,界定符校验,手动或自动重发)。

以上三点使得CAN在传输距离上比USB 更有优势。