LIN-报文结构


协议规范(Message Frame)

(1)字节间隔位于每个字节之间;

(2)响应间隔位于报头与响应之间;

(3)留给MCU足够的处理时间;

(4)帧长度可能增长;

一个完整的LIN 总线报文帧“Message Frame”包含 报头“Header”和响应“Response”,主机任务负责发送帧头;从机任务接收帧头并对帧头所包含信息进行解析,然后决定是发送应答,还是接收应答,还是不作任何反应。
LIN1


一、字节场

1)基于SCI的通信格式;

2)每一个字节场的长度由10个定时位定时(BIT TIME);
字节场
①起始位(START BIT)是一个“显性”位,标志字节的开始;
②8为数据位,先发送最低位;
③停止位(STOP BIST)是一个“隐性”位,标志着字节场的结束。

二、报文头(Header Field)

报文头

同步间隔段(synchronisation break)

同步间隔段由同步间隔(Break)和同步间隔段间隔符(Break Delimiter)构成。

作用:标识报文的开始,由主节点发送;使得所有的从机任务和总线时钟信号同步。
间隔信号至少由13个显性位组成,之后紧随至少1个隐形位的隔界定符;
间隔场

间隔界定符的作用:用来检测接下来的同步域(Synch Field)的起始位。

同步段(SyncByte FIELD)

1)确保所有从节点使用与节点相同的波特率发送和接收数据;

2)一个字节,结构固定:0X55;
同步场

受保护ID段(Protected Identifier Field)

受保护 ID 段的前 6 位叫作帧 ID(Frame ID),加上两个奇偶校验位后称作受保护 ID。
1)ID的范围从0到63(0x3f);
2)奇偶校验符(Parity)P0,P1;
标识符场
ID4和ID5定义了数据场的数据长度
如果需要(例如与LIN规范1.1兼容),标识符位ID4和ID5可以定义消息中NDATA数据字段的数量(如下表)。这将64个标识符集合分成4个包含16个标识符的子集,这些子集分别具有2个、4个和8个数据字段。

ID5ID4数据场的数量
002
012
104
118
【LIN2.0相对于LIN1.3最主要的差别】
1、支持最多8个字节的数据序列;
2、取消了受保护标识符中的数据长度字段,即传输长度不再受限于ID,并将最后一个字节视为校验和;
3、校验和的验算包括了受保护标识符。
4、支持自动波特率检测功能;
5、对偶发帧进行了定义;
6、网络管理的定时用秒来定义,而不是用比特数来定义;

②奇偶校验位P0 P1(⊕异或运算)
Parity

三、数据段(Data Field)

1)数据场长度1到8个字节;

2)低字节先发,低位先发;

3)如果某信号长度超过1个字节采用低位在前的方式发送(小端);
数据场

四、校验和场(Checksum Field)

用于校验接收的数据是否正确

1)经典校验(Classic Checksum)仅校验数据场(LIN1.3)

2)增强校验(Enhance Checksum)校验标识符场与数据场内容(LIN2.0、LIN2.1)

LIN2.0以前LIN2.0以及之后
通讯帧经典型增强型
诊断帧经典型经典型

标识符为0x3C和0x3D的帧只能使用经典校验

校验和场
算法(Classical):累加所有字节。对每次加和进行判断,如果和大于0xFF,那么就把高八位的1,与低八位相加,其实就是低八位加1(翻转八位和)。得到最后的结果后,取其反码,我们就得到了最后的校验和。
例如:采用标准型校验和,Data1 = 0x4A,Data2 = 0x55,Data3 = 0x93,Data4 = 0xE5
校验
讲解一下上面的图,0x4A+0x55 = 0x9F这个没有疑问,再加0x93 = 0x132,很明显,超过了0xFF,分解为0x1和0x32,突出的高8位删除,加到低8位中,0x1+0x32=0x33。再加0xE5 = 0x118,又超了,0x1+0x18=0x19。取反(Not),0xE6。

  • 3
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

诊断协议那些事儿

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值