前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >LIN总线开发之LDF文件介绍

LIN总线开发之LDF文件介绍

作者头像
xbai921031
发布2022-05-25 15:21:33
3.9K0
发布2022-05-25 15:21:33
举报

之前的文章大致介绍过LIN总线,本篇文章就来讲一下LIN Stack配置中比较关键的一个文件,就是LDF(LIN description file)。

01

概述

LIN总线开发流程:

图1 LIN总线开发流程图

Step 1:

用Node Capability Files通过LIN cluster design tool来生成LDF文件,由于小编在开发过程中没有用过这个文件及LIN cluster design tool,就不展开讲了;

Step 2:

用LDF进行LIN Stack配置,小编在开发过程中用的是Vector公司的GENy工具,由于本文是小编在家里写的没有这个工具的截图,读者可以上网了解一下(附链接:https://vector-geny-framework.updatestar.com/);

Step 3:

用GENy工具可以配置一些LIN 2.1/2.2里面TP层的时间参数,Network Management等,还可以自选需要的UDS诊断服务来生成诊断服务函数接口。到这一步LIN Stack的底层代码基本可以配置好,和应用层代码调试一下就可以用了。

其实LIN Stack的配置非常简单,读者以后要是碰到尝试一下就可以大概知道是一个怎样的配置方法。本文的目的主要是介绍配置过程中需要的核心文件LDF,做过CAN Stack配置的话,可以将LDF当成是CAN DBC即可。

注:本文中涉及到的工具均为busmaster LDF Editor,读者可以下载busmaster自己学习一下。

02

LDF文件介绍

先来看一个例子(举例用,与实际无关):

图2 LDF文件示例

如上图所示,LDF主要有两个部分:

1.展示了主节点和从节点,及其各自的报文;

2.是调度表,展示了不同报文切换的顺序及时间。

在之前的文章中我们知道,LIN网络是一种主从结构,只有主节点的主任务发送了报文请求,LIN网络中才会进行报文的传输。

主节点发送报文传输请求后,数据就可以进行传输了,而这里的报文传输方向就是通过LDF文件来描述的,如下图所示:

图3 报文发送方向示例

Published XXX:发送方

Subscribed XXX:接收方

在LDF文件中可以逐个帧去配置它的接收及发送方向,这里这个方向是根据项目需求自定义,可以是主节点发给从节点,也可以是从节点发给主节点,还可以是从节点之间互相发送。

选中帧或者信号可以自定义长度,初始值,信号在帧中的位置等,如下图所示:

图4 帧定义

图5 信号定义

调度表:

调度表是由主节点运行的,一般在仿真中用CANoe即可模拟。这里举例的图2中,都是无条件帧,也就是说报文的发送不需要有条件,只要调度表激活了,这些帧就会按顺序依次发送,发送完之后再从头开始,这样一直循环直到切换到其他调度表。

Flame Slot:即一个完整的帧发送完所需的时间,一般是时间基数的整数倍。

jitter:从计时开始起到真正接收到报文的一个延时。

图6 Flame Slot示意

调度表执行:

图7 调度表执行示意

以上就是本文所有内容,均为作者自己的理解,如有问题欢迎私信。

2020年到了,希望大家身体健康,事业进步,工资涨涨涨,做更好的自己~

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-01-01,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 进击的程序喵 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档