参考瑞萨ldf文件进行理解

//注意:LDF语言要区分大小写的!
LIN_description_file;         //LIN描述文件
LIN_protocol_version = “2.1”;       //LIN协议版本
LIN_language_version = “2.1”;       //LIN语言版本
LIN_speed = 19.2 kbps;         //LIN通信速度

节点定义
抖动(Jitter)为帧的同步间隔段的下降沿与帧时隙起始时刻相差的时间。时基(Time Base)为LIN子网的最小计时单位,通常设定为 5ms或 10ms。

Nodes
{           Master: CEM, 5 ms, 0.1 ms;       //主机节点,名称:CEM,时基:5ms,抖动:0.1ms Slaves: LSM, RSM;         //从机节点,LSM,RSM
}

信号定义
根据上面定义的主从节点编写具体的信号

Signals
{             InternalLightsRequest: 2, 0, CEM, LSM, RSM;      //信号名称:IntLightsRequest,  //长度:2bit,初始值:0, //发布节点:CEM,收听节点:LSM、RSM RightIntLightsSwitch: 8, 0, RSM, CEM;       //信号名称:RightIntLightsSwitch, //长度:8,初始值:0, //发布节点:RSM,收听节点:CEM LeftIntLightsSwitch: 8, 0, LSM, CEM;        //信号名称:LeftIntlLightsSwitch, //长度:8,初始值:0, //发布节点:LSM,收听节点:CEM LSMerror: 1, 0, LSM, CEM;        //信号名称:LSMerror,长度:1,初始值:0, //发布节点:LSM,收听节点:CEM RSMerror: 1, 0, RSM, CEM;        //信号名称:RSMerror,长度:1,初始值:0, //发布节点:LSM,收听节点:CEM IntTest: 2, 0, LSM, CEM;        //信号名称:IntTest,长度:2,初始值:0, //发布节点:LSM,收听节点:CEM
}

帧定义
上面信号定义中的长度单位是 bit位 帧定义长度单位是 字节
帧是由信号所组成,基本都是无条件帧。事件触发帧和偶发帧很少会用到这里没有列出。

Frames
{           //帧定义 CEM_Frm1: 0x01, CEM, 1 {       //帧名称:CEM_Frm1,帧ID:0x01, //该帧的发布节点:CEM,数据段为1个字节 InternalLightsRequest, 0;       //包含的信号名称 //为 InternalLightsRequest,  //在帧中的偏移量为0 } LSM_Frm1: 0x02, LSM, 2 {       //帧名称:LSM_Frm1,帧ID:0x02, //该帧的发布节点:LSM,数据段为2 个字节 LeftIntLightsSwitch, 0;         //包含的信号名称为LeftIntLightsSwitch,  //在帧中的偏移量为0 } LSM_Frm2: 0x03, LSM, 1 {       //帧名称:LSM_Frm2,帧ID:0x03, //该帧的发布节点:LSM,数据段为1 个字节 LSMerror, 0;                 //包含的信号名称为LSMerror,帧中偏移量为0 IntError, 1;           //包含的信号名称为IntError,帧中偏移量为1 } RSM_Frm1: 0x04, RSM, 2 {       //帧名称:RSM_Frm1,帧ID:0x04, //该帧的发布节点:RSM,数据段为2 个字节 RightIntLightsSwitch, 0;        //包含的信号名称为 RightIntLightsSwitch, //在帧中的偏移量为0 } RSM_Frm2: 0x05, RSM, 1 {       //帧名称:RSM_Frm2,帧ID:0x05,
//该帧的发布节点:RSM,数据段为1 个字节 RSMerror, 0;          //包含的信号名称为 RSMerror,帧中偏移量为0 }
}

节点属性定义
P2_min: 从 LIN 子网接收到主机请求帧到 LIN 的从机节点准备好数据发送应答之间的最小时间间隔。
ST_min: 从机节点准备接收下一个帧(主机请求帧)或准备发送下一个帧(从机应答帧)的应答部分所需要的最小准备时间。

Node_attributes
{          //节点属性定义 RSM {            //节点名称为RSM的节点的定义 LIN_protocol = “2.0”;         //该节点依据LIN 协议 2.0设计 configured_NAD = 0x20;        //配置 NAD为 0x20 product_id = 0x4E4E, 0x4553, 1;          //产品ID:厂商ID为0x4E4E, //功能 ID为 0x4553,可变 ID为 1 response_error = RSMerror;        //应答错误名称:RSMerror P2_min = 150 ms;          ST_min = 50 ms;          configurable_frames { Node_Status_Event = 0x000; CEM_Frm1 = 0x0001; LSM_Frm1 = 0x0002; LSM_Frm2 = 0x0003;} //可配置的帧列表 } LSM {            //节点名称为LSM的节点的定义 LIN_protocol = “2.1”;         //该节点依据LIN 协议 2.1设计 configured_NAD = 0x21;        //配置 NAD为 0x20 initial_NAD = 0x01;         //初始 NAD为 0x01 product_id = 0x4A4F, 0x4841, 1;      //产品 ID:厂商 ID为 0x4A4F,功能ID为 0x4841 response_error = LSMerror;        //应答错误名称为:LSMerror fault_state_signals = IntTest;              //错误状态信号为 IntTest P2_min = 150 ms;         ST_min = 50 ms;          configurable_frames {Node_Status_Event; CEM_Frm1; LSM_Frm1; LSM_Frm2;}    //可配置的帧列表 }
}

任务进度表
对于总线上报文发送进行调度的间隔顺序定义

Schedule_tables
{         //进度表定义 Configuration_Schedule {       //进度表名称为:Configuration_Schedule AssignNAD {LSM} delay 15 ms;      //给节点 LSM分配NAD,帧时隙为 15ms, AssignFrameIdRange {LSM, 0} delay 15 ms;  //给节点 LSM从第0 帧开始分配 PID, //帧时隙为15ms AssignFrameId {RSM, CEM_Frm1} delay 15 ms;        //给节点 RSM的帧 CEM_Frm1 分配PID, //帧时隙为15ms AssignFrameId {RSM, RSM_Frm1} delay 15 ms;        //给节点 RSM的帧 RSM_Frm1 分配PID, //帧时隙为15ms AssignFrameId {RSM, RSM_Frm2} delay 15 ms;        //给节点 RSM的帧 RSM_Frm2 分配PID, //帧时隙为15ms } Normal_Schedule {         //进度表名称为:Normal_Schedule CEM_Frm1 delay 15 ms;       //帧 CEM_Frm1,帧时隙15ms LSM_Frm2 delay 15 ms;       //帧 LSM_Frm2,帧时隙15ms RSM_Frm2 delay 15 ms;       //帧 RSM_Frm2,帧时隙15ms  Node_Status_Event delay 10 ms;      //事件触发帧Node_Status_Event, //帧时隙 10ms } MRF_schedule{         /进度表名称为:MRF_schedule MasterReq delay 10 ms;        //主机请求帧,帧时隙 10ms } SRF_schedule {         //进度表名称为:SRF_schedule SlaveResp delay 10 ms;        //从机应答帧,帧时隙 10ms } Collision_resolver {         //发生冲突时需保证非事件触发帧的传输时序 //进度表名称:Collision_resolver CEM_Frm1 delay 15 ms;       //帧 CEM_Frm1,帧时隙15ms LSM_Frm2 delay 15 ms;       //帧 LSM_Frm2,帧时隙15ms RSM_Frm2 delay 15 ms;       //帧 RSM_Frm2,帧时隙15ms RSM_Frm1 delay 10 ms;            //轮询 RSM节点 //帧 RSM_Frm1,帧时隙10ms CEM_Frm1 delay 15 ms;       //帧 CEM_Frm1,帧时隙15ms LSM_Frm2 delay 15 ms;        //帧 LSM_Frm2,帧时隙15ms RSM_Frm2 delay 15 ms;        //帧 RSM_Frm2,帧时隙15ms LSM_Frm1 delay 10 ms;        //轮询 LSM节点 //帧 LSM_Frm1,帧时隙10ms }
}

信号编码和映射
这是对数据的大小以及具体实际进行定义
一种信号对应一种编码准则

Signal_encoding_types
{        //信号编码类型:Signal_encoding_types Dig2Bit {           //信号编码类型名称:Dig2Bit logical_value, 0, “off”;        //逻辑值 0,代表“off” logical_value, 1, “on”;        //逻辑值 1,代表“on” logical_value, 2, “error”;        //逻辑值 2,代表“error” logical_value, 3, “void”;        //逻辑值 3,代表“void” } ErrorEncoding {         //信号编码类型名称:ErrorEncoding logical_value, 0, “OK”;        //逻辑值 0,代表“OK” logical_value, 1, “error”;        //逻辑值 1,代表“error” } FaultStateEncoding {        //信号编码类型名称:FaultStateEncoding logical_value, 0, “No test result”;      //逻辑值 0,代表“No test result” logical_value, 1, “failed”;       //逻辑值 1,代表“failed” logical_value, 2, “passed”;       //逻辑值 2,代表“passed” logical_value, 3, “not used”;       //逻辑值 3,代表“not used” } LightEncoding {         //信号编码类型名称:LightEncoding logical_value, 0, “Off”;        //逻辑值:0,代表:“Off” physical_value, 1, 254, 1, 100, “lux”;     //物理值:1,最小值:1, //最大值:254,缩放倍数:1, //偏移量:100,文字信息:“lux” logical_value, 255, “error”;       //逻辑值:255,代表:“error” }
} Signal_representation
{        //信号表示定义 Dig2Bit: InternalLightsRequest;          //应用信号编码类型为 Dig2Bit的信号 //InternalLightsRequest ErrorEncoding: RSMerror, LSMerror;     //应用信号编码类型为 ErrorEncoding 的 //信号 RSMerror,LSMerror FaultStateEncoding: IntError;       //应用信号编码类型为 //FaultStateEncoding 的信号 IntError LightEncoding: RightIntLightsSwitch, LefttIntLightsSwitch;      //应用信号编码类型为 LightEncoding的 //信号 RightIntLightsSwitch, //LefttIntLightsSwitch
} 

LIN ldf文件配置相关推荐

  1. ADSP21489工程中LDF文件配置详解

    一直都没有搞懂LDF文件是怎么回事,后续翻到这个文档<cces-LinkerUtilities-manual.pdf>才认真的看了一下 先搞懂ADSP21489的片上RAM空间大小是5Mb ...

  2. LDF文件步骤及内容详解

    LDF文件第一部分--ldf文件配置 LIN_description_file; //LIN描述文件 LIN_protocol_version = 2.1;//LIN协议版本 LIN_language ...

  3. lin通信ldf文件解析_lin ldf

    Baby-LIN 采用闪存来保存固件, 因此更新和升级非常简便. Baby-LIN 的软件套装是 LINWorks.这个软件包包括几个不同的应用程序. LINWorks LDF-Editor 可以检查 ...

  4. lin通信ldf文件解析_详细步骤讲解如何在CANoe中创建一个LIN通讯工程(多图+详解)...

    本文首发自微信公众号"汽车技术馆"! CANoe可以实现基于CAN通讯的通讯测试和仿真,同时也可以支持基于LIN通讯的通讯测试和仿真,如何在CANoe中建立一个基于LIN通讯的工程 ...

  5. lin通信ldf文件解析_手把手教你在CANoe中创建一个LIN通讯工程

    CANoe可以实现基于CAN通讯的通讯测试和仿真,同时也可以支持基于LIN通讯的通讯测试和仿真,如何在CANoe中建立一个基于LIN通讯的工程呢? 第一步:打开软件之后,主菜单选择file->n ...

  6. LIN数据库文件LDF介绍及使用

    LIN总线的项目接触的很少,今天结合CANoe官方文档和自己的理解,浅谈下LIN总线的数据库文件LDF LDF文件 LDF,LIN description file,LIN总线描述性文件,使用LIN ...

  7. lin通信ldf文件解析_LIN总线开发之LDF文件介绍

    之前的文章大致介绍过LIN总线,本篇文章就来讲一下LIN Stack配置中比较关键的一个文件,就是LDF(LIN description file). 1.概述 LIN总线开发流程:图1 LIN总线开 ...

  8. lin通信ldf文件解析_基于LIN协议的代码自动生成系统及方法_2014108531085_说明书_专利查询_专利网_钻瓜专利网...

    技术领域 本发明属于汽车电子LIN网络通讯领域,公开了一种利用LDF文件自动生成LIN通讯软件代码的方法. 背景技术 目前汽车电子产品的软件开发逐渐向模块化.标准化.集成化.自动化发展.LIN通讯模块 ...

  9. xmldocument如何创建一个不带结尾的节点_LDF文件是个啥?如何创建一个LDF文件

    之前的一篇文章中介绍了LIN通讯,对LIN通讯的通讯机理进行了说明,那么在定义LIN通讯的时候需要使用什么样的文件进行描述呢?直观的来说就是LIN的描述文件,其实翻译成英文就是LIN Descript ...

最新文章

  1. java.sql.SQLException: Column ‘class‘ not found.异常没有找到列
  2. 第六天 选择与循环语句
  3. T4生成多文件时,不生成自己
  4. java中序列化与反序列化_Java中的序列化
  5. html 弹出一个邮件连接,mailto scheme 高级用法, 显示带html样式的邮件文本
  6. Notepad++ WebEdit插件
  7. 2018.12月问题整理杂记
  8. chrome linux 历史版本安装
  9. ZedGraph类库之基本教程篇
  10. 利用AD13设计PCB的问题总结11-20
  11. html注册页面带验证码,登陆注册-带图片的验证码
  12. 锐捷无线AC基础命令
  13. 传说华为面试爱问正则,这不海外留学生校招面试题来了
  14. react-native >0.69版本 链接@ant-design/icons-react-native
  15. OpenCV VideoCapture使用方法(视频文件、摄像头、网络视频文件)
  16. 编写两个过滤器,一个过滤器在 web 服务时,起用 UTF-8 编码,以处理 web 服务时的乱码问题。 另一个过滤器用来判断用户是否登录,只有登录用户方可访问/view 子目录。
  17. linux远程服务器环境_如何使用Linux为孩子设置远程学校环境
  18. C++:高斯坐标,大地坐标转经纬度
  19. 工程学导论的学习感悟
  20. 16 服务器无响应什么意思,dns电脑服务器未响应是什么意思如何处理

热门文章

  1. 如何理解《道德经》开篇,决定一个软件工作者的前程
  2. java excel 数据有效性_Java 设置Excel数据验证(数据有效性)
  3. CAD软件中如何自定义CAD快捷键?
  4. Tripwire 应用
  5. 数值处理题库--Sprime
  6. 《3D角色贴花制作工艺》
  7. 超酷的测速网站Ookla SPEEDTEST
  8. elasticjob mysql_elastic-job 新手指南
  9. CorelDRAW绘制的优秀人物肖像插画作品
  10. 【机器学习】《动手学深度学习》d2l 李沐B站视频配套学习笔记