SAE J1939协议读取车辆故障码 您所在的位置:网站首页 cd9304故障码 SAE J1939协议读取车辆故障码

SAE J1939协议读取车辆故障码

2024-02-04 21:11| 来源: 网络整理| 查看: 265

基于SAE J1939协议的车辆,默认开启数据广播。当有故障码时,也会按照故障码的格式进行广播。 此处基于外设主动:读取故障码个数->读取故障码->故障码解析 这个步骤来讲,如果被动接收故障码广播,如下解析也适用。

根据故障码个数分如下几种情况: 一、单个故障码时

读取故障码个数: 请求:18EA00F9 CE FE 00 响应:18FECE00 01 00 09 02 05 05 05 05 根据SAE J1939-73协议,解析响应如下: 在这里插入图片描述

01:当前激活故障码个数为1; 00:历史故障码个数为0; 09:符合EOBD、OBD和OBD II; 后面几个字节表明系统支持及状态。

有1个当前激活的故障码,下面去读取这个故障码: 请求:18EA00F9 CA FE 00 响应:18FECA00 10 FF B8 04 03 0A FF FF 根据SAE J1939-73协议,解析响应如下: 在这里插入图片描述

10:亮红色停车灯; FF:警示灯不闪烁; B8 04 03 0A:一条故障码信息。 FF FF:填充。

根据SAE J1939-73协议,一个故障码信息包括4个字节,组成如下: 在这里插入图片描述 在这里插入图片描述 故障码信息解析如下: 在这里插入图片描述

十六进制(B8 04 03 02)转为 二进制(1011 1000 0000 0100 0000 0011 0000 0010) 则:SPN =(000 0000 0100 1011 1000)B=(4B8)H=(1208)D FMI =(00011)B=(3)D CM = 0 OC = (0001010)B=(10)D 根据SAE J1939-71协议,查找SPN=1208的项,

在这里插入图片描述 根据SAE J1939-73协议附录,找到FMI=3的说明, 在这里插入图片描述

此故障码信息为:发动机机油滤清器前机油压力过高,亮红灯,已发生10次。

二、没有故障码时

读取故障码个数: 请求:18EA00F9 CE FE 00 响应:18FECE00 00 00 09 02 05 05 05 05

没有故障码,可以不用再去读取了。当然读取也可以,下面去读取故障码: 请求:18EA00F9 CA FE 00 响应:18FECA00 00 FF 00 00 00 00 FF FF

注意:未使用的字节7和8的应设置为FF(根据SAE J1939-21)。 注意:当没有故障码时,此应答字节3到6应设置为零。

三、多个故障码时

读取故障码个数: 请求:18EA00F9 CE FE 00 响应:18FECE00 04 00 09 02 05 05 05 05

有4个当前激活的故障码,下面去读取故障码: 请求:18EA00F9 CA FE 00 响应:18EC0000 10 12 00 03 FF CA FE 00

10:为RTS请求应答广播; 12 00:长度为18个字节; 03:后续数据分3帧传送; CA FE 00:对应的请求PGN。

请求:18EC00F9 11 03 01 FF FF CA FE 00

表明:准备好接收从编号 1 开始的3个数据包

响应:18EB0000 01 10 FF B8 04 03 0A 20 18EB0000 02 3F 01 03 02 51 11 01 18EB0000 03 12 3E 04 02 FF FF FF

4个故障码为:B8 04 03 0A,20 3F 01 03,02 51 11 01,12 3E 04 02


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有