游戏百科

搞懂CAN协议转换,这一篇就够了!五种模式核心原理速览

一、CAN转串口设备:CAN转串口设备均有五种数据转换方式:透明转换、透明带标识转换、协议转换、MODBUS 转换和自定

一、CAN转串口设备:

CAN转串口设备均有五种数据转换方式:透明转换、透明带标识转换、协议转换、MODBUS 转换和自定义协议转换。

1、透明转换:实现CAN与串口的双向透传,不对数据做处理,发啥是啥,转换协议见下图:

示例如下:

(1)串口发送数据到CAN:

(2)CAN发送数据到串口:

2、透明带标识转换:在串行帧中带 CAN报文的ID信息,可以根据需要发送不同ID的CAN报文,协议转换见下图:

示例如下:

(1)串口发送数据到CAN:

(2)CAN发送数据到串口:

3、协议模式:CAN格式转换固定13字节表示一个CAN帧数据,13个字节内容包括CAN帧信息+帧ID +帧数据。在该转换模式下,设置的CANID无效,因为此时发送的标识符(帧ID)由上述的格式串行帧中的帧ID数据填充。配置的帧类型也无效,由格式串行帧中的帧信息来决定帧类型。帧ID的长度为4字节,标准帧有效位是11位,扩展帧有效位是29位。

示例如下:

(1)串口发送数据到CAN:

(2)CAN发送数据到串口:

4、Modbus模式:模块在串口侧使用的是标准Modbus RTU协议格式,完成标准Modbus RTU与CAN的转换。

示例如下:

(1)串口发送数据到CAN:

(2)CAN发送数据到串口:

5、自定义协议模式:必须是完整的符合自定义协议规定的串行帧格式,要包含用户所配置模式下的串行帧所有内容,除数据域外若其他字节内容若有误此帧将不能成功发送。串行帧包含的内容:帧头、帧长度、帧信息、帧ID、数据域、帧尾。此模式下用户配置的帧ID和帧类别无效,将根据串行帧里边的格式进行数据转发。帧信息分为扩展帧和标准帧,标准帧固定表示为0x00,扩展帧固定表示为0x80。

示例如下:

(1)串口发送数据到CAN:

(2)CAN发送数据到串口:

二、CAN转以太网/WiFi设备:

CAN转以太网和CAN转WiFi设备均按照标准CAN帧进行转换,见下图。

示例如下:

(1)网络段发送数据到CAN:

(2)CAN发送数据到网络段: