本文主要介绍LIN总线的网络拓扑特点、消息帧格式、发送与接收机制

一、 LIN总线的优点与缺点

与CAN总线相比较,LIN总线经济性主要体现在:

  • 1、LIN 协议属于UART的派生分支,大部分MCU都能实现LIN的收发功能,甚至低端8位MCU也能胜任并参与到汽车总线相关的功能。相对于CAN总线,CAN往往需要MCU本身支持或者外接CAN控制器来组合CAN网络。

  • 2、LIN 收发器的价格相对CAN收发器也较为便宜。

与CAN相比,它的劣势:

  • 1、速率低,很难达到100Kbps以上的速率。
  • 2、抗干扰性能不足,电平依赖于电源,且单根线通信。

二、 LIN的网络拓扑

LIN 总线(Local Interconnect Network)重点在Local一词,本地小规模组网,组网内节点数不宜过多(汽车标准<=17);并且LIN 总线是主从设备组网,在同一网络内必须且仅存在一个主机节点,其他节点都应为从机节点。


三、LIN 的消息帧格式

LIN 是串行通信的一种,无时钟线,编码和解码依赖于比特率(波特率)。我们可以先回顾一下标准串口的字符帧协议:


一字符帧串口数据包含:

  • 起始位 1 bit
  • 数据位 N bit 最大 9
  • 校验位 0-1 bit
  • 停止位 1-2 bit

接收与发送约定了一致的波特率,发送端按照协议发送字符数据;接收端以信号起始位(下降边沿同步时钟)作为新数据的起始标志,从第二个bit开始解析bit数据。


LIN 的消息帧协议基于串口字符协议基础上进一步定义消息长度和消息帧格式,包含:

  • Break 段,截止场,标准协议为至少13bit低电平 + 至少1bit高电平界定符
  • Sync 段,同步场,1个数据位8的标准串口字符数据0x55,占1个字节
  • PID 段,1个数据位8的标准串口字符数据,由低位6bit 帧ID 和 高位2bit 校验位组成,占1个字节
  • 数据段,1到8个数据位8的标准串口字符数据,占1-8个字节
  • 校验,1个数据位8的标准串口字符数据,占1个字节

帧头的数据bit流


帧响应的数据bit流


四、LIN消息的发送与接收机制

LIN的收发机制类似于I2C通信机制

主机读取/从机发送

在LIN总线中,主机想获取从机端的数据,需先向总线广播帧头,等待从机响应;总线上所有从机都能接收到帧头,并根据ID自主决定是否发送数据,如果匹配则向总线响应数据。

  • 1.从机的响应实际上除了被主机获取,总线上其他从机也能获取
  • 2.LIN通信本质是半双工通信,同一时刻只能一个设备在总线上发送数据,在响应阶段,只能有一个从机响应

主机发送/从机接收

LIN总线上,主机向从机发送数据,除了先广播帧头外,随后还会广播响应数据;主机发送了完整的一帧LIN消息,所有从机都能接收到数据。