魔帆电子RS232lin通信协议详解

需积分: 33 8 下载量 47 浏览量 更新于2024-07-21 收藏 148KB PDF 举报
"魔帆电子公司的RS232lin通信协议是用户自定义的软件协议,主要用于通过u2carbus和rs2carbus控制设备。该协议涉及串口到CAN和LIN总线的通信,包括链路层和应用层两大部分,确保数据的正确传输和解析。" 本文档详细阐述了魔帆电子公司的RS232lin通信协议,该协议旨在支持用户自定义的软件对u2carbus和rs2carbus设备进行控制,从而实现与CAN和LIN总线的交互。 **一、链路层** 1. **串口设置**:默认波特率为115200,8位数据,无奇偶校验,1位停止位。RS232转换设备的波特率可以通过协议更改,但需使用新波特率与设备交互。USB转CAN总线设备的串口波特率不影响实际通信速率,而USB转LIN总线设备的波特率应设置为LIN总线的实际工作波特率。 2. **报文格式**:报文由报文头、长度、数据区、校验和以及报文结束标志组成。 - 报文头标志:0x68 - 长度:16位无符号整数,表示数据区字节数,通常不超过1024字节。 - 数据区:存放具体应用数据,如握手连接、控制发送等。 - 校验和:计算所有字节的模256的累加和,不考虑溢出值。 - 报文结束标志:0x16 **二、应用层** 1. **信息类型**:数据区的第一个字节定义了控制码,指示信息的类型和方向。 - D7位:决定数据传输方向,D7=0表示PC写数据到设备,D7=1表示设备返回数据到PC。 - D6位:在PC写数据时,D6=0表示命令无需确认,D6=1表示需要确认。在设备返回数据时,D6=1表示Lin控制器有信息需要读取,D6=0表示无信息需要读取。 - D5-D0:包含信息类型或命令码,如通用命令、CAN信息帧的发送和接收、CAN波特率设置等。 **控制码的解释**: - 0x00:命令确认 - 0x01:握手连接命令 - 0x09:同步时间标签定时器 - 0x02:发送CAN信息帧 - 0x03:回传CAN信息帧 - 0x04:设置CAN波特率 - 0x05:设置工作模式 - 更多类型或命令码可能未在摘要中列出,具体应用可能涉及更多细节。 魔帆电子公司的RS232lin通信协议提供了一套规范,使得用户可以高效地通过串口与CAN和LIN总线设备进行通信,并确保了数据传输的可靠性。通过理解并遵循这套协议,开发者能够更好地控制u2carbus和rs2carbus设备,实现各种定制化的功能和应用。