CAN学习

相关资料

CAN的基本信息

CAN总线是一种用于在不同的ECU(电子控制单元)之间传输数据的线,CAN总线协议是一种ISO 国际标准化的串行通信协议,有 ISO-11898 和 ISO-11519两个系列。其定义有:

  • ISO-11898 定义了通信速率为 125 kbps ~1Mbps 的高速 CAN 通信标准,属于闭环总线,传输速率可达1Mbps,总线长度 ≤ 40米
  • ISO11519 定义了通信速率为 10~125 kbps 的低速 CAN 通信标准,属于开环总线,传输速率为40kbps时,总线长度可达1000米

can通过两条通信线(双绞线)产生的电压差传输数据,一个CAN网络里的所有节点都挂在这两条通信线上,使用差分信号半双工通信

CAN总线上,信号表现为电压形式,通过CAN_H和CAN_L线上的电位差来表示CAN信号,分为显性电平(dominant)和隐性电平(recessive)两种类型。其中显性电平规定为逻辑0,隐性电平则为逻辑1。

CAN 收发器的作用是把 CAN 控制器的 TTL 电平信号转换成差分信号(或者相反)。

我们现在通常使用的CAN2.0,都是使用高速CAN标准,其物理层电平如图:

  • CAN_H-CAN_L < 0.5V 时候为隐性的,逻辑信号表现为"逻辑1"- 高电平。
  • CAN_H-CAN_L > 0.9V 时候为显性的,逻辑信号表现为"逻辑0"- 低电平。

CAN总线在电平传输上,具有仲裁判断逻辑,优先级为:显性(低电平)>隐形(高电平)!

在理解CAN总线传输的整个过程中,主要就是清楚这一规则在传输时的灵活运用,并定义的各种帧形式。

相对于其他,can通信有点有: 抗干扰能力强,能有效抑制它对外部的电磁干扰, 时序定位精确

CAN的数据格式

每一个节点都可以主动发送帧。(帧是CAN协议规定的发送或接收的单位) 。帧由段组成,段由二进制位组成。

帧的种类有很多,其中错误帧、过载帧、帧间隔都是由硬件完成的,没有办法用软件来控制。对于一般使用者来说,只需要掌握数据帧与遥控帧。数据帧和遥控帧有标准格式与扩展格式。标准格式有11位标识符,扩展格式有29位标识符。

数据帧的构成

仲裁段:

posted @ 2025-04-07 09:33  小蒟蒻皮皮鱼  阅读(94)  评论(0)    收藏  举报