
ELM323
解读故障代码
可能是最常见的用途是, ELM323会
放的是获得当前诊断故障
码或故障码。最低限度,这需要一个模式
03的要求进行,但首先应该确定
多少个故障码是目前存储。这是
用模式01 PID 01请求如下进行:
>01 01
向其中一个典型的反应可能是:
41 01 81 07 65 04
41 01表示对请求的响应,并
下一个数据字节(81)是电流麻烦的数目
码。显然也不会有81 (十六进制)或129
(十进制)本故障码,如果车辆是在所有
可操作性。事实上,这个字节有双重任务,具有
最显著位被用来指示该
故障指示灯( MIL或“检查引擎” )
已经接通了该模块的代码中的一个(如果
有一个以上的) ,而其他7位的这
字节提供存储故障的实际数量
码。为了计算存储的数
码时, MIL是,那么,减去128 (或80
十六进制) 。当判断结果为小于128时,简单地读取
直接存储的代码的数量。
上述反应则表明存在
一个存储的代码,它是集检查单
发动机灯或MIL上。在剩余的字节
响应提供关于测试类型的信息
由该特定模块(见SAE的支持
文档J1979了解更多信息) 。
在这种情况下,只有一个线到
反应,但如果有存储在其他代码
的模块,它们各自可以提供的线的
反应。要确定哪个模块报告
故障代码,人们就不得不把标题上
( AT H1 ),然后看3的第三个字节
用于发送该模块的地址字节的标题
的信息。
在确定了存储的码的数量,
下一个步骤是要求实际故障代码
用模式03的请求:
>03
为了对此作出回应可能是:
43 01 33 00 00 00 00
的' 43'在上述反应仅表示
这是一个模03请求的响应。另
在响应中的6个字节必须被读入到对
显示故障代码(上面会
解释为0133 , 0000和0000 ) 。需要注意的是
ELM323DSC
响应已被填充为00的所要求的
这种模式的SAE标准 - 0000的不
代表实际的故障码。
的情况一样,要求的数量时
存储的代码,各代码的麻烦的最显著位
代码还包含附加信息。它是最简单的
请使用下表解释了额外的位
第一位数如下:
如果收到的第一个十六进制数字是这样的,
这两个字符替换它
0
1
2
3
4
5
6
7
8
9
A
B
C
D
E
F
P0
P1
P2
P3
C0
C1
C2
C3
B0
B1
B2
B3
U0
U1
U2
U3
动力总成代码 - SAE定义
“
“
“
“ - 制造商确定
“ - SAE定义
“ - 联合定义
机箱代码 - SAE定义
“
“
“
“ - 制造商确定
“ - 制造商确定
“ - 保留为将来
机身码 - SAE定义
“
“
“
“ - 制造商确定
“ - 制造商确定
“ - 保留为将来
网络代码 - SAE定义
“
“
“
“ - 制造商确定
“ - 制造商确定
“ - 保留为将来
服用实例故障码( 0133 ),所述第一
数(0 )随后将被P0替换,并且0133
报告将成为P0133 (这是为码
一个“氧传感器电路反应慢') 。至于
进一步的例子,如果响应已经D016 ,在
代码将被解释为U1016 ,而1131
将P1131 。
一个以上的ECU模块可以响应
像这样的请求,所以准备可能
收到几行反应。为了确定
其中ECU是报告的每一行需要转弯
在与AT H1命令头。
榆树电子 - 电路为爱好者
< http://www.elmelectronics.com/ >
12 19