ISO 14229部分问题说明

1.物理寻址和功能寻址的差别
Physical functional
物理寻址,从字面上理解就是知道你的物理实体地址,按照物理地址找你干活,一找一个准,是诊断仪和模块之间点对点的通讯。
功能寻址,从字面上理解就是不知道你的物理实体地址,只知道有这个功能,那就得拿着大喇叭喊,模块都接收,谁有这个功能谁理会,是一对多的通讯。

2.14229中关于DTC(19服务)的一些解释
19sub-function
#3 DTCStatusMask具体解释如下:

statusOfDTC
注意第4列是对第3列的解释,其中有部分位置0了
通常会请求19 02 09,其中09表示bit0和bit3置1了
bit0置1表示请求时测试失败,一般认为是当前DTC
bit3置1表示请求时确认过失败,一般认为是历史DTC
关于bit3有一个注意点,aging criteria,也就是这个DTC不一定需要一直存着,有一个老化机制,达到一定条件好就清除历史DTC
DTC status bit3

规范中有各种子功能的示例:
1902
5902
这里面有个重点#4-#7、#8-#11这四个四个一组的怎么定义的
每一组中的最后一个字节很好理解就是statusOfDTC
而DTCHighByte、DTCMiddleByte、DTCLowByte来源如下:
DTC according
接下来参考 ISO 15031-6
3byte DTC
再来看附录D了解下DTC low byte(FailureTypeByte)
高4位表示大类,低4位表示子类型
DTCFailureTypeByte
category 1
busoff

失效模式太多,这里只截图了一小部分,常用的有11(短路到地)和13(开路)还有88(busoff)等等

接着看DTCHighByte、DTCMiddleByte
Structure DTC
Byte1的bit7、bit6t表示有4类模块
00:powertrain;
01:chassis;
10:body;
11:network

每类模块有可以分成4套,虽然说有4套,但实际使用的只有一套,因为Byte1的高位的后2bit只有为01才是主机厂可以使用的
因此一般DTC列表都是B1000-B1FFF、C1000-C1FFF、P1000-P1FFF、U1000-U1FFF,因此每类可定义4096个故障码,再加上故障类型(开路/短路/busoff等),可以定义更多的具体DTC
general code specifications
例如:
B10 07 13:B1是固定的,13表示开路了,中间的007可自由发挥可定义为左前大灯
B10 4D 17:B1是固定的,17表示过电压,中间的04D可自由发挥,可定义为TBOX
U10 4D 88:U1是固定的,88表示busoff,中间的04D和上面一样可定义为TBOX

3.供应商可以使用的DID范围
适用于0x22、0x2E、0x2F、0x19等服务
supplier
4.否定响应的定义
诊断服务中经常有些否定影响,它们有具体的定义
NRC
0x12表示子功能不支持,没这个子功能,发错了
78NCR
0x78表示再等等还没准备好
肯定响应的具体要求需要参考具体服务的示例

5.禁止肯定相应位
suppressPosRsp
只影响肯定响应的回复,否定响应直接回复不影响

禁止肯定响应,在保持在线中经常用,上位机为了让模块保持在线,会间隔一会发送 3E 80,这个8就是禁止肯定响应,因为这时候上位机只是通知模块需要保持在线,不需要模块进行回复,否则发送 3E 00,模块就需要回复一下,这样会占用总线浪费资源。

以上标准截图来自于ISO 14229-1-2013及ISO 15031-6 2003

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值