目前,我正在自动化测试仪表组中的仪表的测试用例。我遇到过通过DID将单位从公制改为美制的情况。谁能帮助我如何发送诊断相关的东西使用CAPL脚本。
发布于 2016-09-28 15:02:22
尝试一下,也许它可以使用SendDiagRequest(reqobj)来工作;
===============================================================
发布于 2017-12-22 01:00:24
如果你有一个加载到CANoe中的诊断库(CDD/ODX/PDX等),那么它通常会定义传输协议,在Tx和Rx长度超过8个字节的地方对它们进行分段。
你的帖子说你正在自动化你的测试用例。这在CANoe的测试模块中完成得最好。如果已加载CDD,则可以将DID从CAPL浏览器的符号窗格(通过诊断程序过滤)拖动到CAPL中,例如,在diagRequest之后拖动"DID_01_ReadInfo“。
long size;
byte returnBytes[4096];
diagRequest DID_01_ReadInfo readInfoReq; // diag request object
diagResponse DID_01_ReadInfo readInfoResp; // diag reponse object
diagSendRequest(readInfoReq);
switch (testWaitForDiagResponse(readInfoReq, 2000)) // 2 sec timeout
{
case 0: // timeout
teststepfail("No reply from ECU");
break;
case 1: // response received
if (diaggetLastResponseCode(readInfoReq) == -1)
{
teststepPass("Positive Response");
// Get the number of bytes from the last response and store in 'returnBytes'
diagGetLastResponse(readInfoReq, readInfoResp);
size = diagGetPrimitiveData(readInfoResp, returnBytes, elCount(returnBytes));
}
else
{
teststepfail("Negative Response");
}
break;
}发布于 2016-09-30 15:22:39
长对象(diagRequest DiagSendRequest )
https://stackoverflow.com/questions/39717140
复制相似问题