LIN模块概述,协议规范及模块实现

一、概述

1、LIN网络

如下图为一个LIN网络,包含了一个Master节点,两个Slave节点:

LIN网络

在LIN总线通讯中,Master task决定了在LIN总线上传送的是哪一帧Slave task提供每一帧所携带的数据

2、LIN节点的层次结构图:

LIN1.3LIN2.1的区别在于,LIN1.3没有TL层,Signal interaction放在Protocol层中,没有单独的TP层。

3、LIN总线特点:

串行通信:线间干扰小,节省线束,传输距离长;

单线传输:增强的ISO9141 (ISO 15765-1) , 总线电压基于VBAT;

 最高速率20Kbit/s:满足车身上大部分的应用需求;

单主多从结构:无需仲裁;

基于通用UART/SCI的低成本接口硬件:几乎所有MCU有具备LIN总线的硬件基础;

从节点无须晶振或陶瓷震荡器就可以实现同步:大幅度降低成本;

一条总线最多可连接16个节点:由总线电气特性决定;

支持诊断功能:支持UDS服务;

4、LIN2.1节点模型:

LIN1.3节点模型:

LIN2.1LIN1.3节点模型的差别在于LIN1.3没有Transport layer,所以也就没有流控、传输时间控制的功能,LIN1.3协议中没有对诊断及节点配置进行规范,所以在LIN1.3中完成相应的功能都放在自定义诊断中完成。

5、LIN网络拓扑结构:

1)单主任务,多从任务;

2)主节点包含主任务和从任务;

3)从节点只包含从任务;

4)主任务决定总线上的报文,从 任务发送数据;

6、LIN帧:

通信原理:主任务发送报头,从任务用响应来补充报头形成完整的报文。

报文传输:报文的内容由ID来定义。

广播:所有节点都能够接受总线上的帧。

7、调度表

1)负责调度网络各报文发送的顺序;

2)为每帧报文分配发送时隙(slot);

3)发送时隙:报文可以被发送的时间;

4)不同报文的发送时隙可能不同;

5)调度表在网络系统设计阶段确定;

6)调度表使得LIN通信具有可预测性;

8、切换调度表:

主任务可以拥有多个调度表,并在不同的调度表之间切换,该处理方式增加通信的灵活性。

二、协议规范

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

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

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

(4)帧长度可能增长;

 

1、间隔场

1)表示一帧报文的起始,由主节点发出;

2)间隔信号至少由13个显性位组成;

3)隔界定符至少由1个隐形位组成;

4)间隔场是唯一一个不符合字节场格式的场;

5)从节点需要检测到至少连续11个显性位才认为是间隔信号;

2、同步场

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

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

3、标识符场 (PID)

1)ID的范围从0到63(Ox3f);

2)奇偶校验符(Parity)P0,P1;

4、数据场

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

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

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

5、字节场

1)基于SCI的通信格式;

2)发送一个字节需要10个位时间(TBIT);

6、校验和场

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

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

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

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

计算方法:反转8位求和(inverted eight bit sum)

例:Data=0x4A、0x55、0x93、0xe5

7、帧长度 * 时间

最小帧长度时间

T_Header_NOMINAL=34*Tbit

T_Response_NOMINAL=10*(Len_DATA+1)*Tbit 

T_Frame_NOMINAL=T_Header_NOMINAL+T_Response_NOMINAL

最大帧长度时间

T_Header_MAX = 1.4 * T_Header_NOMINAL

T_Response_MAX = 1.4 * T_Response_NOMINAL

T_Frame MAX = T_Header_MAX + T_Response_MAX

8、帧类型(根据PID区分)

1)无条件帧(ID: 0x00 ~ 0x3B)--常用

使用频度最高的帧类型,无任何发送条件;

标识符(ID)为0到59(0x3B);

主任务发出报头,一个任务响应,一个或多个任务接收如下图:

帧 ID = 0x30 应答部分的发布节点为从机节点1,收听节点为主机节点。

典型应用:从机节点1 向 主机节点报告自身某信号的状态。

帧 ID = 0x31  应答部分的发布节点为主机节点,收听节点为从机节点1和从机节点2。

典型应用: 主机节点 向 从机节点发布信息。

帧 ID = 0x32 应答部分的发布节点为从机节点2,收听节点为从机节点1。

典型应用: 从机节点之间彼此通信。

2)事件触发帧

引入事件触发帧的目的是节省带宽。

BCM(Master)需要获取4个车门的状态,该如何实现?

第一种方式:

每次向四个车门请求状态,浪费带宽,因为车门状态不是经常发生。

第二种方法:

将请求四个车门状态的帧合并为一个事件触发帧,Master不需要每次发送四个帧请求车门的状态,只需要发送一个事件触发帧即可,哪个车门状态发生变化,对应的车门将响应该事件触发帧。

事件触发帧的响应会出现如下三种情况:

第一种:没有车门状态变化。

第二种:一个车门状态发生变化:

第三种:多个车门状态发生变化,此时将出现冲突,冲突处理时,Master需要像第一种处理方式一样,重新发送四帧分别请求单个车门状态。LIN1.3与LIN2.0、LIN2.1处理方式有所区别,区别在于LIN1.3不切换调度表,占用事件触发帧的时隙发送,LIN2.0、LIN2.1将切换冲突调度表处理,如下图:

3)零星帧(偶发帧(Sporadic Frame)

引入零星帧的目的也是为了节省带宽,如:BCM(Master)需要发送对4个车窗的控制指令,但是,两个车窗的控制命令很少被同时执行,同样大量的带宽被浪费。

具体方案如下:

4)诊断帧(0x3C,0x3D) --- 常用

诊断帧用来传输诊断或配置信息,一般包含8个字节。

标识符:

60(0x3C):主请求诊断帧

61(0x3D):从响应数据帧

0X3C,0x3D 都是主机发送。

传输方式:

  5)保留帧

标识符:  62(0x3e), 63(0x3f)

在LIN 2.1中未对保留帧进行定义, 留给用户自定义或将来的版本升级。

9、调度表

响应:表示数据场 即 数据段

10、偏移

偏移(jitter)是指一帧报文实际开始发送的时刻与帧时隙起点的时间差(该值在LDF文件中定义)

    TFrame_Slot> jitter + TFrame_Maximum

11、网络管理

12、睡眠(Go To Sleep)

睡眠指令只有主节点可以发送,从节点在接到睡眠指令之后,也可以选择不进入睡眠状态而继续工作,这根据应用层协议而定。

13、唤醒(Wake Up)

在一个处于睡眠状态的LIN网络中,任何一个节点都可以发送唤醒信号。

发送节点发送的唤醒信号:

接收节点检测的唤醒信号:

14、主任务状态机模型

15、从任务状态机模型

  • 1
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
### 回答1: 《汽车LIN总线基本协议概述》是一份关于LIN(Local Interconnect Network,局域互连网络)总线基本协议概述文档。LIN总线是一种用于汽车电子控制系统中的串行通信总线。 该文档主要介绍了LIN总线的基本概念和工作原理。LIN总线的主要目标是在汽车内部各个电子控制单元(ECU)之间提供低成本、低功耗、低带宽的通信方式。它的设计主要针对一些辅助功能或低速数据传输的应用,例如车门控制、窗户操作、座椅调节等。 文档首先介绍了LIN总线的物理特性,包括总线线缆、电压电平、波特率等方面。LIN总线采用单线传输数据,通过电平变化来传输0和1的信息。波特率通常较低,通常在10Kbps到20Kbps之间,以满足低速应用的需求。 接着,文档介绍了LIN总线的组成和架构。LIN总线由一个主节点和多个从节点组成。主节点负责控制整个通信过程,而从节点则负责接收指令并执行相应的功能。主节点和从节点之间通过命令和数据帧进行通信。其中,命令帧用于主节点向从节点发送指令,而数据帧用于从节点向主节点发送数据。 文档还详细介绍了LIN总线的协议和通信流程。LIN总线采用主从式通信方式,主节点负责向从节点发送命令和控制信息,从节点则负责向主节点发送数据和状态信息。通信过程中,主节点发送帧头、帧ID、数据和校验位,从节点接收数据并进行校验和处理。 最后,文档介绍了LIN总线的优点和应用范围。由于LIN总线具有低成本、低功耗和低带宽的特点,它在汽车电子控制系统中得到广泛应用。特别适合一些辅助功能和低速数据传输的场景。 总的来说,《汽车LIN总线基本协议概述》是一份对LIN总线基本协议进行概述的文档,详细介绍了LIN总线的物理特性、组成架构、协议流程以及应用范围。通过阅读该文档,读者可以了解到LIN总线作为汽车电子控制系统中的一种串行通信总线的基本工作原理和应用背景。 ### 回答2: 《汽车LIN总线基本协议概述.pdf》是一份关于汽车LIN总线基本协议的文档概述LIN(Local Interconnect Network)总线是一种低成本、低速率的串行通信协议,主要用于汽车电子系统的通信。 该文档主要介绍了LIN总线协议的基本原理和功能。LIN总线是一种单总线拓扑结构,用于连接车内各个电子控制单元(ECU)。它通过一个主节点(Master)和多个从节点(Slave)之间的通信实现数据传输和控制。 LIN总线协议的核心是帧(Frame)结构。每个帧由一个起始位(Sync Byte)和多个数据位(Data Byte)组成。起始位用于同步节点之间的数据传输,数据位用于传输具体的信息。帧中还包含了识别节点和数据校验的位。整个通信过程由主节点发起并控制。 文档进一步介绍了LIN总线的通信速率和错误检测机制。LIN总线的通信速率通常在10kbps到20kbps之间,远低于其他更高速的总线标准如CAN(Controller Area Network)。这使得LIN总线更适合于低带宽、低成本的应用场景。为了保证数据传输的可靠性,LIN总线使用了校验和和冗余功能来检测和纠正错误。 此外,文档还涵盖了LIN总线协议的应用领域和优点。LIN总线广泛应用于汽车电子系统中的低速传感器和执行器,如车载仪表板、窗户控制、座椅调节等。相比于其他高速总线协议LIN总线具有低成本、易于集成和实现的优势。 总之,《汽车LIN总线基本协议概述.pdf》这份文档提供了关于LIN总线协议的基本原理、功能和应用领域的概述,对于了解和应用LIN总线协议的人员具有一定的参考价值。 ### 回答3: 《汽车LIN总线基本协议概述.pdf》 是关于汽车LIN总线基本协议概述文件。LIN总线是一种局域网协议,主要用于控制车辆内部电子设备的通信和控制。 该文件详细介绍了LIN总线协议的基本原理和功能。LIN总线协议是在ISO 9141-2标准上定义的,主要用于实现车内不同电子设备之间的通信。相比于CAN总线协议LIN总线协议的成本更低,适用于低速和简单通信环境。 根据该文件,LIN总线协议主要包括以下几个基本组件和功能: 首先是主-从结构。在LIN总线中,有一个主节点和多个从节点。主节点负责发送命令和控制信息,从节点负责接收命令并执行相应的动作。主节点通常是车辆的电子控制单元(ECU),从节点可以是各种车内设备,如仪表板、空调系统等。 其次是帧和帧顺序。LIN总线协议通过定义不同的帧类型来传输数据。帧包括同步域、标识域、数据域和校验域。帧的顺序由主节点控制,通过标识域来区分不同的帧类型。 再次是数据传输。LIN总线协议支持不同的数据传输方式,包括广播传输和单点传输。广播传输是指主节点向所有从节点发送相同的数据,而单点传输是指主节点向特定的从节点发送数据。 最后是错误处理和故障诊断。由于车辆电子系统的复杂性和环境的不可靠性,错误处理和故障诊断是LIN总线协议的重要部分。该协议定义了不同的错误和故障码,并提供了相应的处理机制和诊断方法。 总的来说,《汽车LIN总线基本协议概述.pdf》提供了对LIN总线协议的基本了解和概述。通过该文件,读者可以了解LIN总线的基本原理、功能和应用,以及如何实现有效的车辆内部设备通信和控制。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值