你目前正在查看 3分钟get同星LIN功能操作流程(推荐收藏)

3分钟get同星LIN功能操作流程(推荐收藏)

本文导读

LIN 是 Local Interconnect Network 的缩写,是基于 UART/SCI(Universal Asynchronous Receiver-Transmitter / Serial Communication Interface,通用异步收发器/串行通信接口)的低成本串行通信协议。可用于汽车、家电、办公设备等多种领域。

本文主要针对同星LIN主、从节点仿真功能以及其他功能的操作流程出一个详细教程。

一、同星LIN主节点仿真功能操作

1、硬件连接准备

使用同星LIN硬件仿真主节点模式下,需要外部电源供电,为了保持LIN总线电平信号跟被测件一致,连接示意图如下:

2、TSMaster软件操作流程

以下操作流程以TSMaster仿真LIN主节点,被测件从节点为LED灯为示例。

2.1 导入LDF文件数据库

通过数据库添加LED灯的LDF文件后,可以查看到LDF文件里的【节点】分别有【master】和【RGB_Slave】, 并包含了主节点调度表信息,报文和信号定义:

2.2 创建LIN发送窗口,进行LIN主节点配置

勾选【主节点模式】,然后选择运行调度表Run_normal,并选择仿真【master主节点】,可以看到调度表的两条报文已勾选。此时可以【部署】运行调度表。

▲【注意】:需要注意调度表中主从节点报文的发送方向。

仿真master主节点的报文方向:【发】

从节点响应的报文方向为:【收】

即:报文0x02为主节点发送给RGB从节点的控制报文,所以方向为发送,而报文0x10为从节点RGB给主节点反馈信息用,所以方向为接收。

2.3 LIN报文信息监测

正常情况下,调度表运行后,可以在LIN报文信息窗口查看到两条报文的数据内容,表明从节点与主节点正常通信并反馈数据。

 

▲非正常情况:如果出现从节点的报文响应数据为空,可以判断为从节点无响应,此时可以检测LIN总线连接是否正确或者LIN从节点供电是否正常等,下图所示

2.4  修改LIN主节点控制报文内容

在【LIN发送窗口】选择主节点报文如0x02,可以直接修改LIN信号的原始值或者物理值,进行报文信号赋值。

通过修改RGB三种不同颜色的信号数值,可以组合出来同的灯光色彩,如下图为RGB灯的点亮情况,供参考:

3. 【示例一】LIN诊断功能-自动分配地址

通常RGB点亮功能测试前,需要先对RGB灯进行自动分配地址,然后才能进行灯光颜色,亮度测试,版本号读取等等。

【背景】:根据LIN自动分配地址的协议,需要单次发送多条3C诊断报文进行地址分配,而TSMaster是可以通过【Single Frame】模式来完成。

RGB灯的自动分配地址的报文如下:

1.单次发送:7F 06 B5 FF 7F 01 02 FF

2.单次发送:7F 06 B5 FF 7F 02 02 01

3.单次发送:7F 06 B5 FF 7F 03 02 FF

4.单次发送:7F 06 B5 FF 7F 04 02 FF

【实操】:在TSMaster软件的【Single Frame】运行诊断指令,创建好相应报文后分别从上往下,单次发送报文行1、2、3、4,完成RGB的自动分配地址:

4. 【示例二】插入报文帧inject_lin_message函数的使用

有一个常见的使用场景,当仿真主节点正在运行调度表时,在不停止运行调度表的情况下,插入一帧其他的LIN报文帧,比如0x3C 报文,这个功能可以通过inject_lin_message函数来实现。

创建一个新的C脚本编辑器,选择【按键事件】,比如创建按键”A”执行插入报文。

示例代码如下:

TLIN f0 = {0,0×0,0x1,8,0x3C,0x0,0,0,{0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}};

com.inject_lin_message(&f0);

app.wait(10, “”);


然后编译运行C脚本,在已运行部署调度表的情况下,按下“A”键,在LIN报文消息可以观察到3C报文发送。

【TSMaster软件小技巧-快速生成LIN报文的C代码】:可以在调度表里新创建一条LIN报文,右键复制为C脚本,就可以把报文的C代码快速复制到脚本中。

二、同星LIN从节点/监听节点功能操作

1. 硬件连接准备

仿真从节点,可以不需要给同星LIN卡供电。

2. 仿真从节点发送响应报文

当同星LIN卡仿真为从节点时,ECU主节点需要发送调度表的报头Header,从节点响应报文才会正常发出。

本文以TSMaster 的LIN通道1仿真主节点运行调度表,LIN通道2仿真从节点响应报文0x10(Tech_Info_RGB_Slave) 。

首先,LIN通道1仿真主节点运行调度表,其中从节点响应报文的header方向为【收】:

部署运行之后,可以看到LIN从节点报文报头已发出,数据为空:

然后, LIN通道2仿真从节点发送响应报文0x10(Tech_Info_RGB_Slave),方向为【发】,修改数据内容:

2点击【部署】,可以从LIN报文信息里观察到从节点报文0x10成功发出响应报文,主节点同样接收成功。