CAN 使用
协议简介
CAN CAN 是 Controller AreaNetwork 的缩写,中文名为控制器局域网络,是 ISO 国际标准化的串行通信协议,是一种用于实时应用的串行通讯协议总线,它可以使用双绞线来传输信号,是世界上应用最广泛的现场总线之一。
CAN 总线的优点:
-
可靠性高,抗干扰能力强 phy 芯片外围基于差分信号和双绞线进行传输,有效抵消电磁干扰;硬件固化的数据链路层能自动解决多节点间时钟不同步问题。
-
具备很强的检错能力 硬件固化的数据链路层包含 CRC、位检测等检测能力,几乎能 100%检测通信异常。
-
完善的错误管理机制 如报文帧仲裁失败或传输期间被破坏能自动重发;节点在错误严重的情况下,具有自动脱离总线的功能,切断它与总线的联系,不影响总线的正常工作。
-
实时性强 CAN 总线具有较高的数据传输速率,能够实时处理和传输大量数据,满足汽车电子控制系统的实时性需求。
-
成本低 CAN 总线的硬件成本相对较低,可以降低汽车电子控制系统的整体成本。
-
通信距离远、消息传输速度快 直接通信距离最远可达 10km(速率 4Kbps 以下);通信速率最高可达 1Mbps(此时距离最长 40m)。
-
支持多主机通信,支持无损仲裁技术 当两个节点同时发布信息时,高优先级报文可不受影响地传输数据。
-
废除"地址”概念,高效灵活 CAN 协议的一个最大特点是废除 了传统的站地址编码,取而代之的是对通信报文进。
-
行编码 1)CAN 构成的网络节点个数是不受限制的,使用上具有很大的灵活性; 2)在总线上增加节点时,不会对总线上已有节点的软硬件及应用层造成影响。
-
结构简单,组网方便,可扩展性强 添加新设备时,只需往双绞线上放就行,无需额外修改线路(反例如 SPI 等)。
CAN FD 市场对提升 CAN 总线性能的强烈需求使 CAN-FD(Flexible Data rate)应运而生,CAN-FD 发扬了 CAN 的优点,并弥补了 CAN 的不足,其主要特性如下:
- 扩展有效数据场 CAN-FD 协议的每帧报文有效数据场可以达到 64 字节 5,而传统的 CAN 协议只有 8 字节。这大大增加了数据传输的能力,使得更多的数据可以在单个报文中进行传输。
- 双比特率模式 CAN-FD 协议引入了双比特率模式,即在仲裁段使用标称比特率(最高 1 Mbit/s)而在数据段使用更高的数据比特率(最高 5 Mbit/s)。这种模式可以在保证兼容性的同时,提高数据传输速率。
- 改进的循环冗余校验和填充位计数器 CAN-FD 协议采用了改进的循环冗余校验(CRC)和填充位计数器(SBC),以提高错误检测能力。这些改进增强了数据的完整性和可靠性。
- 取消远程帧的支持 为简化帧结构,CAN-FD 协议取消了远程帧的支持。这意味着在 CAN-FD 网络中,通信是通过数据帧进行的,不再需要远程帧的控制和请求。
接口说明

- RDK X5 提供了 CAN 通信接口,并配备了一个 120 欧姆终端电阻开关,当需要启用终端电阻时,只需闭合该开关即可。
- 端子接口型号:SH1.0 1X3P
如果距离过长(大于 1 米),速率过大(大于 125Kbps),需要闭合 RDK X5 的终端电阻开关,对端设备也要使能 120 欧姆的电阻。这样做会消除信号反射,保证总线的稳定通信。
模块简介
RDK X5 集成了 TCAN4550 TCAN4550 是带有集成 CAN FD 收发器的 CAN FD 控制器,支持高达 8Mbps 的数据速率。此 CAN FD 控制器符合 ISO11898-1:2015 高速控制器局域网 (CAN) 数据链路层的规范,并满足 ISO11898–2:2016 高速 CAN 规范的物理层要求。TCAN4550 通过串行外设接口 (SPI) 在 CAN 总线和系统处理器之间提供了一个接口,同时支持经典 CAN 和 CAN FD,并为不支持 CAN FD 的处理器实现 端口扩展或 CAN 支持。TCAN4550 提供 CAN FD 收发器功能:传输到总线的差分传输能力和从总线接收的差分接收能力。
- 支持 1M 的 CAN 2M 的 CAN FD