添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
long Request_Size=0,Req_iter = 0; byte Req_Buffer[4095]; byte DiagReqBuffer[2] = {0x10,0x01}; diagRequest Door.DefaultSessionControl Req_obj; Request_Size = elCount(DiagReqBuffer); write("Request size is %d \n", Request_Size); writeEx(1,1,"Diag request byte is: "); diagResize(Req_obj,Request_Size); for (Req_iter=0;Req_iter 接受诊断命令

on diagResponse *{
  byte rsBuf[4095];
  int iter=0;
  long Response_length=0;
  Response_length= DiagGetPrimitiveSize(this);
  write("Diag response length is: %d \n", Response_length);
  writeEx(1,1,"Diag response byte is: ");
  for(iter=0; iter<Response_length; iter++){
    rsBuf[iter]=diagGetPrimitiveByte(this,iter);
    writeEx(1,1,"%02x ",rsBuf[iter]);
  write("\n");

用到的函数

不换行输出 writeEx(long sink, dword severity, char format[], ...)
sink 指显示在哪个窗口
Values:
-3	Trace Window
-2	Output to the logging file (only in ASC format and if the CAPL node is inserted in the Measurement Setup in front of the Logging Block)
-1	Reserved
0	Output to the System page of the Write Window
1	Output to the CAPL page of the Write Window
4	Output to the Test page of the Write Window
severity Log level 等级
Values:
0	Success
1	Information
2	Warning
3	Error
The parameter severity has no meaning for output to the Trace Window.
diagRequest Door.DefaultSessionControl Req_obj
DefaultSessionControl 是 ECU Door 的默认会话控制对象,此处相当于实例化了一个对象
DiagGetPrimitiveSize 获取诊断请求或者响应部分 Pyload 部分的长度
diagGetPrimitiveByte 按字节获取诊断请求或者响应部分 Pyload 的数据