80 lines
1.8 KiB
Plaintext
80 lines
1.8 KiB
Plaintext
|
var diag22state = 0;
|
||
|
//发送
|
||
|
FuncReadDID = function(did){
|
||
|
if(CANHw.isConnected() == false){
|
||
|
return;
|
||
|
}
|
||
|
var data = {0x03,0x22,did>>8,did&0xff,0,0,0,0};
|
||
|
var ret = CANHw.SendMsg(DiagReqID,data);
|
||
|
diag22state = 1;
|
||
|
//console.log("did = " + tostring(did,16));
|
||
|
//console.log("ret = " + ret);
|
||
|
//FuncDisplay("did = " + tostring(did,16));
|
||
|
}
|
||
|
|
||
|
//接收
|
||
|
FuncDiag22Pro = function(data){
|
||
|
//console.log("诊断22服务")
|
||
|
if(#data < 3){
|
||
|
return;
|
||
|
}
|
||
|
var did = (data[1]<<8) + data[2];
|
||
|
select(did) {
|
||
|
case 0xF186 {
|
||
|
FuncDisplay("当前会话: " + data[3]);
|
||
|
}
|
||
|
case 0xF193 {
|
||
|
var len = string.len(string.pack(table.slice(data,3)),3);
|
||
|
if(data[3] != 0){
|
||
|
var str = string.pack(table.slice(data,3,len+3));
|
||
|
FuncDisplay("硬件版本号:" ++ str);
|
||
|
}
|
||
|
else {
|
||
|
FuncDisplay("硬件版本号未读到");
|
||
|
}
|
||
|
|
||
|
|
||
|
}
|
||
|
case 0xF195 {
|
||
|
var len = string.len(string.pack(table.slice(data,3)),3);
|
||
|
if(data[3] != 0){
|
||
|
var str = string.pack(table.slice(data,3,len+3));
|
||
|
FuncDisplay("软件版本号:" ++ str);
|
||
|
}
|
||
|
else {
|
||
|
FuncDisplay("软件版本号未读到");
|
||
|
}
|
||
|
}
|
||
|
case 0xF198 {
|
||
|
FuncDisplay("repair_shopcode");
|
||
|
FuncDisplay(string.pack(table.slice(data,3)));
|
||
|
}
|
||
|
case 0xF199 {
|
||
|
FuncDisplay("installation_date");
|
||
|
FuncDisplay(string.format("%02x%02X%02x%02x",data[3],data[4],data[5],data[6]));
|
||
|
}
|
||
|
case 0xF187 {
|
||
|
FuncDisplay("车辆备用零部件编号");
|
||
|
FuncDisplay(string.pack(table.slice(data,3)));
|
||
|
|
||
|
}
|
||
|
case 0xF18A {
|
||
|
FuncDisplay("系统供应商公司名称代码");
|
||
|
FuncDisplay(string.pack(table.slice(data,3)));
|
||
|
|
||
|
}
|
||
|
case 0xF197 {
|
||
|
FuncDisplay("ECU系统名称");
|
||
|
FuncDisplay(string.pack(table.slice(data,3)));
|
||
|
}
|
||
|
case 0xF190 {
|
||
|
FuncDisplay("VIN码");
|
||
|
FuncDisplay(string.pack(table.slice(data,3)));
|
||
|
}
|
||
|
else {
|
||
|
FuncDisplay(TableToStr(data))
|
||
|
}
|
||
|
|
||
|
}
|
||
|
|
||
|
}
|