LDF文件分析

文件配置

/* * Copyright (c) 2015 - 2016 , Freescale Semiconductor, Inc.                             * Copyright 2016-2017 NXP                                                                    * All rights reserved.                                                                  *                                                                                       * THIS SOFTWARE IS PROVIDED BY NXP "AS IS" AND ANY EXPRESSED OR* IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES* OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.* IN NO EVENT SHALL NXP OR ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT,* INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,* STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING* IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF* THE POSSIBILITY OF SUCH DAMAGE.                          */
/*---------GLOBAL DEFINITIONS-----------*/LIN_description_file;//LIN描述文件 
LIN_protocol_version = "2.1";//LIN协议版本 
LIN_language_version = "2.1";//LIN语言版本 
LIN_speed = 19.2 kbps;//LIN通信波特率

节点定义

Nodes {Master: SeatECU, 5 ms, 0.1 ms ;//主节点,时基,抖动Slaves: Motor1, Motor2, New_SlaveNode ;//从节点
}

普通信号定义

Signals {Motor1ErrorCode: 8, 5,     Motor1, SeatECU ;//信号名称      长度 初始值 发送节点  接收节点Motor1ErrorValue: 8, 1, Motor1, SeatECU ;Motor1LinError: 1, 0, Motor1, SeatECU ;Motor1Selection: 2, 0, SeatECU, Motor1 ;Motor1Temp: 8, 5, Motor1, SeatECU ;Motor2ErrorCode: 8, 2, Motor2, SeatECU ;Motor2ErrorValue: 8, 4, Motor2, SeatECU ;Motor2LinError: 1, 0, Motor2, SeatECU ;Motor2Selection: 2, 0, SeatECU, Motor2 ;Motor2Temp: 8, 0, Motor2, SeatECU ;MotorDirection: 2, 0, SeatECU, Motor1, Motor2 ;MotorSpeed: 10, 0, SeatECU, Motor1, Motor2 ;Motor1Position: 32, {0, 0, 0, 0}, Motor1, SeatECU ;Motor2Position: 32, {0, 0, 0, 0}, Motor2, SeatECU ;New_Frame_NewSignal: 32, {0, 0, 0, 0}, New_SlaveNode, Motor1 ;
}

诊断信号定义

Diagnostic_signals {MasterReqB0: 8, 0 ;//信号名称    长度 默认值MasterReqB1: 8, 0 ;MasterReqB2: 8, 0 ;MasterReqB3: 8, 0 ;MasterReqB4: 8, 0 ;MasterReqB5: 8, 0 ;MasterReqB6: 8, 0 ;MasterReqB7: 8, 0 ;SlaveRespB0: 8, 0 ;SlaveRespB1: 8, 0 ;SlaveRespB2: 8, 0 ;SlaveRespB3: 8, 0 ;SlaveRespB4: 8, 0 ;SlaveRespB5: 8, 0 ;SlaveRespB6: 8, 0 ;SlaveRespB7: 8, 0 ;
}

普通报文定义

Frames {Motor1Control: 48, SeatECU, 1 {//帧名称       帧ID 发送节点  数据字节长度Motor1Selection, 0 ;//信号名         起始位   }Motor1State_Cycl: 51, Motor1, 6 {Motor1Temp, 0 ;Motor1Position, 8 ;Motor1LinError, 40 ;}Motor1State_Event: 54, Motor1, 3 {Motor1ErrorCode, 8 ;Motor1ErrorValue, 16 ;}Motor2Control: 49, SeatECU, 1 {Motor2Selection, 0 ;}Motor2State_Cycl: 52, Motor2, 6 {Motor2Temp, 0 ;Motor2Position, 8 ;Motor2LinError, 40 ;}Motor2State_Event: 55, Motor2, 3 {Motor2ErrorCode, 8 ;Motor2ErrorValue, 16 ;}MotorsControl: 45, SeatECU, 8 {MotorDirection, 0 ;MotorSpeed, 2 ;}New_Frame: 24, New_SlaveNode, 8 {New_Frame_NewSignal, 28 ;}
}

零星报文定义

Sporadic_frames {SporadicControlFrame: Motor1Control, Motor2Control ;//零星报文集合         //报文1名称     报文2名称
}

诊断报文定义

Diagnostic_frames {MasterReq: 0x3c {//请求报文MasterReqB0, 0 ;MasterReqB1, 8 ;MasterReqB2, 16 ;MasterReqB3, 24 ;MasterReqB4, 32 ;MasterReqB5, 40 ;MasterReqB6, 48 ;MasterReqB7, 56 ;}SlaveResp: 0x3d {//响应报文SlaveRespB0, 0 ;SlaveRespB1, 8 ;SlaveRespB2, 16 ;SlaveRespB3, 24 ;SlaveRespB4, 32 ;SlaveRespB5, 40 ;SlaveRespB6, 48 ;SlaveRespB7, 56 ;}
}

节点属性定义

Node_attributes {Motor1{//节点名称LIN_protocol = "2.1" ;//协议版本configured_NAD = 0x2 ;//NADinitial_NAD = 0xA ;//默认NADproduct_id = 0x1E, 0x1, 0 ;//产品ID 功能ID 可变IDresponse_error = Motor1LinError ;//应答错误名称P2_min = 100 ms ;//从 LIN 子网接收到主机请求帧到 LIN 的从机节点准备好数据发送应答之间的最小时间间隔ST_min = 20 ms ;// 从机节点准备接收下一个帧(主机请求帧)或准备发送下一个帧(从机应答帧)的应答部分所需要的最小准备时间N_As_timeout = 1000 ms ;N_Cr_timeout = 1000 ms ;configurable_frames {//节点包含的报文Motor1Control ;Motor1State_Cycl ;Motor1State_Event ;MotorsControl ;New_Frame ;}}Motor2{LIN_protocol = "2.1" ;configured_NAD = 0x3 ;initial_NAD = 0xC ;product_id = 0x2E, 0xB, 1 ;response_error = Motor2LinError ;P2_min = 50 ms ;ST_min = 0 ms ;N_As_timeout = 1000 ms ;N_Cr_timeout = 1000 ms ;configurable_frames {Motor2Control ;Motor2State_Cycl ;Motor2State_Event ;MotorsControl ;}}New_SlaveNode{LIN_protocol = "2.1" ;configured_NAD = 0xFF ;initial_NAD = 0xFF ;product_id = 0x0, 0x0, 255 ;P2_min = 50 ms ;ST_min = 0 ms ;N_As_timeout = 1000 ms ;N_Cr_timeout = 1000 ms ;configurable_frames {New_Frame ;}}
}

调度表定义

Schedule_tables {Configuration_Schedule {//调度表名称 AssignNAD {LSM} delay 15 ms;      //报文名称 节点  时隙} NormalTable {//普通调度表Motor1Control delay 50 ms ;//报文名称 时隙Motor1State_Cycl delay 50 ms ;}
}

信号编码定义

Signal_encoding_types {New_Frame_NewSignal_Encoding_1 {//信号编码名称physical_value, 6, 15, 0.01, 0 ;//物理值        最小值 最大值 放大倍数 偏移量logical_value, 7, "off" ;//逻辑值       7代表offlogical_value, 8, "on" ;}
}

定义映射关系

Signal_representation {New_Frame_NewSignal_Encoding_1: New_Frame_NewSignal ;//应用信号编码的信号包括          信号1名称
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/184868.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

如何利用树莓派与Nginx结合内网穿透服务实现远程访问内部站点——“cpolar内网穿透”

文章目录 1. Nginx安装2. 安装cpolar3.配置域名访问Nginx4. 固定域名访问5. 配置静态站点 安装 Nginx(发音为“engine-x”)可以将您的树莓派变成一个强大的 Web 服务器,可以用于托管网站或 Web 应用程序。相比其他 Web 服务器,Ngi…

Electron+Ts+Vue+Vite桌面应用系列:TypeScript常用语法详解

文章目录 1️⃣ TypeScript常用讲解1.1 使用1.2 字符串1.3 数字1.3 布尔1.4 数组1.5 元组1.6 枚举1.7 any1.8 void1.9 object1.10 函数指定返回值的类型1.11 联合类型1.12 类型断言1.13 接口1.14 函数类型1.15 类类型1.16 泛型 2️⃣ 类2.1 类的基本写法2.2 类的继承2.3 类的修…

❤ 下载返回加密解密

❤功能集合 图片下载 方式一 window.open(URL, name, features, replace) // 新窗口的 URL、窗口名称、窗口特性window.open(row.certificateImageUrl,"_blank", "width500,height400") //打开一个新窗口并且指定长宽参数说明: URL&#xf…

数据结构 | 二叉树的概念及前中后序遍历

数据结构 | 二叉树的概念及前中后序遍历 文章目录 数据结构 | 二叉树的概念及前中后序遍历一、树概念及结构1.1 树的相关概念 二、树的表示2.2 树在实际中的运用(表示文件系统的目录树结构) 三、二叉树概念及结构3.1 二叉树的基本概念3.2 二叉树的结构&a…

文档理解的新时代:LayOutLM模型的全方位解读

一、引言 在现代文档处理和信息提取领域,机器学习模型的作用日益凸显。特别是在自然语言处理(NLP)技术快速发展的背景下,如何让机器更加精准地理解和处理复杂文档成为了一个挑战。文档不仅包含文本信息,还包括布局、图…

js查询详情接口控制执行时间的命令

在JavaScript中,可以使用console.time()和console.timeEnd()来控制执行时间的命令。 console.time()用于开始计时,可以指定一个标识符作为参数,用于标识计时器。 console.time(query); // 执行查询操作 console.timeEnd(query); 执行上述代…

熟练运用这些黑盒测试知识点,月薪翻倍不是难题

📢专注于分享软件测试干货内容,欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请指正!📢交流讨论:欢迎加入我们一起学习!📢资源分享:耗时200小时精选的「软件测试」资…

NX二次开发UF_MTX2_copy 函数介绍

文章作者:里海 来源网站:https://blog.csdn.net/WangPaiFeiXingYuan UF_MTX2_copy Defined in: uf_mtx.h void UF_MTX2_copy(const double mtx_src [ 4 ] , double mtx_dst [ 4 ] ) overview 概述 Copies the 2x2 matrix elements from the source m…

快速排序算法的代码及算法思想

快速排序(Quick Sort)是一种常用的排序算法,他的时间复杂度为O(nlogn) 算法思想: 通过一趟排序将待排序的数据分割成独立的两部分,其中一部分的所有数据都比另一部分的所有数据小,然后再对这两部分数据分别进行快速排…

js修改浏览器地址栏里url的方法

1、更新url某一参数的值 function updateQueryStringParameter(uri, key, value) {if (!value) { return uri }var re new RegExp("([?&])" key ".*?(&|$)", "i");var separator uri.indexOf(?) ! -1 ? "&" : &q…

模糊C均值聚类(Fuzzy C-means clustering,FCM)的基本概念,详细流程以及广泛应用!

文章目录 1.基本概念2. FCM的详细流程3.FCM的应用 1.基本概念 模糊C均值聚类(Fuzzy C-means clustering,FCM)是一种软聚类方法,它允许数据点属于多个聚类中心,每个聚类中心都有一个权重。与传统的硬聚类方法&#xff…

Visual Studio 2022分析C#程序内存泄漏

背景 最近我们的项目出现了内存激增的情况,初次探讨,我们发现和机器人发生通信之后,内存会缓慢上升,直到系统崩溃。 例子 由于只是介绍一个简单的方案,所以就写一个比较简单的例子来演示了,代码如下&…

Python实现对Windows注册表的增删改查

首先我们需要安装winreg库 pip install winreg注册表常量 ”winreg“总有很多有用的方法,基本上就是操作注册表中的键值,我们挑几个重要的来说说。首先我们来了解下”winreg“中的各个常量: 1.HKEY_ 常量 winreg.HKEY_CLASSES_ROOT #存…

五要素超声波气象站-气象站小百科

随着科技的发展,人们对气象监测的需求也越来越高。为了满足这一需求,一款全新的五要素超声波气象站应运而生。这款气象站不仅具有高精度的测量能力,而且能够实时监测天气变化,为人们提供准确的气象数据。 一、实时监测&#xff0…

34、故事大全API接口,免费好用

1、前言 故事大全查询API接口,这个是RollToolsApi通用系列接口的其中一个,内部包含了3个小接口,可获取睡前故事,儿童故事,格林童话,安徒生童话,民间故事,益智故事,历史故…

python循环语句和函数

1.使用for循环打印9*9乘法表 for i in range(1, 10):for j in range(1, i1):print(i, "*", j, "", i*j, end"\t")print()结果&#xff1a; 2.使用while循环打印9*9乘法表 i 1 while i < 10:j 1while j < i1:print(i, "*", j…

SSD-Single Shot Detector

文章目录 SSD模型主要改进点模型说明训练Choosing scales and aspect ratios for default boxesMatching strategyTraining objectiveHard negative miningData augmentation实验结果基本网络参数PASCAL VOC2007模型消融实验PASCAL VOC2012COCO推理速度比较前面提到了两种经典的…

moment.js的使用

更多可参见官方文档&#xff1a;Moment.js 中文网 | 开发文档

Java常见的面试题(很基础那种)

这里介绍一下,一些比较基础的Java面试题,比较适合应届生、实习生这些朋友。因为对于刚出来工作的Java工程师,很多企业都偏向招一些基础比较好的苗子回来培养。所以啊,在校的朋友们,一定要在读书期间,多做项目,如果没有实际的项目,可以在github找一些案例来做参考,先模…

koa2项目中封装log4js日志输出

1.日志输出到控制台 npm i log4js -D 封装log4js文件&#xff1a; const log4js require("log4js"); const logger log4js.getLogger();const levels {trace: log4js.levels.TRACE,debug: log4js.levels.DEBUG,info: log4js.levels.INFO,warn: log4js.levels.WAR…