LIN同步间隔段-长度上限测试
在LIN帧结构中,我们都知道作为帧头起始的同步间隔段break field至少持续13位显性电平,在帧结构的图片中一般都标注着同步间隔段≥13位。那么同步间隔段的长度上限又是多少呢?长度上限又是怎么得来的呢?
·
前言
在LIN帧结构中,我们都知道作为帧头起始的同步间隔段break field至少持续13位显性电平,在帧结构的图片中一般都标注着同步间隔段≥13位。那么同步间隔段的长度上限又是多少呢?长度上限又是怎么得来的呢?
1、break field上限测试需求
在ISO 17987-6中测试用例PT-CT 5给出了同步间隔段长度变化测试。如下图,测试要求以0.1 bit位为步长测试同步间隔段长度从0.5-26.6 bit过程中,从节点是否应答帧头。从结果验证来看,同步间隔段长度在13-26.6 bit范围内,从节点需要应答全部帧头。也就是说,同步间隔段的最大长度为26.6bit?
2、break field上限理论分析
在LIN帧长度(详细图解)一文中,详细介绍了帧长度的计算方法,这里直接说结论。
- 帧头长度:Theader_nominal = 13+1+10+10 = 34 bit
- 最大帧头长度:Theader_max = Theader_nominal * 1.4 = 47.6 bit (40%余量)
- 余量:Theader_rest = Theader_max - Theader_nominal = 47.6-34 = 13.6 bit
余量长度是由字节间间隔和同步间隔段超过13位的部分组成。理论上,当不存在字节间间隔时,余量长度全部归同步间隔段,此时同步间隔段的长度=13+13.6=26.6 bit。至此,同步间隔段长度上限为26.6 bit。
3、break field上限测试实战
同步间隔段长度测试中,主要使用linSetBreakLength()函数来设置同步间隔段长度和间隔界定符长度;使用linSetBreakLength()函数来设置字节间隔。具体使用方法可参考LIN从节点:识别帧头各场长度测试。这里需要注意一点:在测试break field长度最大值26.6 bit时,需要通过linSetBreakLength()函数设置字节间隔为0。
更多推荐
所有评论(0)