UDSonCAN诊断excel转capl工具及capl代码

4 篇文章 0 订阅
3 篇文章 0 订阅

之前曾经发过一次CAN,LIN通用的,但是不是很完善,这次只针对于CAN诊断的来发布,lin的去找我的资源去下载

EXCEL界面图举例

在这里插入图片描述

对应的CAPL举例

在这里插入图片描述

在这里插入图片描述

操作说明

1:按照自己的需求整理好测试用例,如下图所示
在这里插入图片描述

2:打开测试用例生成工具,选择测试用例文档,选择好生成文件的路径,我选择的桌面,他在桌面会生成testcase.can的文件。
在这里插入图片描述

3:打开生成的testcase.can文件,可以将文件里面的内容全部复制,替换capl文件里面testcase.can的内容,也可以直接替换testcase.can文件。
在这里插入图片描述

在这里插入图片描述

4:打开Initial data.cin文件,根据自己实际的情况进行修改,例如自己添加函数,在excel直接写对应的函数
例如下面
在这里插入图片描述

5:现在的方式是test节点,所以里面是有void MainTest ()函数,包括一些定义,如果要改成xml节点,可以将下图的信息复制到TestInit()函数里面。我在这里加了一个标志位,只有第一次调用TestInit()函数时才会调用,防止重复调用。
在这里插入图片描述
在这里插入图片描述

自动化工具说明

在这里插入图片描述
在这里插入图片描述

如上图所示
1:A列,代表TestGroupBegin(“”,“****”, “”)函数,用来将测试用例进行分组,当遇到下一个不为空才会添加下一个组
2:b列,代表的testcase的名字,只支持开头字母或下划线,里面内容数字下划线字母,当然不符合程序会自动将不匹配的字符变为下划线。
Edge:testcase Programming_Process_check()
3:c列,代表步骤名,可以为空,主要是为了在报告里面方便看。
Edge:TestStep(“uds1”,“哈哈哈”);
4:d列,代表步骤描述,可以为空,主要是为了在报告里面方便看。
Edge:TestStep(“uds1”,“哈哈哈”);
5:e列,代表自定义项,暂时可设定为text或空。当为text是,会把f列对应行的数据直接转换为capl
Edge:readS19File();
6:f列,在e列为空时,会将字符串按照空格拆分,并通过我自己的函数进行发送出去。切记,此数据为16进制,每个byte之间以空格隔开,如图所示。
Edge:
{
byte DiagRequestMessage[2]={0x10,0x02};
DiagMessageRequest(DiagRequestMessage,0x7df);
}

7:g列,好久没用了,忘记了,忽略吧
8:h列,好久没用了,忘记了,忽略吧
9:i列,会将字符串按照空格拆分,然后对发送报文后的响应进行对比,如果出现错误会在报告中提示。切记,此数据为16进制,每个byte之间以空格隔开,如图所示。如果报文直接有数据不确定可以用**或fff代替,然后对比的长度为设定的数据的长度
Edge:
{
int respcheck[6]={0x50,0x02,0x00,0x32,0x01,0xF4};
DiagMessageResponseCheck(respcheck);
}
10:j列,在i列之上的补充,有的报文需要判断响应长度,可以通过这里进行补充
Edge:
{
int respcheck[8]={0x62,0xF1,0x91,0xFF,0xFF,0xFF,0xFF,0xFF};
DiagMessageResponseLengthCheck(respcheck,8);
}
11:k列,这列是来规定发送报文的id的,因为有的需要通过某些特定的id进行发送,这一列做一个补充
Edge:通过0x7df发送报文
{
byte DiagRequestMessage[2]={0x10,0x02};
DiagMessageRequest(DiagRequestMessage,0x7df);
}

12:l列,l2这个单元格是来设定响应报文id的,用来监测响应id
Edge:gDiagResponse.id=0x700;
13:m列,m2这个单元格是来设定物理寻址的发送报文的,当k列不设定,自动按照此id进行发送
Edge:gDiagRequestPhy.id=0x701;
{
byte DiagRequestMessage[3]={0x22,0xF1,0x91};
DiagMessageRequest(DiagRequestMessage,gDiagRequestPhy.id);
}

源码获取

请参见下载后的的《使用说明》文档,非免费
在这里插入图片描述

试用版,看不到源码

https://pan.baidu.com/s/1yUg5xMKy9Qg0xWerN3kNcA?pwd=wjrw
链接:https://pan.baidu.com/s/1yUg5xMKy9Qg0xWerN3kNcA?pwd=wjrw
提取码:wjrw
–来自百度网盘超级会员V7的分享

  • 7
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值