首页 ETH 官网
  • 首页
  • ETH 官网
  • ETH 官网

    你的位置:MXC中文网 > ETH 官网 > LIN总线参考文献

    LIN总线参考文献

    发布日期:2025-01-04 18:16    点击次数:116

    LIN协议在汽车电子网络通讯中广泛使用,很多用户在解码LIN协议时,对LIN协议不同版本间的差异不太熟悉,可能导致解码中出现数据长度识别和校验混乱。 一、LIN协议起源 LIN是面向汽车底端分布式应用的低成本、低速率的串行通信总线,属于局部互联网。 LIN由汽车行业开发,用作经济高效的子总线系统,其属于CAN的下层网络,是SAE规范的汽车A类网络,适用于对总线性能要求不高的车身系统,如车门、车窗、灯光等智能传感器、执行器的连接和控制,LIN实现了一种具有成本效益的智能传感器和执行器的通讯方式。   图1 LIN协议在汽车领域的应用 LIN联盟成立于1999年,并发布了LIN1.0版本。最初的成员有奥迪、宝马、克莱斯勒、摩托罗拉、博世、大众和沃尔沃等,如下图2为LIN协议的发展史。   图2 LIN协议发展史 二、LIN协议的数据帧结构 LIN协议数据帧结构如图3所示。   图3 LIN协议数据帧结构   从图3中可以看到LIN协议数据帧结构由报文头、响应报文以及帧间隔组成。其中: 1、报文头包含同步间隙、同步域和报文标识符场(0~63)。 2、响应报文由1-9个字节构成:其中2、4或8个字节的数据场和1个校验和场(LIN1.3)。 3、报文帧之间有帧间间隔分隔。 4、报文与响应之间有帧内响应空间分隔。 5、最小帧间间隔和帧内响应空间均为0。 6、最大长度收到报文帧的最大长度FRAME_max限制。   那为什么用户解码LIN协议会出现数据长度识别错误和校验解码出错问题呢?原因是使用了与输入信号不对应的LIN协议版本进行解码,不同版本的LIN协议存在差异,如下所述。 三、LIN2.0相对于LIN1.3最主要的差异 支持最多8个字节的数据序列。 取消了受保护标识符中的数据长度字段,即传输长度不再受限于ID,并将最后一个字节视为校验和。 校验和的验算包括了受保护标识符。 支持自动波特率检测功能。 对零星帧进行了定义。 网络管理的定时用秒来定义,而不是用比特数来定义。 简化状态管理和直接向网络汇报,应用变得标准化。 增加强制节点配置命令以及一些可选择的命令。 增加了诊断功能。 从机节点的产品标识已标准化。   对于解码来说主要关注前三点。   图4 LIN协议应用 四、ZDS2000系列示波器全面支持LIN协议解码功能 在ZDS2024 Plus中输入一个LIN2.0信号,使用LIN1.3和LIN2.0协议解码会有什么样的不同效果呢?如下图5所示。   图5 LIN1.3和LIN2.0不同的解码效果 解析: 1、首先LIN2.0信号中发送了5段“数据序列”,在LIN1.3中只解析了2段数据序列,原因是LIN2.0与   LIN1.3的数据段存在差异,如下图6所示。 LIN1.3:ID4和ID5为数据长度标识,其将决定后面的数据序列的长度,2、4或8。 LIN2.0:ID4和ID5不再代表数据长度标识,后面的数据序列长度不由ID限制,可以是1~8的任意长度。   图6 LIN协议的标识符场 2、其次使用LIN1.3解码LIN2.0协议出现“Checksum Wrong”的错误标志,代表在校验和场上解码错误,原因是LIN2.0的校验包含“标识场”和“数据场”,而LIN1.3仅仅只校验“数据场”,从而导致使用LIN1.3解码LIN2.0协议时出现校验和场数据与所校验的数据不对应,导致解码出错,如图7原理所示。   图7 LIN协议的校验和场