CAN总线以太网通信的区别

网络拓扑不同

CAN是总线(Bus)通信方式,网络拓扑如下图。总线的意思就是所有节点都连接到同一个传输媒介中,也就是说传输媒介中的电信号会影响到所有的节点。总线通信中一条CAN线上会挂多个节点,所以一般我们会说CAN Bus 或 CAN Network。

CAN总线与以太网通信的区别

以太网是交换机式(Switched Network)通信方式,网络拓扑如下图。网络中有终端节点,简单理解为一个节点上只有一个以太网端口;和交换机节点,简单理解为一个节点上有多个以太网端口,其主要作用是转发信息。交换机式通信指的是所有的终端节点都要通过交换机才能连接到一起,所有传递的信息都需要交换机进行转发。交换机式通信中一条网线上只有两端与两个端口相连,没有分叉。所以一般我们不说以太网总线,而是说以太网网络(Ethernet Network)。

CAN总线与以太网通信的区别

信息收发方式不同

CAN总线为广播式通信,一个节点发送信息会占据所有通信媒介,发送节点只管自己发送,不关心谁去接收,总线上所有通信节点都会收到信息。接收节点则根据自身的情况来决定是否接收信息。这就类似于在会议室里开会,一个人发言所有人都能听见,发言内容与谁相关,谁去关注就OK了。

CAN总线与以太网通信的区别

以太网的交换机式通信,则是点对点的通信方式。发送节点在发送信息前,会首先想好信息要发送给谁,然后会把自己的地址和接收方的地址放到报文里去。节点A需要发送信息给节点B,可以简单理解为交换机内部把端口1和端口2给连起来了,因此信息就从A传到了B。在A和B收发的过程中,C/D/E节点都没有收到信息,他们之间的通信媒介也没受到影响。这就类似于打电话,一个人拨通另一个人的电话号码,就只有这两个人互相通话。那么如果有信息需要从发送节点发给多个节点,相当于召开多方电话会议,怎么办呢?这就有了多播和广播的概念。

CAN总线与以太网通信的区别

多播指一对多的信息发送,广播指一对所有的信息发送。如果A节点希望发送信息给多个节点,则需要将自己的地址和多个接收方的地址(是一个提前设置好的多播地址)放到报文里去,此时可以简单理解为交换机把发送方的端口同多个接收方的端口连接起来了,因此信息就从A传到了多个节点。如果A节点希望发送信息给所有节点,则需要将自己的地址和所有接收方的地址(是一个提前设置好的广播地址)放到报文里去,此时可以简单理解为交换机把发送方的端口同所有端口连接起来了,因此信息就从A传到了所有节点。

CAN总线与以太网通信的区别

  • UC3846控制芯片工作原理控制图 逆变焊机原理与用途
  • 数字万用表电阻档测试二极管正反向没有阻值(使用万用表测量二极管的正向电阻,为什么各档)
  • 学单片机需要学数电模电吗(学单片机要先学数电模电吗)
  • 电工怎么选择适合自己用的万用表(电工初学者买什么样的万用表好)
  • 单片机需要同时运行多个任务怎么办(单片机怎么同时执行多个任务)
  • 电机保护的方案取决于负载的机械特性
  • 绝缘电阻表正负搭接不复零位是怎么回事
  • 短路怎么用万用表查