您的位置首页百科问答

广成串口转CAN模块的透明转换模式应用实例

广成串口转CAN模块的透明转换模式应用实例

的有关信息介绍如下:

广成串口转CAN模块的透明转换模式应用实例

广成串口转CAN模块能将串口通信设备与CAN总线设备连接起来,从而达到数据的传输与转换。它有两种工作模式,这里主要以透明转换模式为例,向大家介绍下串口转CAN模块的透明转换模式应用实例。

透明转换方式下, 转换器接收到一侧总线的数据就立即转换发送至另一总线侧。 这样以数据流的方式来处理, 最大限度地提高了转换器的速度, 也提高了缓冲区的利用率, 因为在接收的同时转换器也在转换并发送, 又空出了可以接收的缓冲区。

串行总线帧:

可以是数据流, 也可以是带协议数据。 通讯格式: 1 起始位, 8 数据位, 1停止位。

CAN 总线帧:

CAN 报文帧的格式不变。

串行帧转 CAN 报文:

串行帧的全部数据依序填充到 CAN 报文帧的数据域里。 转换器一检测到串行总线上有数据后就立即接收并转换。

转换成的 CAN 报文的帧类型和帧 ID 来自用户事先的配置, 并且在转换过程中帧类型和帧 ID 一直保持不变。 数据转换对应格式如图下图所示。

如果收到的串行帧长度小于等于 8 字节, 依序将字符 1 到 n( n 为串行帧长度) 填充到 CAN 报文的数据域的 1 到 n 个字节位置( 如下图中 n 为 7)。

如果串行帧的字节数大于 8, 那么处理器从串行帧首个字符开始, 第一次取8 个字符依次填充到 CAN 报文的数据域。 将数据发至 CAN 总线后, 再转换余下的串行帧数据填充到 CAN 报文的数据域, 直到其数据被转换完。

CAN 报文转串行帧:

对于 CAN 总线的报文也是收到一帧就立即转发一帧。数据格式对应如下图所示。

转换时将 CAN 报文数据域中的数据依序全部转换到串行帧中。 如果在配置的时候,“允许 CAN 帧信息转发到串行帧” 项被选中, 那么转换器会将 CAN 报文的“帧信息” 字节直接填充至串行帧。

如果“允许 CAN 帧 ID 转发到串行帧” 项被选中, 那么转换器会将 CAN 报文的“帧 ID” 字节全部填充至串行帧 。

串行帧转 CAN 报文:

假设配置的转换成 CAN 报文帧信息为“ 标准帧”, 帧 ID1, ID2 通过“ 发送标识符” 设置为“ 00, 60”, 那么转换格式如下图所示

CAN 报文转串行帧:

配置为允许 CAN 报文的“帧信息” 转换, 不允许 CAN 报文的“帧 ID” 转换。 CAN 报文和转换后的串行帧如下图所示。