数据帧的结构
LIN的数据帧包括报头,响应两大部分。而报头包含了间隔场,间隔界定,同步场,标识符场等部分。响应包含了数据场和校验和场。
数据帧的结构示意
如上图所示,数据帧按照报头,响应两大部分组成。其中字节间隔位于每个字节之间,响应间隔位于报头和响应之间。其作用在于,实际应用过程中,间隔时间留给MCU足够时间准备反应。
间隔场
间隔场用于表示一帧报文的开始。主节点发出的间隔信号至少有13个显性位,间隔界定符至少有1个隐性位。
同时,从节点需要连续检测到11个显性位才认为是间隔信号。
同步场
同步场,顾名思义就是用于数据同步的。同步场确保所有从节点与主节点使用相同的波特率发送和接收数据。
同步场占一个字节,固定为0xFF。
标识符场
ID0~ID5和P0/P1组成了ProtectedID。
ID0~ID5的范围也有规范:
0-59(0x3B)--》一般数据帧ID范围
60(0x3C)and61(0x3D)--》用于诊断命令
62(0x3E)and63(0x3F)--》预留的
数据场
数据场是LIN数据帧真正要传输的数据。数据场的长度为1到8个字节。数据发送的顺序是:低字节先发,低位先发;如果数据长度超过1个字节,采用小端模式(低位在前发送)。
因为LIN是基于串口通信,所以,每个字节的传输需要10个位时间。
校验和场
校验和场用于校验接收的数据是否正确,一次提高数据的可靠性。
校验的方法也有两种:经典校验,增强校验。
经典校验:只是校验数据场,不校验标识符场。
增强校验:校验数据场,同时校验标识符场。
标识符0x3C,0x3D的诊断帧只能用经典校验。
经典校验和举例:数据场的数据=0x4A,0x55,0x93,0xE5
LINv2.2Achecksumexample
checksum=0xE6.
数据帧的类型
数据帧分为无条件帧,事件触发帧,保留帧,零星帧,诊断帧,自定义帧。
而在真实的项目中,无条件帧,诊断帧应用最多,其他类型基本不用。
LINv2.2A--无条件帧使用举例
无条件帧的标识符ID为0~0x3B。主节点根据调度表发送数据,发出报头接收数据。
诊断帧用于传输诊断命令或者配置信息,一般包含8个字节数据。
0x3C--》主节点发送请求帧
0x3D--》从节点响应帧
LDF
LDF是LIN的配置语言规范(LINdescripTIonFile)。LDF是连接设计,开发,实现,测试的桥梁。
LDF--信号的定义格式
LDF--数据帧的定义格式LIN2.1/2.2
LDF--数据帧的定义格式LIN2.0
LDF--LIN的基本参数定义格式
责任编辑人:CC
『本文转载自网络,版权归原作者所有,如有侵权请联系删除』