
文章目录
如何新建CAPL工程,在此不再赘述,本章主要分享一下如何在CAPL中调用DoIP接口、diag接口进行DoIP和诊断的测试。
1. 如何在CAPL中读取DID?
通常在实际项目中,会有很多DID,各种版本号、各种观测量,如果手动点,显然很麻烦,如果要“批量”读取DID,那最好通过CAPL脚本的方式读取,博主在编写脚本时,遇到了很多坑,本篇主要讲讲怎么避坑。
先来看看,读取一个DID的值,CAPL如何实现吧:
includes
{
}
variables
{
diagRequest _ADCC.DID_0xF190_Read _0x22Service_0xF190;
dword f190_size = 17;
byte f190_buffer[17];
}
// 请求22 F1 90后,响应回复事件
on diagResponse QH01_HoloArk_ADCC.DID_0xF190_Read
{
int i = 0;
// 获取62 F1 90的DataRecord,
this.GetParameterRaw("NewDataObject", f190_buffer, elCount(f190_buffer));
for(; i < 17; i++)
{
write("f190_buffer %x", f190_buffer[i]);
}
}
void MainTest()
{
diagSe
本文介绍了如何使用CAPL脚本在CANoe环境中读取DID,特别是针对DID批量读取的便利性和遇到的坑点进行了详细说明。在实践中,由于DID数量众多,手动操作效率低下,因此通过CAPL脚本实现自动化读取至关重要。文中重点讨论了CAPL调用DoIP接口和diag接口进行测试的方法,并特别提醒,DID的DataRecord Name在CDD文件中不能含有空格,否则会导致CAPL无法识别。
订阅专栏 解锁全文
2892

被折叠的 条评论
为什么被折叠?



