一、物理层
A)工作电平:
ECU 工作电平:12V
TOOLS工作电平:12V
B)通讯电平:5V
C)通讯波特率:
41.6KBps(PWM) 10.4K(VPW)
D)通信脚:PIN16—2#,10#,全双工通信(PWM)
PIN16—2#,半双工通信(VPM)
E)电 平 接 口:
第 1 帧数据前有一个 163 至 239 微秒(us)的高电平表示 SOF(帧头即数据开始标志),
接下来以不同长短的高低电平表示二进制数据 0 或1,其中:
高电平宽度介于 34-96us 表示“1”,高电平宽度介于 96-163us 表示“0”,低电平宽度介于 34-96us 表示“0”,低电平宽度介于 96-163us 表示“1”,
传输时按字节顺序,且每个字节都是高位在前,低位在后的顺序,高低电平相间用于表示传输的数据,字节与字节之间没有间隔.
传送完一帧数据之后有一个宽度大于 239us 的低电平表示EOF(帧尾即帧结束标志)。
二、链路层
1.帧 结 构 :
GM 车型中的帧结构:Tools: 0x6C + ECU 地址 + 设备地址 + Fun_ID + (command information) + CRC
ECU: 0x6C + 设备地址 + ECU 地址 + Fun_ID + (command information) + CRC
OBDII 中的帧结构:
Tools: 0x68 + 0x6A + ECU 地址 + Fun_ID + (command information) + CRC
ECU: 0x48 + 0x6B + 设备地址 + Fun_ID + (command information) + CRC
ECU 地址为每个系统的标示号,设备地址一般为 0xF1 或 0xF0;而 Fun_ID 为不同功能的标示号,
ECU 响应的 Fun_ID 在 tools 命令的基础上+0x40;CRC(循环冗余校验)为校验字节。
2.命 令 交 互:命令交互通常情况下为 1 对 1,但也存在 1 对多或者多对 1 的情况。下面是两组命令交互举例:
GM:Tools: 6CH 10H F1H 20H 64H
ECU: 6CH F1H 10H 60H 72H
OBDII:
Tools: 68H 6AH F1H 01H 00H 17H
ECU: 48H 6BH 10H 41H 00H BEH 3FH B8H 10H C9H
在交互中,因为发送命令的对象不一样,所以目标地址和源地址是进行了互换;同时,ECU 响
应设备的命令字在设备命令字的基础上+0x40
3.交互时间参数:
设备发出命令后到 ECU 应答命令的时间间隔为 320 微秒(us)到 100 毫秒(ms)。
ECU 应答命令后到设备发下一条命令的时间间隔为 320 微秒(us)到 100ms。
如果设备或 ECU 同时发送多帧命令时,每帧之间的时间间隔为 3 到 5ms。
同一帧命令中的字节与字节之间无时间间隔。
4.常 用 命 令 字 :
GM 车型中的常用命令字:
系统进入:20H
数据流设置:2CH
数据流读取:2AH
读故障码:19HH
清除故障码:14H
读版本信息:3CH
OBD II 中常用命令字:
读数据流:01H
读故障码:03H
清除故障码:04H
读版本信息:09H