CAPL学习之路-在测试用例中使用诊断功能
admin
2024-05-03 08:54:18
0

完成诊断测试模块的基本配置后(例如,可以在MainTest函数中选择目标ECU),可以在测试模块内执行等待诊断事件

if(diagSetTarget("Door")!=0)//选择目标ECU{testStepFail("Diag configuration", "Error in selection of target ECU");return;}

测试用例中先发送诊断请求:

diagRequest Door.DefaultSession_Start kDiagReq;//定义诊断请求对象
diagSendRequest(kDiagReq);//发送诊断请求

诊断通信中,CAN总线由于网络层消息长度限制,对于诊断数据比较大的请求或响应,通常需要多帧(连续帧)才能发送完。从Tester发送诊断请求到ECU,到ECU接收到诊断请求后回复诊断响应,这个过程中所有的数据发送完毕,一次完整的诊断通信才算是完成。这个过程有时相当长时间

所以当Tester使用函数diagSendRequest(kDiagReq)发送诊断请求时,不能马上接收诊断响应。必须要确保诊断请求发送完毕,才能开始接收诊断响应

可以使用函数testWaitForDiagRequestSent()判断上一次的诊断请求是否发送完毕(防止诊断请求有连续帧的情况)

if(testWaitForDiagRequestSent(kDiagReq, 200)!=1)//判断诊断请求是否发送完毕
{if(testWaitForDiagRequestSent(kDiagReq, 2000)!=1)//又等待10倍时间{testStepFail("WaitDia

相关内容

热门资讯

北方华创,巨额商誉压力突然高悬... 文丨詹詹编辑丨百进来源丨新商悟(本文约为 1300字)当国内半导体设备龙头北方华创交出一份“营收创历...
长城华西银行原女掌门已回老东家... 湘财Plus注意到,四川银行入主长城华西银行后,该行核心管理人员调整基本落定,法定代表人已正式变更为...
立案,跌停!这家“童年记忆”,... 沉浮多年,方向何在?最近被立案的上市公司,着实有些多,就在上周末,又有一家上市公司及原董事长被立案调...
加码生态环境监测!生态环境部:... 本文来源:时代周报 作者:李杭4月27日,生态环境部举行4月例行新闻发布会。 生态环境部4月例行新...
东方甄选主播“离职潮”持续发酵... 红星资本局4月27日消息,东方甄选(01797.HK)主播“离职潮”事件仍在发酵。在社交平台上,有部...
SpaceX万亿IPO前夜:马... 从20亿美元收购,到万亿IPO前的最后叙事。2026年4月23日深夜,特斯拉向SEC提交了一份季报文...
前董事长陆宏达“闪电辞职”牵扯... 紧急澄清前董事长性侵指控后,智度股份仍难挡股价大跌。4月27日,智度股份早盘一度重挫逾9%,逼近6....
高盛:一场全球性化工危机正在爆... 霍尔木兹海峡通行受阻,正在引发一场史无前例的全球化工供应冲击。高盛最新报告表示,基础化工品价格近几周...
这笔400亿,谷歌买的不是友谊... 4月25日,Anthropic宣布谷歌将向其投资最高400亿美元——先期注入100亿美元现金,估值3...
粪坑,爬出来了 粪坑,爬出来了... 图:Simon Bailly 读者说:“有人发现吗?2019年蚂蚁的大热基金鹏华快回本了,当年最高回...