CAN学习-收发器(1)
CAN 的意思是 (Controller Area Network),控制区域网络。选择CAN芯片时候需要注意自己的芯片是CAN还是CAN FD,FD的意思是 Flexible Data-Rate 灵活的数据速率.
CAN 2.0的最高速率是1Mbps,CAN FD最高速率是5Mbps意味着CAN2.0的收发器可能是无法兼容CAN FD的,所以如果是CAN FD的应当选用合适速率的芯片。CAN FD用了两种速率,仲裁arbitration和ACK沿用之前的CAN 2.0,中间的数据用1Mbps或者更高的速率。如下图1所示。
图1:CAN FD数据格式
CAN 收发器将数据转换为差分信号输出,详情如下图2所示,参考自 TJA1050 NXP的data sheet ( Vi(dif)(bus) = V CANH VCANL ).
图2:时序图AC特性
因为是差分输出所以在长距离传输中可以有比较强的抗干扰能力,CAN 总线最大长度和速率如下表1所示图3展示了表1内容的含义 。
/*英语翻译*/
bus length 总线长度
cable stub 电缆抽头
node distance 节点距离
feet 英尺
/*英语翻译*/
表1:CAN 最大长度和速率关系
Bus Speed |
Bus Length
(L) |
Cable Stub Length (l) |
Node Distance
(d) |
1 Mbit/Sec |
40 meters
(131 feet) |
0.3 meters
(1 foot) |
40 meters
(131.2 feet) |
500 kbits/Sec |
100 meters
(328 feet) |
0.3 meters
(1 foot) |
100 meters
(328 feet) |
100 kbits/Sec |
500 meters
(1640 feet) |
0.3 meters
(1 foot) |
500 meters
(1640 feet) |
50 kbits/Sec |
1000 meters
(3280 feet) |
0.3 meters
(1 foot) |
1000 meters
(3280 feet) |
图3:CAN总线距离关系图
所以为啥差分有更强的干扰能力呢?在长距离传输中容易引入干扰,如果是单端传输当信号上有个毛刺时候接收就有可能出错,如果是差分传输CAN_H和CAN_L上都接收到这个干扰,但是CAN_H和CAN_L上的相对电压没有产生变化对接收也是没有任何影响的。如下图4所示。
图4:CAN总线上的共模干扰
另外值得注意的是CAN总线的终端电阻是120ohm通常是使用两个60 ohm接到CAN-H和CAN-L上,两个电阻的公共点接电容在接地,通常这个电容是10nF或者100nF在长节点中。在总线不同的节点中,CAN-H和CAN-L的终端电阻是不同的,参考图5
图5:终端电阻设置
虽然CAN BUS给留了很多地址,但是CAN收发器究竟能带几个节点呢?咱们下期再聊。拜拜~
参考文档
CAN物理层收发器在带宽、可靠性和低功耗方面的聚合挑战
CAN FD 通訊特色介紹與產品應用
CAN FD - The basic idea
NXP TJA1050 Datasheet
Maximum Cable Length For a CAN Bus
TJA1050 high speed CAN transceiver
CAN物理层收发器在带宽、可靠性和低功耗方面的聚合挑战