假设配置的转换成的CAN报文帧信息为“标准帧”,配置的帧ID1,ID0分别为“0x01,0x23”,串行帧的数据为01,02,03,04,05,06,07,08共8个字节,那么转换格式如图5。CAN报文的帧ID为0x0123(用户配置),帧信息:标准帧(用户配置),串行帧中的数据部分将不作任何修改地转换到CAN报文中。
图5 串行帧到CAN帧
假设CAN报文中帧ID1为0x01,帧ID0为 0x23,数据为0x12,0x34,0x56,0x78,0xab,0xcd,0xef,0xff,则CAN报文和转换后的串行帧如图6。CAN报文的帧信息(0x08)转换到串行帧中的第1个字节(0x08),CAN报文中的ID:0x0123依次转换到串行帧中的第2个字节(0x01)及第3个字节(0x23)。CAN报文的数据域将不作任何修改地转换到串行帧中的数据部分。
图6 CAN帧到串行帧
总结
以上为串口转CAN透明格式下的转换方式,后续笔者将新增透明带标示转换、自定义协议转换以及moudbus转换的内容,欢迎持续关注。