CAN是控制器局域网络(Controller Area Network, CAN)的简称,是由以研发和生产汽车电子产品著称的德国BOSCH公司开发的,并最终成为国际标准(ISO 11898),是国际上应用最广泛的现场总线之一。
传输距离和速率
CAN总线特点:
1、数据通信没有主从之分,任意一个节点可以向任何其他(一个或多个)节点发起数据通信,靠各个节点信息优先级先后顺序来决定通信次序,高优先级节点信息在134μs通信;
2、多个节点同时发起通信时,优先级低的避让优先级高的,不会对通信线路造成拥塞;
3、通信距离最远可达10KM(速率低于5Kbps)速率可达到1Mbps(通信距离小于40M);
4、CAN总线传输介质可以是双绞线,同轴电缆。CAN总线适用于大数据量短距离通信或者长距离小数据量,实时性要求比较高,多主多从或者各个节点平等的现场中使用。
CAN总线网络主要挂在CAN_H和CAN_L,各个节点通过这两条线实现信号的串行差分传输,为了避免信号的反射和干扰,还需要在CAN_H和CAN_L之间接上120欧姆的终端电阻
CAN总线在汽车上目前使用的比较多的有500K和250K的高速CAN、125K和62.5K的低速CAN
CAN大致分为高速CAN,低速CAN,隔离CAN,单线CAN,其中高速CAN和低速CAN只是速率不一样,硬件可用一样的电路。所以下面只介绍高速CAN,就不介绍低速CAN了。
高速CAN:
芯片TJA1043是一款高速CAN收发器,它的管脚定义如下图
关键管脚定义解释:
TXD:传输输入数据,接到MCU的TXD上
RXD:接收数据输出,从总线读取数据,接到MCU的RXD上
VIO:I/O电平的电源电压
CANL:低电平CAN总线
CANH:高电平CAN总线
TJA1043的典型电路如下图:
BAT电源输入,STB_N、EN、ERR_N接到MCU的IO口,RXD、TXD接到MCU的CAN_RXD和CAN_TXD。CANH和CANL之间接120欧姆的终端电阻接到CAN总线上
隔离CAN:
芯片TJF1052I是隔离CAN收发器,它的管脚定义如下图
隔离指的是VDD1和GND1是一组电源和地,VDD2和GND2是另一组电源和地,这两组电源和地是相互隔离的。一般会加个隔离电源。有些隔离CAN芯片内部集成了隔离电源,就不需要外加隔离电源了。
这样就把TXD、RXD这组信号与CANH、CANL这组信号进行了隔离,对TXD和RXD进行了保护,防止CAN总线端的瞬态干扰损坏后级电路。
TJF1052I的典型电路如下图:
VDD和VDD1与VDD2的电源隔离,TJF1052i的RXD、TXD接到MCU的RX0和TX0。CANH和CANL之间接120欧姆的终端电阻接到CAN总线上
单线CAN:
芯片MC33897是一款单线CAN收发器,它的管脚定义如下图
关键管脚定义解释:
TXD:发送数据,接到MCU的TXD上
RXD:接收数据,接到MCU的RXD上
BUS:连接到单线CAN总线
MODE0和MODE1:睡眠模式、传输电平和速度选择,具体选择方式见下图
MC33897的典型电路如下图:
Battery电源输入,MODE0和MODE1接到MCU的IO口,RXD、TXD接到MCU的CAN_RXD和CAN_TXD。BUS接到单线CAN总线上
以上就是几种CAN的典型硬件电路