CANoe学习笔记(六):如何实现LIN和CAN的多帧传输-----LIN

内容:

1、实现LIN的多帧传输

 

一、新建一个基于LIN的CANoe工程

 

 

二、接下来创建一些工程用得上的变量、文件:

2.1 LDF文件:

这部分注意:包含三个调度表,①3C诊断请求帧②3D诊断响应帧③主机控制报文和从机反馈报文调度表

以及从节点的配置信息

 

 

 

 

 2.2 系统变量

创建三个系统变量:①FrameCount:帧有效字节数②SendFrame:用来发送帧的按钮③TestNAD:目标节点的NAD地址

 

 2.3 Panel

简单明了

 

 

2.4 Capl脚本

代码就没复制了,工程文件在最下边,报错的地方稍后解决~

 

 

2.5 给节点包含LINtp.dll文件

如下图所示:

 

 

然后再看capl脚本

 

 

 

 

 

三、测试

如图:

 

 

trace界面:

 

 可以看到,数据已经发出来了

从机节点就没有去配置了,用一个任意支持LIN诊断命令的ECU应该就可以看到回复。

---------------------------------------------------------------------------------------------------------------------------------------------分割线--------------------------------------------------------------------------------------------------------------------------------------------------------

关于LINtp_DataReq,LINtp_DataInd,LINtp_DataCon这几个函数,做下说明:

LINtp_DataReq:输入参数包括三个--①发送的数据缓冲数组②发送的字节数③目标NAD地址

LINtp_DataInd:发送的数据可以通过这个回调函数获取

LINtp_DataCon:发送完毕后,会自动调用这个函数,可以获取到发送的字节数

 

工程新增:

发送完3C命令后,发送一帧3D响帧头。

PS:关于CAN的,下次补充。

测试工程:

链接:https://pan.baidu.com/s/1z0skcaMZW8sD-pjNv7Htqw?pwd=0104
提取码:0104

 

posted @ 2023-01-13 16:23  peng010104  阅读(4058)  评论(4编辑  收藏  举报