LIN诊断(4)——Tp层函数LINtp.dll应用

2024-08-30 17:12
文章标签 函数 dll 应用 诊断 tp lin lintp

本文主要是介绍LIN诊断(4)——Tp层函数LINtp.dll应用,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

  • 🍅 我是蚂蚁小兵,专注于车载诊断领域,尤其擅长于对CANoe工具的使用
  • 🍅 寻找组织 ,答疑解惑,摸鱼聊天,博客源码,点击加入👉【相亲相爱一家人】
  • 🍅 玩转CANoe,博客目录大全,点击跳转👉

请添加图片描述

  • 在不使用cdd/pdx等诊断数据库的情况下,用户可以使用LINtp.dll文件实现LIN总线的诊断通信
  • 在LINtp.DLL文件中封装的函数如下图所示

在这里插入图片描述

  • 以下测试基于主节点仿真,从节点真实在线
  • 在主节点的Componts中加载LINtp.dll。文件路径参考下图

在这里插入图片描述

  • 在主节点中加载lintp.can文件,发送单帧请求的示例代码如下
/*@!Encoding:936*/variables
{byte req_data[4095] ;byte rxBuffer[4096];byte NAD = 0X55;enum eSchedTables{AppSend    = 0,MasterReq = 1,DiagResp  = 2};
}LINtp_DataInd(long count, DWORD nad)
{ long i;LINtp_GetRxData(rxBuffer, count);write( "004——————从0x%X接收了 %d 字节数据,然后切换到App调度表",  nad,count);linChangeSchedTable(AppSend);for(i = 0;i<count;i++)write( "005——————rxBuffer[%d] = 0x%X",  i,rxBuffer[i]);
}LINtp_DataCon(long count)
{write( "003——————成功发送了 %d 字节数据,然后切换到0x3D调度表", count);linChangeSchedTable(DiagResp);
}on key 'a'
{ write( "001——————切换到0x3C调度表");linChangeSchedTable(MasterReq);write( "002——————发送单帧请求数据");req_data[0] = 0x10;req_data[1] = 0x01;LINtp_DataReq(req_data,2,NAD);
}void LINtp_ErrorInd(int error)
{write( "error type %d", error);
}
  • 测试结果如下图所示:

在这里插入图片描述


  • 发送多帧请求的示例代码如下
。。。
on key 'b'
{ write( "001——————切换到0x3C调度表");linChangeSchedTable(MasterReq);write( "002——————发送多帧请求数据");req_data[0] = 0x2E;req_data[1] = 0xF1;req_data[2] = 0x90;LINtp_DataReq(req_data,110,NAD);
}。。。。
  • 测试结果如下图所示

在这里插入图片描述

在这里插入图片描述

23

7

  • 🚩要有最朴素的生活,最遥远的梦想,即使明天天寒地冻,路遥马亡!

  • 🚩如果这篇博客对你有帮助,请 “点赞” “评论”“收藏”一键三连 哦!码字不易,大家的支持就是我坚持下去的动力。
    18

这篇关于LIN诊断(4)——Tp层函数LINtp.dll应用的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1121429

相关文章

Python函数作用域与闭包举例深度解析

《Python函数作用域与闭包举例深度解析》Python函数的作用域规则和闭包是编程中的关键概念,它们决定了变量的访问和生命周期,:本文主要介绍Python函数作用域与闭包的相关资料,文中通过代码... 目录1. 基础作用域访问示例1:访问全局变量示例2:访问外层函数变量2. 闭包基础示例3:简单闭包示例4

Python中isinstance()函数原理解释及详细用法示例

《Python中isinstance()函数原理解释及详细用法示例》isinstance()是Python内置的一个非常有用的函数,用于检查一个对象是否属于指定的类型或类型元组中的某一个类型,它是Py... 目录python中isinstance()函数原理解释及详细用法指南一、isinstance()函数

python中的高阶函数示例详解

《python中的高阶函数示例详解》在Python中,高阶函数是指接受函数作为参数或返回函数作为结果的函数,下面:本文主要介绍python中高阶函数的相关资料,文中通过代码介绍的非常详细,需要的朋... 目录1.定义2.map函数3.filter函数4.reduce函数5.sorted函数6.自定义高阶函数

利用Python操作Word文档页码的实际应用

《利用Python操作Word文档页码的实际应用》在撰写长篇文档时,经常需要将文档分成多个节,每个节都需要单独的页码,下面:本文主要介绍利用Python操作Word文档页码的相关资料,文中通过代码... 目录需求:文档详情:要求:该程序的功能是:总结需求:一次性处理24个文档的页码。文档详情:1、每个

Python中的sort方法、sorted函数与lambda表达式及用法详解

《Python中的sort方法、sorted函数与lambda表达式及用法详解》文章对比了Python中list.sort()与sorted()函数的区别,指出sort()原地排序返回None,sor... 目录1. sort()方法1.1 sort()方法1.2 基本语法和参数A. reverse参数B.

Java中的分布式系统开发基于 Zookeeper 与 Dubbo 的应用案例解析

《Java中的分布式系统开发基于Zookeeper与Dubbo的应用案例解析》本文将通过实际案例,带你走进基于Zookeeper与Dubbo的分布式系统开发,本文通过实例代码给大家介绍的非常详... 目录Java 中的分布式系统开发基于 Zookeeper 与 Dubbo 的应用案例一、分布式系统中的挑战二

Java 缓存框架 Caffeine 应用场景解析

《Java缓存框架Caffeine应用场景解析》文章介绍Caffeine作为高性能Java本地缓存框架,基于W-TinyLFU算法,支持异步加载、灵活过期策略、内存安全机制及统计监控,重点解析其... 目录一、Caffeine 简介1. 框架概述1.1 Caffeine的核心优势二、Caffeine 基础2

使用Node.js和PostgreSQL构建数据库应用

《使用Node.js和PostgreSQL构建数据库应用》PostgreSQL是一个功能强大的开源关系型数据库,而Node.js是构建高效网络应用的理想平台,结合这两个技术,我们可以创建出色的数据驱动... 目录初始化项目与安装依赖建立数据库连接执行CRUD操作查询数据插入数据更新数据删除数据完整示例与最佳

Python函数的基本用法、返回值特性、全局变量修改及异常处理技巧

《Python函数的基本用法、返回值特性、全局变量修改及异常处理技巧》本文将通过实际代码示例,深入讲解Python函数的基本用法、返回值特性、全局变量修改以及异常处理技巧,感兴趣的朋友跟随小编一起看看... 目录一、python函数定义与调用1.1 基本函数定义1.2 函数调用二、函数返回值详解2.1 有返

Python Excel 通用筛选函数的实现

《PythonExcel通用筛选函数的实现》本文主要介绍了PythonExcel通用筛选函数的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着... 目录案例目的示例数据假定数据来源是字典优化:通用CSV数据处理函数使用说明使用示例注意事项案例目的第一