快速了解KWP2000协议

本文详细介绍了KWP2000协议,包括其物理层的双向通信机制、链路层帧数据结构、应用层功能如快速进入系统和读取数据,以及SID码在不同操作中的作用。
摘要由CSDN通过智能技术生成

一、KWP2000协议物理层
采用K、L线模式,K线为双向通信线,L线为激活线,仅在设备发送地址码时使用
字节格式为1位起始位+8位数据位+1位停止位,低位在前,高位在后
其通信波特率为10400bps
其高电平为12V,低电平为0V

二、KWP2000协议链路层
一帧数据: 消息头+数据域+校验位

消息头最多占4给字节,由模式字、目标地址、源地址、长度组成
模式字包含6个位的长度信息和2个位的地址模式信息
当2位地址模式信息为00时,就没有目标地址、源地址,为01时,表示CARB模式,为10和11时都含有目标地址、源地址
当6位的长度信息的值为0时,就一定需要长度位字节来指明数据域的大小
当模式字为 8X时,长度取决于其后6bit位数据大小,最大为63,此时消息头占3个字节
当模式字为 80时,长度取决于长度位数据大小,最大为255,此时消息头占4个字节
当模式字为 0X时,长度取决于其后6bit位数据大小,最大为63,此时消息头占1个字节
当模式字为 00时,长度取决于长度位数据大小,最大为255,此时消息头占2个字节

采用累加和校验:累加和校验是将校验字节前的所有字节累加起来,取低8位,看是否与校验位的值相等

时序:
设备发送命令字节间的时间间隔P1,通常为5ms
ECU返回命令字节间的时间间隔P2,通常为0ms
设备发送完一帧命令后等待ECU响应的时间P3,通常为75ms~90ms
设备接收到ECU响应后到发送下一帧命令的时间P4,通常为20ms~26ms

三、KWP2000协议应用层
1.进入系统
快速进入:
先保持K线300ms的高电平,再拉低电平25ms,再拉高电平25ms,之后就可以发送进入系统的命令了
命令 81
慢速进入:
先让K线与L线同时以5bps的速率发送一个地址码,以进入该地址对应的系统中,接着关闭L线。
然后设备等待接受到ECU返回的0X55、Keyword1、Keyword2后,延时30ms,将Keyword2取反发送给ECU
ECU再将地址码取反发送给该设备,再有75ms的延时,波特率回归正常,就可以开始发送命令了

2.读车架号(VIN码)
命令 09 02

3.读版本信息
命令 1A 80

4.读数据流

5.读故障码

四、KWP2000协议的SID码
1.系统进入 81H
2.系统退出 82H
3.链路保持 3EH
4.开启诊断会话 10H
5.退出诊断会话 20H
6.安全访问 27H
7.ECU复位 11H
8.读取ECU信息 1AH
9.通过本地ID读取数据流 21H
10.通过常用ID读取数据流 22H
11.提供内存地址读取数据 23H
12.动态读取数据流 2CH
13.通过本地ID刷写数据 3BH
14.通过常用ID刷写数据 2EH
15.通过内存地址刷写数据 3DH
16.读取诊断故障码 13H
17.通过故障码的状态读取故障码 18H
18.读取故障码状态 17H
19.读取冻结帧数据 12H
20.清除故障码 14H
21.通过本地ID执行动作测试 30H
22.通过常用ID执行动作测试 2FH
23.通过本地ID开启规则 31H
24.通过本地ID关闭规则 32H
25.通过本地ID查询动作测试结果 33H
26.查询下载(ECU数据刷写开启)34H
27.查询上传(读取ECU内存数据)35H
28.传输数据(写入ECU的数据)36H
29.结束数据传输 37H
 

  • 10
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值